مقصد اور مراحل کی ترتیب
منتظمین کو اپنے ذاتی اکاؤنٹس میں کلیدوں کے ذریعے لاگ ان کرنا چاہیے اور ضرورت پڑنے پر sudo استعمال کرنا چاہیے، کیونکہ اس سے یہ ریکارڈ رہتا ہے کہ کس نے کیا کیا اور پاس ورڈ کا اندازہ لگانے کی کوششیں محدود ہوتی ہیں۔ ترتیب اہم ہے: پہلے نئی رسائی فعال کریں، اسے آزمائیں اور آخری مرحلے میں root کو محدود کریں۔ کوئی مسئلہ ہونے کی صورت میں استعمال کے لیے فراہم کنندہ کے کنسول تک رسائی دستیاب رکھیں۔
اکاؤنٹ بنانا اور کلید نصب کرنا
اکاؤنٹ بنائیں، اس کی عوامی کلید شامل کریں اور اجازتیں سختی سے مقرر کریں، کیونکہ sshd ایسی کلید فائلوں کو نظر انداز کرتا ہے جن میں دوسرے لوگ لکھ سکتے ہوں۔ نجی کلید کبھی سرور پر نقل نہ کریں۔ Red Hat خاندان کے نظاموں پر sudo گروپ کے بجائے wheel گروپ استعمال کریں۔
sudo adduser admin1
sudo usermod -aG sudo admin1
sudo install -d -m 700 -o admin1 -g admin1 /home/admin1/.ssh
sudo install -m 600 -o admin1 -g admin1 ~/admin1.pub /home/admin1/.ssh/authorized_keysدوسری ونڈو سے اسے آزمائیں
اپنا موجودہ سیشن کھلا رکھیں اور دوسرے ٹرمینل سے نیا لاگ ان آزمائیں۔ محض کسی گروپ کا رکن ہونا اس بات کا ثبوت نہیں کہ sudo کام کرتا ہے، کیونکہ اس کا فیصلہ sudoers کے قواعد کرتے ہیں۔ sudo -l سے اس کی تصدیق کریں۔
ssh -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519 admin1@server.example
sudo -l
sudo -vroot لاگ ان محدود کرنا
PermitRootLogin prohibit-password صرف کلید کے ساتھ root کی اجازت دیتا ہے، جبکہ no SSH کے ذریعے root کی رسائی مکمل طور پر بند کر دیتا ہے۔ تبدیلی اس ڈائریکٹری کے تحت ایک الگ فائل میں رکھیں: /etc/ssh/sshd_config.d. زیادہ تر اختیارات کے لیے sshd پہلی ملنے والی قدر استعمال کرتا ہے، اس لیے پہلے پڑھی جانے والی فائل کو ترجیح مل سکتی ہے۔ اسی وجہ سے محض فائلیں پڑھنے کے بجائے sshd -T سے مؤثر قدر کی تصدیق کریں۔ پرانا سیشن بند کرنے سے پہلے نیا لاگ ان آزمائیں۔
echo 'PermitRootLogin no' | sudo tee /etc/ssh/sshd_config.d/50-root.conf
sudo sshd -t
sudo systemctl reload ssh
sudo sshd -T | grep -iE '^(permitrootlogin|passwordauthentication) 'پاس ورڈ سے لاگ ان اور احتیاط طلب امور
PasswordAuthentication صرف اس وقت بند کریں جب ہر مطلوبہ اکاؤنٹ کی کلید آزمائی جا چکی ہو۔ کئی لوگوں کے لیے ایک ہی اکاؤنٹ استعمال کرنے سے گریز کریں، کیونکہ پھر دوسروں کو متاثر کیے بغیر کسی ایک شخص کی رسائی ختم نہیں کی جا سکتی۔ پورے اکاؤنٹ کے لیے پاس ورڈ کے بغیر sudo کی اجازت کا یہ مطلب بھی ہے کہ صرف کلید چوری ہو جانے سے مکمل کنٹرول مل جاتا ہے۔
CH-J Server Manager میں اکاؤنٹس
Users ماڈیول فعال SSH سیشن کے ذریعے اکاؤنٹس، گروپس، SSH کلیدوں اور SSH رسائی کا انتظام کرتا ہے۔ یہ کبھی sudoers تبدیل نہیں کرتا اور نہ NOPASSWD مقرر کرتا ہے، اور sudo -l سے sudo کی حقیقی حالت بتاتا ہے۔ root اکاؤنٹ حذف نہیں کیا جا سکتا، اور پاس ورڈ سے root لاگ ان کی اجازت کے لیے اضافی تصدیق درکار ہوتی ہے، جس میں Key only تجویز کردہ انتخاب ہے۔ SSH رسائی میں تبدیلی کو sshd -T اور نئے SSH لاگ ان سے جانچا جاتا ہے، اور اگر جانچ ناکام ہو یا تبدیلی آپ کی رسائی بند کر دے تو سابقہ ترتیب خود بخود بحال ہو جاتی ہے۔ sudo کے بغیر ماڈیول صرف پڑھنے کے لیے دستیاب ہوتا ہے۔