আপনি যদি ব্যবহারকারীর পাসওয়ার্ডের বিপরীতে রুট পাসওয়ার্ড জানতে চান তবে এমন বিকল্প রয়েছে যা আপনি রাখতে পারেন /etc/sudoers
। rootpw
বিশেষত এটি রুট পাসওয়ার্ডের জন্য জিজ্ঞাসা করবে। আছে runaspw
এবং targetpw
পাশাপাশি; বিশদগুলির জন্য sudoers (5) ম্যানপেজ দেখুন।
এগুলি ছাড়াও সুডো পিএএম এর মাধ্যমে তার প্রমাণীকরণ (অন্যান্য কিছুর মতো) করে। পিএএম প্রতি অ্যাপ্লিকেশন কনফিগারেশন সমর্থন করে। সুডোর কনফিগারেশনটি অন্ততঃ আমার দেবিয়ান সিস্টেমে রয়েছে /etc/pam.d/sudo
এবং এটি দেখতে দেখতে:
$ cat sudo
#%PAM-1.0
@include common-auth
@include common-account
@include common-session-noninteractive
অন্য কথায়, ডিফল্টরূপে, এটি সিস্টেমের সমস্ত কিছুর মতো প্রমাণীকরণ করে। আপনি সেই @include common-auth
লাইনটি পরিবর্তন করতে পারেন এবং পাম (এবং এইভাবে sudo) একটি বিকল্প পাসওয়ার্ড উত্স ব্যবহার করতে পারেন। সাধারণ-প্রমাণীকরণে অ-মন্তব্য করা-না হওয়া লাইনগুলি দেখতে এমন কিছু দেখতে (ডিফল্টরূপে, আপনি যেমন, এলডিএপি ব্যবহার করছেন তবে এটি ভিন্ন হবে):
auth [success=1 default=ignore] pam_unix.so nullok_secure
auth requisite pam_deny.so
auth required pam_permit.so
আপনি তার pam_userdb.so
পরিবর্তে উদাহরণস্বরূপ ব্যবহার করতে পারেন pam_unix.so
এবং বার্কলে ডিবি ডাটাবেসে আপনার বিকল্প পাসওয়ার্ড সংরক্ষণ করতে পারেন ।
উদাহরণ
আমি ডিরেক্টরি /var/local/sudopass
, মালিক / গোষ্ঠী root:shadow
, মোড তৈরি করেছি 2750
। এর ভিতরে, আমি এগিয়ে গিয়ে একটি পাসওয়ার্ড ডাটাবেস ফাইল তৈরি করেছিলাম db5.1_load
(যা দেবিয়ান হুইজির ব্যবহারে বার্কলে ডিবি এর সংস্করণ):
# umask 0027
# db5.1_লোড -h / var / স্থানীয় / সুডোপাস -t হ্যাশ -T passwd.db
এন্থনি
WMaEFvCFEFplI
^D
mkpasswd -m des
পাসওয়ার্ড "পাসওয়ার্ড" ব্যবহার করে সেই হ্যাশ তৈরি হয়েছিল । খুব উচ্চ সুরক্ষিত! (দুর্ভাগ্যক্রমে, পাম_উসারডবি প্রাচীন crypt(3)
হ্যাশিংয়ের চেয়ে ভাল কিছু সমর্থন করে না বলে মনে হয় )।
এখন, লাইনটি সম্পাদনা করুন /etc/pam.d/sudo
এবং সরান @include common-auth
, এবং এর পরিবর্তে এটি স্থাপন করুন:
auth [success=1 default=ignore] pam_userdb.so crypt=crypt db=/var/local/sudopass/passwd
auth requisite pam_deny.so
auth required pam_permit.so
নোট করুন যে pam_userdb .db
পাস করা ডাটাবেসে একটি এক্সটেনশন যুক্ত করে, তাই আপনাকে অবশ্যই এটিকে ছাড়তে হবে .db
।
মতে dannysauer মধ্যে একটি মন্তব্য , আপনি একই সম্পাদনা করার প্রয়োজন হতে পারে /etc/pam.d/sudo-i
হিসাবে ভাল।
এখন, sudo করতে, আমাকে অবশ্যই password
আমার আসল লগইন পাসওয়ার্ডের পরিবর্তে ব্যবহার করতে হবে:
অ্যান্টনি @ সুডোস্টেস্ট: ~ do সুডো-কে
অ্যান্টনি @ সুডোটেস্ট: ~ $ সুডো ইকো-ই 'worked নিট ওয়ার্ক'
অ্যান্টনির জন্য [sudo] পাসওয়ার্ড: passwordRETURN
এটা কাজ করেছে