تأمين الدخول الى سيرفر لينكس اوبنتو عن طريق الشل Securing SSH

تأمين الدخول إلى ssh


 الدخول الى السيرفر باستخدام حساب الروت

ssh root@ip

ادخال كلمة مرور حساب الروت


اضافة حساب يوزر غير الروت

useradd -m -s /bin/bash theNewUser

اعطاء باسوورد لليوزر

passwd theNewUser

كتابة كلمة المرور المطلوبة

تعطيل امكانية الدخول للروت من بعيد عن طريق الشيل ssh

نعدل ملف sshd_config

nano /etc/ssh/sshd_config

نعدل السطر التالي

PermitRootLogin yes

نجعلها no

PermitRootLogin no

ملاحظة هامة: يجب عدم تعطيل الدخول للروت من بعيد الا بعد اضافة يوزر أخر يمكن استخدامه للدخول للسيرفر

اعادة تشغيل الشل بالامر التالي

systemctl restart ssh

للدخول على حساب الروت بعد الدخول من حساب اليوزر الجديد يستخدم الامر التالي

su root

وادخال الباسورد وبهذا يمكن استخدام حساب الروت

تعطيل الدخول باستخدام الباسورد للحساب الجديد

نحتاج الى انشاء ملفات تشفير خاص بنا على الجهاز المحلي وهذا يتم عن طريق سطر الاوامر بالجهاز المحلي باستخدام امر

ssh-keygen -t rsa

اضغط y

يمكنك وضع كلمة مرور اضافية لحماية الملف فيما لو وصل لأحد آخر

يمكن ادخال كلمة المرور الجديدة عند طلبها  passphrase

ستكون الملفات موجودة على المسار التالي داخل مجلد المستخدم المحلي

/home/LocalUserName/.ssh/

نقل الملف التي تم انشاءه من خلال الامر السابق الى السيرفر

لنقل الملف نستخدم الامر التالي

ssh-copy-id theNewUser@ip

يمكن ادخال باسورد اليوزر الذي تم انشاءه بواسطة الروت سابقاً

هام جدا: قبل تعطيل الدخول بالباسوورد يجب التأكد من وجود نسخة احتياطية لملفات مفاتيح التشفير التي تم انشاءه ومساره كالتالي:

/home/YourUser/.ssh/

الآن لتعطيل الدخول بالباسوورد نعدل اعدادات ملف الشل

nano /etc/ssh/sshd_config

ونبحث عن الخيار التالي ونعدله الى no

PasswordAuthentication no

تحذير: لا تفعل هذا الخيار الا اذا تأكدت من امكانية الدخول باستخدام ملفات التشفير السابقة

الآن نقوم باعادة تشغيل الشل بالامر التالي

sudo systemctl restart ssh

الآن ستحتاج لملفات التشفير كلما اردت الدخول للسيرفر ويمكن نقلها من جهاز لآخر اذا اردت الدخول


اعطاء اليوزر الجديد صلاحية تنفيذ اوامر الروت باضافته لمجموعة

sudo

الدخول ليوزر الروت باستخدام الامر التالي

su root

ادخال الباسوورد

استخدام الامر التالي

sudo usermod -aG sudo  theNewUser

الآن يمكن لليوزر الجديد استخدام صلاحيات الروت

لعرض المجموعات التي يتواجد فيها اليوزر الجديد نستخدم الامر

groups theNewuser

وسيعرض اليوزر والمجموعات التي اضيف لها

theNewUser: theNewUser sudo


تعطيل حساب الروت بشكل كامل

لتعطيل حساب الروت بحيث لا يمكن الدخول له سواء بمعرفة الباسورد او باستخدام ملف التشفير يمكن  استخدام الامر التالي

sudo passwd -l root

بهذه الطريقة لا يستطيع احد الدخول لحساب الروت حتى بمعرفة كلمة المرور للروت وحتى باستخدام ملفات التشفير

لاعادة تنشيط حساب الروت يستخدم الامر التالي

sudo passwd -u root


تغيير برنامج الشل للروت بحيث لا يمكنه الدخول باستخدام الشل

sudo chsh root 

نكتب في الفراغ

/usr/sbin/nologin

والآن لو اراد احد الدخول بحساب الروت فلن يستطيع حتى لو كانت لديه الباسوورد

وحتى اي يوزر آخر لا يستطيع التحول الى حساب الروت باستخدام الأمر

su root

الآن لو أردت اعادة صلاحية الدخول للروت يمكن ارجاع الشل الخاص بالروت

يمكن تعديل ملف

sudo nano /etc/passwd

وتغيير شل الروت من

/usr/sbin/nologin

الى

/bin/bash

وحفظ الملف بالامر

ctrl+x

y

enter