এটি সম্পর্কিত মোটামুটি জটিল প্রশ্ন সুডোয়ার ফাইল এবং সুডো কমান্ড সাধারণভাবে.
উল্লেখ্য: আমি উদ্দেশ্যে শেখার জন্য বিশুদ্ধরূপে ব্যবহার করে, উবুন্টু ডেস্কটপ 13.04 চলমান একটি ডেডিকেটেড মেশিনে এই পরিবর্তন করেছেন. আমি বুঝতে পারি নোপাসডাব্লুডি সুডো সক্ষম করা এটি একটি বিশাল সুরক্ষা ঝুঁকি
প্রশ্ন
প্রথম আলো: অভিজিৎ রায় (/etc/sudoers) একটি লাইন ছিল, একটি ব্যবহারকারী স্পেসিফিকেশন যা নিকোলসনজেএফকে পাসওয়ার্ড প্রবেশ না করেই সুডোর সাথে সমস্ত কমান্ড চালাতে সক্ষম করা উচিত ছিল (নিকলসনজেএফ দিয়ে শুরু হওয়া লাইনটি দেখুন):
# This file MUST be edited with the 'visudo' command as root.## Please consider adding local content in /etc/sudoers.d/ instead of# directly modifying this file.## See the man page for details on how to write a sudoers file.#Defaults env_resetDefaults mail_badpassDefaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"# Host alias specification# User alias specification# Cmnd alias specification# User privilege specificationroot ALL=(ALL:ALL) ALLnicholsonjf ALL=NOPASSWD: ALL# Members of the admin group may gain root privileges%admin ALL=(ALL) ALL# Allow members of group sudo to execute any command%sudo ALL=(ALL:ALL) ALL# See sudoers(5) for more information on "#include" directives:#includedir /etc/sudoers.d
তবে এটি কাজ করে নি, এবং প্রতিবার নিকোলসনজেএফ হিসাবে কমান্ড চালানোর সময় আমাকে এখনও আমার পাসওয়ার্ডের জন্য অনুরোধ করা হয়েছিল আমি নিকোলসনজেএফ হিসাবে সুডো কমান্ডগুলি চালানো শুরু করতে সক্ষম হয়েছি একবার আমি নিকোলসনজেএফকে সুডো এবং অ্যাডমিন গ্রুপগুলি থেকে সরিয়ে দিয়েছি
কেউ কি ব্যাখ্যা করতে পারেন কেন এটি কাজ করেছে?
এটি কি কারণ ব্যবহারকারী নিকোলসনজেএফ দুটি গ্রুপের স্পেসিফিকেশন থেকে সুডো অধিকার উত্তরাধিকার সূত্রে প্রাপ্ত হয়েছিল admin এবং sudo (সুডোয়ার্স ফাইলে নীচে দেখা গেছে), যা নিকোলসনজেএফ ব্যবহারকারীর স্পেসিফিকেশনকে ওভাররাইড করছিল কারণ তারা কনফিগারেশন ফাইলে আরও নিচে ছিল?
একাধিক এন্ট্রি একটি ব্যবহারকারীর জন্য মেলে, তখন তারা যাতে প্রয়োগ করা হয়. যেখানে একাধিক ম্যাচ রয়েছে, শেষ ম্যাচটি ব্যবহৃত হয়(যা অগত্যা সর্বাধিক নির্দিষ্ট ম্যাচ নয়)
আপনার ক্ষেত্রে nicholsonjf দলের সদস্য ছিলেন sudo সুতরাং তার জন্য এই লাইন প্রয়োগ:
%sudo ALL=(ALL:ALL) ALL
আপনি এন্ট্রি ওভাররাইড করতে চান /etc/sudoers শুধু তাদের পরে নতুন এন্ট্রি করা.
নতুন এন্ট্রি মত চেহারা উচিত
myuser ALL=(ALL) NOPASSWD: ALL একক ব্যবহারকারীর জন্য, অথবা
আমি এই গবেষণা ছিল, আমি একটি লাইন আছে উপলব্ধি /etc/sudoers একটি মন্তব্য নয় যে ফাইল, কিন্তু একটি নির্দেশিকা যে ডিরেক্টরি অধীনে কোন ফাইল বা ফোল্ডার তোলে /etc/sudoers/* এর বিষয়বস্তু অগ্রাহ্য করুন /etc/sudoers.
এটি একটি গোপন সামান্য নির্দেশিকা, এটি প্রথম নজরে উপর একটি মন্তব্য লাইন বলে মনে হচ্ছে. এটা এই মত দেখায়:
#includedir /etc/sudoers.d
উবুন্টু:18.04 এর বেস ইমেজ সহ একটি সিসিড পাইপলাইনে ব্যবহারের জন্য আমি একটি সংক্ষিপ্ত ডকার ইমেজে নন-রুট, পাসওয়ার্ডহীন ব্যবহারকারীকে এইভাবে প্রয়োগ করেছি: