مميز

استخدام مفاتيح SSH بدلا من كلمة المرور

نُشر في 21/08/2026 حُدّث في 01/11/2026 357 مشاهدة
VPS Linux SSH Clés SSH

كلمة المرور يمكن تخمينها وإعادة استخدامها والعثور عليها في تسريب بيانات. أما مفتاح SSH فلا يمكن تخمينه: الجزء السري لا يغادر حاسوبك أبدا، والخادم لا يعرف سوى الجزء العام. إنه التغيير في الإعدادات الذي يحقق أكبر قدر من الأمان بأقل جهد.

كيف أنشئ زوج مفاتيح SSH؟

بأمر واحد، ssh-keygen -t ed25519، ينشئ مفتاحا خاصا ومفتاحا عاما.

على حاسوبك — وليس على الخادم — افتح طرفية (يفي PowerShell بالغرض على Windows):

ssh-keygen -t ed25519 -C "martin@portable-perso"
  • اقبل المسار المقترح، ~/.ssh/id_ed25519.
  • أدخل عبارة مرور. فهي تشفر المفتاح الخاص: إذا سُرق حاسوبك، يظل المفتاح غير قابل للاستخدام.

يُنشأ ملفان:

  • id_ed25519 — المفتاح الخاص. لا يُنسخ إلى أي مكان، ولا يُرسل عبر أي قناة، ولا يُلصق أبدا في تذكرة دعم.
  • id_ed25519.pub — المفتاح العام. وهو الذي تضعه على الخوادم.

اعرض المفتاح العام لنسخه:

cat ~/.ssh/id_ed25519.pub

يشغل سطرا واحدا ويبدأ بـ ssh-ed25519 AAAA….

كيف أضع مفتاحي العام على VPS الخاص بي؟

هناك طريقتان: لصقه في بطاقة مفاتيح SSH ضمن تبويب الوصول والأمان، أو إرساله من طرفيتك باستخدام ssh-copy-id.

من منطقة العملاء، وهي الطريقة الأبسط:

  1. افتح خدماتي، ثم VPS الخاص بك.
  2. انتقل إلى تبويب الوصول والأمان.
  3. في بطاقة مفاتيح SSH، الصق مفتاحك العام. يقبل الحقل مفتاحا واحدا في كل سطر والصيغ ssh-rsa وssh-ed25519 وecdsa.
  4. انقر على احفظ المفاتيح.

تؤكد الرسالة «تم تحديث مفاتيح SSH بنجاح.» الحفظ، ويحتفظ تبويب السجل بأثر لذلك. تُحفظ هذه المفاتيح وتُعاد إضافتها تلقائيا عند كل إعادة تثبيت لـ VPS: لا حاجة إلى تكرار العملية.

من طرفيتك، تعمل الطريقة التقليدية أيضا:

ssh-copy-id root@ADRESSE_IP

تحقق بعد ذلك من أن الاتصال بالمفتاح يعمل، دون إغلاق جلستك الحالية:

ssh root@ADRESSE_IP

إذا لم يعد الخادم يطلب كلمة مرور الحساب — وفي أسوأ الأحوال عبارة مرور مفتاحك — فكل شيء جاهز.

كيف أعطّل اتصال SSH بكلمة المرور؟

بتعيين PasswordAuthentication no في /etc/ssh/sshd_config ثم إعادة تحميل خدمة SSH — وذلك فقط بعد التحقق من الاتصال بالمفتاح.

لا تنتقل إلى هذه الخطوة إلا بعد التحقق من النقطة السابقة، وأبقِ جلسة SSH الحالية مفتوحة طوال العملية.

عدّل /etc/ssh/sshd_config:

PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin prohibit-password

تحقق من الصياغة قبل إعادة تحميل الخدمة — يجنبك هذا الأمر خادم SSH يرفض إعادة التشغيل:

sshd -t
systemctl reload ssh      # Debian, Ubuntu
systemctl reload sshd     # AlmaLinux, Rocky, CentOS Stream

افتح الآن جلسة ثانية في نافذة أخرى. إذا نجحت، يمكنك إغلاق الأولى بثقة. وإذا فشلت، صحّح الملف من الجلسة التي بقيت مفتوحة.

كيف أحفظ نسخة احتياطية من مفتاحي الخاص وأمنح الوصول لشخص آخر؟

احفظ المفتاح الخاص حيث تحفظ كلمات مرورك، ولا تضف أبدا سوى المفتاح العام للشخص المعني، في سطر جديد.

  • احفظ نسخة من مفتاحك الخاص حيث تحفظ كلمات مرورك: فقدانه يعني فقدان الوصول، إلا بالمرور عبر وحدة التحكم.
  • لمنح الوصول لشخص ثانٍ، أضف مفتاحه العام هو في سطر جديد. لا تشارك أبدا مفتاحا خاصا بين عدة أشخاص: فبذلك تفقد كل إمكانية للتتبع ولا يعود بإمكانك سحب وصول فرد بعينه.
  • لسحب وصول، احذف السطر المقابل واحفظ من جديد.

ماذا أفعل إذا فقدت مفتاح SSH؟

لن تكون محجوبا. افتح وحدة التحكم الاحتياطية من منطقة العملاء: فهي تعرض لك شاشة الجهاز دون المرور عبر SSH. سجّل الدخول بكلمة مرور المسؤول، وأعد مؤقتا PasswordAuthentication yes، وأضف مفتاحا جديدا، ثم أغلق هذا الخيار مجددا.

هل كان هذا المقال مفيدًا لك؟