লগ ইন করার সময় আমি কীভাবে একজন ব্যবহারকারীকে সাধারণ ব্যবহারের জন্য একটি পাসওয়ার্ড এবং সিস্টেম প্রশাসন এবং সুডো অ্যাক্সেসের জন্য অন্য পাসওয়ার্ড দিতে পারি? আমি চাই একজন ব্যবহারকারীর দুটি পাসওয়ার্ড থাকুক।
sudo usermod -d /path/to/new/home
লগ ইন করার সময় আমি কীভাবে একজন ব্যবহারকারীকে সাধারণ ব্যবহারের জন্য একটি পাসওয়ার্ড এবং সিস্টেম প্রশাসন এবং সুডো অ্যাক্সেসের জন্য অন্য পাসওয়ার্ড দিতে পারি? আমি চাই একজন ব্যবহারকারীর দুটি পাসওয়ার্ড থাকুক।
sudo usermod -d /path/to/new/home
উত্তর:
সুডো পরিষেবার জন্য পিএএম (প্লাগেবল অথেনটিকেশন মডিউল) সেটিংস ওভাররাইড করে এটি করার একটি উপায় রয়েছে। আপনার মেশিনের জন্য এটি দুর্দান্ত ঝুঁকিতে করুন - কমান্ডটি কী করে তা না বুঝতে পেরে কেবল অনুলিপি করুন এবং পেস্ট করবেন না এবং সর্বদা একটি রুট টার্মিনালটি উন্মুক্ত রাখুন - পরীক্ষার পরীক্ষার পরীক্ষা! - এটি লগ আউট করার আগে, আপনাকে ফিরে গিয়ে কোনও কিছু ঠিক করার দরকার আছে।
আমি পিএএম কীভাবে কাজ করে সে সম্পর্কে কিছু তথ্য পড়ার পরামর্শ দিচ্ছি যাতে এটি ভেঙে গেলে কী করতে হবে তা আপনি জানেন। আমি বেশিরভাগ ব্যবহারকারীকে এই সমস্যাটি অন্য একটি কোণ থেকে (প্রশাসনের জন্য পৃথক ব্যবহারকারী অ্যাকাউন্ট তৈরি করা) থেকে দেখার পরামর্শ দিই কারণ সমাধানটি আপনার পাসওয়ার্ডে সঠিকভাবে সেট না করা থাকলে সমাধানটি আপনার পাসওয়ার্ডে হ্যাশ টেবিল আক্রমণগুলির জন্য সংবেদনশীল হতে পারে।
আপনি যদি এগিয়ে যাওয়ার জন্য দৃ determined়প্রতিজ্ঞ হন তবে আপনাকে একটি নতুন প্যাম মডিউল ইনস্টল করতে হবে। pam_pwdfile প্রমাণীকরণের জন্য পুরানো স্টাইল / ইত্যাদি / পাসডাব্লুড টাইপ ফাইল ব্যবহার করে, যা বিভিন্ন পরিষেবার জন্য বিভিন্ন পাসওয়ার্ড ব্যবহারের জন্য দুর্দান্ত। এটি কোনও অ্যাকাউন্টের স্বীকৃতি দেয় না - আপনি ব্যবহারকারীদের জন্য ব্যবহারকারীর নাম / পাসওয়ার্ড জুড়ি তৈরি করতে পারেন যা সিস্টেমে বিদ্যমান নেই। যেহেতু আমরা এটিকে সুদোর জন্য ব্যবহার করব, এটি কোনও ব্যাপার নয়, কারণ আমরা কেবলমাত্র sudo অ্যাকাউন্টটি স্বাভাবিক উপায়ে উপস্থিত রয়েছে তা যাচাই করবো।
sudo apt-get install libpam-pwdfile
আমি একটি সহজ htpasswd ফাইল সম্পাদক দখল করার পরামর্শ দিই। বেঞ্জামিন শোয়েজার পাইথনে একটি হ্যান্ডি এডিটর তৈরি করেছেন যা ভাল কাজ করে। Http://benjamin-schweizer.de/htpasswd_editor.html থেকে এটি ধরুন এবং এর নির্ভরতা ইনস্টল করুন:
sudo apt-get install python-newt
সরঞ্জামটি ব্যবহার করে একটি htpasswd ফর্ম্যাট ফাইল তৈরি করুন - sudo python htpasswd_editor sudo.passwd
। আপনি সুডোর জন্য ব্যবহার করবেন এমন একই ব্যবহারকারীর নাম ব্যবহার করে একটি ব্যবহারকারীর নাম এবং পাসওয়ার্ড রাখুন - এটি ব্যবহার করা হবে এমন প্রতিটি ব্যবহারকারীর জন্য একটি। এটি অন্য কোথাও সুরক্ষিত করে অনুলিপি করুন (এটি পরীক্ষা করার সময় আমি এটি /etc/sudo.passwd এ রেখেছি) এবং এটি নিয়মিত ব্যবহারকারীদের কাছে অপঠনযোগ্য করে তুলুন: chmod 660 /etc/sudo.passwd
মূল হিসাবে।
ফাইলটি মূলের মালিকানাধীন এবং অন্যান্য ব্যবহারকারীদের কাছে অপঠনযোগ্য তা নিশ্চিত করুন। ফাইলটিতে একটি হ্যাশ পাসওয়ার্ড রয়েছে বলে এটি একটি দুর্বলতা এবং এটি যদি অন্য ব্যবহারকারীদের দ্বারা পঠনযোগ্য বা লিখিত হয় তবে এটি আপনার সুরক্ষাটিকে খারাপভাবে ভেঙে দেয়। এই কারণেই আমি কোনও মেশিনে এই পদ্ধতিটি সুপারিশ করি না যা অবশ্যই সুরক্ষিত রাখতে হবে।
শেষ পর্যন্ত, /etc/pam.d/sudo
ফাইলটি সম্পাদনা করুন। অন্যান্য রেখার উপরে নিম্নলিখিত লাইনটি যুক্ত করুন @include ...
:
auth required pam_pwdfile.so pwdfile /etc/sudo.passwd
স্পষ্টতই আপনার উত্পন্ন htpasswd ফাইলটির পথ দিয়ে শেষ যুক্তিকে প্রতিস্থাপন করা। পরবর্তী লাইনে মন্তব্য করুন: #@include common-auth
এটি নতুন প্রমাণীকরণ পদ্ধতিটি ব্যবহার করছে তা নিশ্চিত করার জন্য।
সাবধানতার কথা - আপনাকে /etc/pam.d/sudo
একটি রুট টার্মিনাল থেকে ফাইলটি সম্পাদনা করতে হবে । পরীক্ষা ছাড়া এটি বন্ধ করবেন না! আপনি যদি এটি করেন তবে আপনি লগইন করতে পারবেন না (যদি কোনও কিছু ভেঙে ফেলেছেন) এবং আপনার সিস্টেমটি পুনরুদ্ধার করতে পুনরুদ্ধার ডিস্ক থেকে বুট করতে হবে। একটি নতুন টার্মিনাল খোলার মাধ্যমে লগ আউট করার আগে পরীক্ষা করুন এবং ব্যবহারের চেষ্টা করুন sudo
। আপনার সন্ধান করা উচিত যে এটি আপনার নিয়মিত লগইন পাসওয়ার্ডের সাথে আর কাজ করবে না, তবে পাসওয়ার্ড ফাইল তৈরি করার সময় আপনি নতুন পাসওয়ার্ডটি ব্যবহার করার প্রয়োজন হবে। ফাইলটি আপডেট করতে, দরকারী সরঞ্জামটি আবার ব্যবহার করুন।
মূল প্রশ্নের অনেক সহজ সমাধান রয়েছে এবং আমি যেভাবে চালিতাম তা হল:
সর্বদা প্রশাসনিক নন-ব্যবহারকারী হিসাবে লগ ইন করুন এবং যখনই প্রশাসনিক প্রশাসক ব্যবহারকারীকে "প্রশাসনিক" কিছু করার দরকার হয়, ঠিক:
fab-user@fab-ux:/media/Data/Temp
$ su - fab-root
Password:
fab-root@fab-ux:~
$ sudo smartctl --all /dev/sdc
হ্যাঁ, এটি আপনি যা চান তা নয় তবে এটি আপনার যা প্রয়োজন তা সত্য