المدوّنة · الخوادم ولينكس

الدخول إلى الخادم بمفتاح SSH بدل كلمة المرور

المعمار · · 3 دقائق قراءة

الدخول إلى الخادم بمفتاح SSH بدل كلمة المرور

تسجيل الدخول إلى الخوادم بكلمات المرور يترك الخادم عرضة لهجمات التخمين الآلية (Brute Force) المستمرة على منفذ SSH. يوفر استخدام المفاتيح المشفرة (SSH Key Pairs) حماية شبه مستحيلة الكسر ويسرع عملية الدخول اليومية بأمان وسلاسة.

لماذا خوارزمية Ed25519 بدلاً من RSA؟#

تعتمد خوارزمية Ed25519 على التشفير بالمنحنيات الإهليلجية (Elliptic-curve cryptography)، وتتميز بطول مفتاح قصير جداً (256-bit) يوفر أماناً أعلى من مفتاح RSA 3072-bit أو 4096-bit، فضلاً عن سرعة التوليد والتحقق ومقاومتها للهجمات الجانبية (Side-channel attacks).

الخطوة 1: توليد زوج المفاتيح على جهازك الشخصي#

شغّل الأمر التالي على حاسوبك الشخصي (في نافذة Terminal على لينكس/ماك أو PowerShell على ويندوز):

ssh-keygen -t ed25519 -C "admin@example.com"
نافذة تيرمينال تُظهر أمر ssh-keygen -t ed25519 مع بصمة المفتاح
أمر توليد مفتاح Ed25519 ونتيجته في التيرمينال

سيطلب منك النظام تحديد مكان حفظ المفتاح (اضغط Enter للمسار الافتراضي ~/.ssh/id_ed25519)، ثم سيطلب تعيين عبارة مرور (Passphrase) اختيارية لحماية المفتاح على جهازك في حال سُرق القرص.

الخطوة 2: نسخ المفتاح العام إلى الخادم#

زوج المفاتيح يتكون من مفتاحين: المفتاح الخاص (Private Key) ويجب ألا تغادر نسخته جهازك إطلاقاً، والمفتاح العام (Public Key) بصيغة .pub وهو ما يُرفع إلى الخادم.

أسهل طريقة لنسخ المفتاح العام هي استخدام أداة ssh-copy-id من جهازك:

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@YOUR_SERVER_IP

إذا لم تكن أداة ssh-copy-id متوفرة على جهازك، يمكنك نسخ المفتاح يدوياً داخل الخادم بوضعه في ملف ~/.ssh/authorized_keys للمستخدم المطلوب مع ضبط الأذونات بدقة:

mkdir -p ~/.ssh
chmod 700 ~/.ssh
cat id_ed25519.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

الخطوة 3: اختبار تسجيل الدخول بالمفتاح#

قبل تعديل أي إعدادات في الخادم، اختبر الاتصال من جهازك الشخصي للتأكد من أن الخادم يقبل المفتاح دون طلب كلمة مرور النظام:

ssh -i ~/.ssh/id_ed25519 user@YOUR_SERVER_IP

الخطوة 4: إيقاف تسجيل الدخول بكلمات المرور نهائياً#

بعد التأكد من نجاح تسجيل الدخول بالمفتاح، يجب إغلاق باب كلمات المرور تماماً لمنع أي محاولات تخمين. افتح ملف إعدادات خادم SSH بصلاحيات sudo:

sudo nano /etc/ssh/sshd_config

ابحث عن الخيارات التالية وتأكد من تعديلها على النحو الآتي:

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password
تحذير: لا تغلق جلسة SSH الحالية بعد تعديل ملف التكوين أو إعادة تشغيل الخدمة! افتح دائماً نافذة طرفية جديدة منفصلة واختبر تسجيل الدخول بمفتاحك. إذا كان هناك أي خطأ في الملف وأغلقت الجلسة الحالية، فستُحرم من الدخول إلى الخادم نهائياً.

افحص صحة ملف التكوين للتأكد من خلوه من أي أخطاء لغوية قبل إعادة التحميل:

sudo sshd -t

إذا لم تظهر أي رسائل خطأ، أعد تشغيل خدمة SSH لتطبيق التغييرات:

sudo systemctl restart ssh

(على أنظمة AlmaLinux / Rocky Linux يكون اسم الخدمة sshd).

المصادر#

التعليقات

كن أول من يشارك رأيه أو تجربته.

أضف تعليقاً أو سؤالاً

سجّل الدخول لتعجب بالتعليقات المفيدة وترفعها لأعلى النقاش. سجّل الدخول

لا يُنشر، ولا نرسل إليه شيئاً.

يظهر التعليق بعد مراجعته. الروابط لا تُفعَّل.

تبني موقعاً عربياً؟

سكربتات وقوالب وإضافات وخوادم — مصمّمة للمواقع العربية.

تصفّح المنتجات