Hardening and Secure SSH #1

رووح القلوب

عضو جديد
20 مارس 2009
246
1
0
بسم الله الرحمن الرحيم


السلام عليكم ورحمة الله وبركاته


النظام المستخدم للسيرفر : CentOS

التوزيعات الريدهاتيه ومابُني عليها يطبق مثلي . والدبيانيه وبناتها اختلافات بسيطه

راح تكون سلسله مواضيع ان شاء الله عن تأمين خدمة الـ SSH


اليوم بأذن الله راح نتعلم طريقة جديده ممكن تكون للبعض واكثر امن من الطرق العادية وتسمى

Public-Key Authentication

يعتمد لدخول عبر SSH .. ان يتوفر مفتاح العام ويكون موجود بـ السيرفر ومفتاح خاص يجب ان يكون بجهازك والحذر من امتلاك اي شخص للمفتاح الخاص

ﻹنشاء المفاتيح

كود:
[SIZE=3]ssh-keygen -t rsa[/SIZE]
* ممكن استخدام بطريقة التشفير من RSA او DSA .. وافضل النوع الاول لطول التشفير

بعدها راح يسئلك عن مكان حفظ ملف الخاص وباسورد للدخول للسيرفر

كود:
[SIZE=3]Enter file in which to save the key (/root/.ssh/id_rsa[/SIZE]
الاول يطلب منك مسار المفتاح الخاص وبالعاده يكون تحت


كود:
[FONT=Tahoma] root/.ssh/id_rsa[/FONT]


اما اذا كان المفتاح ليوزر فيصبح المسار

كود:
[SIZE=3]/home/user/.ssh/id_rsa[/SIZE]

انتبهو ياشباب من النقطه (.) قبل ssh


كود:
 [SIZE=3]Enter passphrase (empty for no passphrase[/SIZE]



بعدها ادخل الباسورد واعد ادخال الباسورد مره اخرى
احذر من وضع باسورد صعب وتنساه لان لايتم الدخول الا عن طريقها
وحتى الـ Attacker .. لو عرف الباسورد
فماراح يستطيع يدخل الا بوجود المفتاح الخاص

بعد الانتهى من العملية تم انشاء مفتاحين



* id_rsa > Private key = المفتاح الخاص
* id_rsa.pub > Public key = المفتاح العام


الان نرفع المفتاح العام للسيرفر id_rsa.pub


كود:
[FONT=Tahoma] scp  ~/.ssh/id._rsa.pub [EMAIL="root@192.168.1:./.ssh"]root@192.168.1:./.ssh[/EMAIL]/authorized_keys[/FONT]

or


كود:
[FONT=Tahoma][SIZE=2] scp  /root/.ssh/id._rsa.pub [SIZE=3][EMAIL="root@192.168.1.6:./.ssh"]root@192.168.1.6:./.ssh[/EMAIL]/authorized_keys[/SIZE][/SIZE][/FONT]



انتبهو ياشباب من المسارات فاذا كان المفتاح ليوزر يصبح



كود:
[FONT=Tahoma] scp  /home/[U]USER[/U]/.ssh/id._rsa.pub [EMAIL="root@ServerName:./.ssh"]root@ServerName:./.ssh[/EMAIL]/authorized_keys[/FONT]

لزم يكون الملف اسمه =
authorized_keys لان جميع المفاتيح راح تكون بداخلها
مثل مفتاح root و ali و Firas راح تكون كلها بداخل الملف


الامر scp = Secure copy


اي نقلنا المفتاح العام للسيرفر عن بطريقة امنه باستخدام scp .. والمفتاح مخزن بملف

authorized_keys


الان الطريقة فعاله , لكن يجب تعطيل خاصية الدخول ب "المصادقه" Host-key Authentication.. الي شرحها حسين

نذهب لملف الاعدادت


كود:
  [SIZE=3][SIZE=3]/etc/ssh/sshd_config[/SIZE] [/SIZE]


هذا الملف خاص باعدادت خدمة الـ SSH .. في حاجات حلوه ابحثو عنها

المهم ابحث عن سطر مكتوب ببدايته
كود:
[FONT=Tahoma] #PasswordAuthentication yes[/FONT]

احذف الـ هاش >#< واستبدل الـ yes ب no

ليصبح

كود:
 PasswordAuthentication no

بحيث تم تعطيل خاصيه التعامل بالباسورد احفظ شغلك ..

* NOTE

في حالة ان الله مرزقك باكثر من جهاز او تتنقل من مكان لمكان او حتى من ناحية الحمايه ..
فممكن تحط المفتاح بفلاش او هاردسك وتحذفه من جهازك ..
والطريقه كالتالي


كود:
ssh -i /path/id_rsa user@192.168.1.9
==========

تمت العملية بنجاح وبكذا راح تصعب على الهكر الدخول للسيرفر ..

وتفادي Brute force attack او استطاع احد الحصول على الباسورد باي طريقة كانت


ومن الممكن الاستفاده من الـ IPtables في عملية المنع والسماح

فمثلا السماح لاي بي جهازي الدخول للسيرفر , وغيره يتم منعه

ممكن بالايام القادمه اتطرق لها

==========

Sources

RedHat Books
binary-zone blog
cyberciti.biz blog

==========

💘