مقدمة
الاتصال بخادم VPS عبر SSH باستخدام زوج مفاتيح (المفتاح العام / المفتاح الخاص) أكثر أمانًا من استخدام كلمة مرور. يبقى المفتاح الخاص على جهازك؛ ولن يقبلك الخادم إلا إذا قدّم العميل المفتاح المطابق. يوضّح هذا الدليل، بخطوات واضحة ومرقّمة، كيفية توليد زوج مفاتيح، وتثبيت المفتاح العام على الـVPS (من الطرفية، عبر لوحة مزود الخدمة أو عبر cPanel)، وإجراء الاتصال من أنظمة Linux أو macOS أو Windows.
المتطلبات المسبقة
- عنوان IP العام أو اسم المضيف الخاص بالـVPS واسم المستخدم الذي ستستخدمه (مثال
root<code>root</code>،ubuntu<code>ubuntu</code>،centos<code>centos</code> أو المستخدم الذي أنشأته صورتك). - منفذ SSH (افتراضيًا 22). إذا كان VPS الخاص بك يستخدم منفذًا مخصصًا، فقم بتدوينه.
- الوصول إلى عميل SSH على جهازك: الطرفية على macOS/Linux، PowerShell/Windows Terminal (OpenSSH مدمج) على Windows 10+، أو PuTTY إذا فضّلت واجهة رسومية.
- إذا لم تعد قادرًا على الاتصال بكلمة مرور: احصل على وصول إلى وحدة التحكم التسلسلية/وحدة التحكم عبر الويب لدى المزود (أو إلى منطقة العميل) لحقن المفتاح العام.
- لا تُشارك المفتاح الخاص أبدًا. احرص على عمل نسخة احتياطية مشفّرة من المفتاح الخاص.
ملخص سريع
- توليد زوج مفاتيح عام/خاص على جهازك (يوصى بـ<code>Ed25519</code>).
- نسخ أو استيراد المفتاح العام إلى الـVPS (الأمر
ssh-copy-id<code>ssh-copy-id</code>، النسخ اليدوي، وحدة تحكم المزود أو عبر cPanel). - الاتصال عبر SSH مع تحديد المفتاح الخاص إذا لم يكن في المسار الافتراضي.
الخطوة 1 — توليد زوج مفاتيح
اختر <code>ed25519</code> إن أمكن: مفتاح أصغر حجمًا وأكثر حداثة. إذا احتجت إلى ضمان أقصى قدر من التوافق، فاستخدم <code>rsa 4096</code>.
Linux / macOS (الطرفية)
# paire Ed25519 (recommandée)
ssh-keygen -t ed25519 -C "votre-email@example.com"
# ou, si vous avez besoin de compatibilité maximale
ssh-keygen -t rsa -b 4096 -C "votre-email@example.com"
اقبل المسار الافتراضي (مثال ~/.ssh/id_ed25519) أو أدخل ملفًا آخر إذا كنت تدير عدة مفاتيح. أدخل عبارة مرور (passphrase) عند الطلب (ينصح بذلك بشدة).
Windows
خياران:
- PowerShell / Windows Terminal (Windows 10+ مع OpenSSH): نفّذ نفس الأمر
ssh-keygenكما في الأعلى. - PuTTY / PuTTYgen: افتح PuTTYgen، واختر Ed25519 (أو RSA 4096)، Generate، احفظ المفتاح الخاص بصيغة PuTTY (.ppk) وانسخ المفتاح العام المعروض. إذا أنشأت المفتاح بصيغة OpenSSH في مكان آخر وترغب في استخدامه مع PuTTY، فاستورد المفتاح الخاص إلى PuTTYgen ثم احفظه بصيغة .ppk.
التحقق وحماية المفتاح الخاص
# droits conseillés sur Linux/macOS
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519 # ou id_rsa
chmod 600 ~/.ssh/authorized_keys
لا تشارك أبدًا ملف المفتاح الخاص (id_ed25519id_ed25519، id_rsa id_rsa، أو ملف .ppk الخاص بـPuTTY). احفظه مُشفّرًا إذا لزم الأمر.
استخدام ssh-agent لتجنّب إعادة إدخال عبارة المرور (passphrase)
للحفاظ على المفتاح في الذاكرة أثناء الجلسة:
# Linux / macOS
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
# Windows PowerShell (si OpenSSH est installé)
Start-Service ssh-agent
ssh-add C:\Users\VotreNom\ .ssh\id_ed25519
على macOS، راجع توثيق Apple إذا رغبت بدمج المفتاح مع سلسلة مفاتيح النظام.
الخطوة 2 — تثبيت المفتاح العام على الـVPS
عدة طرق: اختر الأنسب لحالتك.
الطريقة A — تلقائية (إذا كان تسجيل الدخول بواسطة كلمة مرور لا يزال ممكنًا)
# remplacez user@IP par votre utilisateur et l'IP du VPS
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@IP
ينشئ هذا الأمر ~/.ssh دليل ~/.ssh على الخادم (إذا لزم)، ويضيف المفتاح إلى authorized_keys ويضبط الأذونات.
الطريقة B — النسخ اليدوي من جهازك المحلي
cat ~/.ssh/id_ed25519.pub | ssh user@IP "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
هذا السطر وحده ينسخ المفتاح العام ويضبط الأذونات الصحيحة على الخادم.
الطريقة C — عبر واجهة الويب أو لوحة تحكم المزود
- افتح لوحة العميل لدى مزود الخدمة وابحث عن «Console», «SSH Keys», «Access» أو ما شابه.
- قم بلصق محتوى
~/.ssh/id_ed25519.pubفي الحقل المخصص واحفظ.
إذا كان مزودك يوفر إمكانية حقن المفتاح أثناء إنشاء المثيل، أضف المفتاح العام أثناء العملية ليتم تكوينه عند الإقلاع.
الطريقة D — من حساب cPanel (استضافة مشتركة أو cPanel على VPS)
يقدّم cPanel الأداة القياسية SSH Access / Manage SSH Keys لاستيراد ومنح صلاحية لمفتاح عام:
- استورد المفتاح (الصق محتوى
id_xxx.pub) Authorize إذا طلبت الواجهة ذلك. - يمكنك بعد ذلك فتح الأداة Terminal في cPanel للتحقق من أن
~/.ssh/authorized_keysيحتوي بالفعل على المفتاح المصرح به.
~/.ssh/authorized_keys بعد الاستيراد.ملاحظة: قد يقوم مزوّد الاستضافة بتعطيل واجهة «Manage SSH Keys». إذا لم تظهر لك، فاتصل بالدعم وزوّدهم بعنوان IP للمثيل واسم المستخدم المستهدف والمفتاح العام المراد إضافته.
الخطوة 3 — الاتصال من جهازك
Linux / macOS / PowerShell (Windows مع OpenSSH)
# connexion simple (clé par défaut)
ssh user@IP
# spécifier explicitement une clé
ssh -i ~/.ssh/id_ed25519 user@IP
# port SSH personnalisé
ssh -i ~/.ssh/id_ed25519 -p 2222 user@IP
# mode débogage (utile en cas d'erreur)
ssh -vvv -i ~/.ssh/id_ed25519 user@IP
استخدام ملف تكوين SSH (~/.ssh/config)
Host mon-vps
HostName 203.0.113.10
User root
IdentityFile ~/.ssh/id_ed25519
Port 22
IdentitiesOnly yes
ثم: ssh mon-vps يُسهّل الوصول ويجعله قابلاً للتكرار.
PuTTY (Windows)
- إذا كان لديك مفتاح OpenSSH، فافتح PuTTYgen ثم Load لاستيراد مفتاحك الخاص. إذا لزم الأمر، احفظه بصيغة
.ppk.ppk. - افتح PuTTY: في Session أدخل المضيف (IP). في Connection → SSH → Auth، حدد ملف .ppk
.ppkمع Private key file for authentication. ارجع إلى Session ثم انقر على Open.
استكشاف الأخطاء وإصلاحها — الأخطاء الشائعة والحلول
- Permission denied (publickey)
- تحقق من اسم المستخدم بالضبط (تقوم بعض صور السحابة بإنشاء
ubuntu،centos،ec2-user، إلخ.). - تأكد من أن المفتاح العام موجود تمامًا في
~/.ssh/authorized_keys(دون أي انقطاع في السطر). - تحقق من أذونات الملفات على الخادم :
chmod 700 ~/.sshوchmod 600 ~/.ssh/authorized_keys. - نفّذ أمر التشخيص :
ssh -vvv -i ~/.ssh/id_ed25519 user@IPلمعرفة تبادل الرسائل وتحديد مكان فشل المصادقة.
- تحقق من اسم المستخدم بالضبط (تقوم بعض صور السحابة بإنشاء
- Connection timed out
- من المحتمل أن يكون منفذ SSH محجوبًا بواسطة جدار ناري (iptables/ufw) أو بواسطة قاعدة شبكة لدى المزود. اختبار سريع :
nc -vz IP 22أوtelnet IP 22من جهاز آخر للتحقق من إمكانية الاتصال. - تحقق من قواعد الشبكة في لوحة العميل (Security groups، جدار حماية الـ VPS).
- من المحتمل أن يكون منفذ SSH محجوبًا بواسطة جدار ناري (iptables/ufw) أو بواسطة قاعدة شبكة لدى المزود. اختبار سريع :
- Host key verification failed
- إذا تغيّرت بصمة الخادم (إعادة التثبيت، الترحيل)، فاحذف الإدخال المعروف القديم :
ssh-keygen -R IPأو حرّر~/.ssh/known_hostsيدويًا، ثم أعد الاتصال.
- إذا تغيّرت بصمة الخادم (إعادة التثبيت، الترحيل)، فاحذف الإدخال المعروف القديم :
- المفتاح غير مقبول بواسطة PuTTY
- تأكد من أنك قد حوّلت المفتاح إلى تنسيق .ppk
.ppkعبر PuTTYgen.
- تأكد من أنك قد حوّلت المفتاح إلى تنسيق .ppk
- لا يمكنك إضافة المفتاح العام
- استخدم وحدة التحكم التسلسلية/الويب التي يوفّرها المزود لإضافة المفتاح يدويًا إذا كان الوصول عبر SSH بكلمة مرور مغلقًا.
- إذا لم يكن لديك أي وصول، افتح تذكرة لدى الدعم مرفقًا المفتاح العام ومحددًا عنوان IP والمستخدم المستهدف (انظر قسم «متى تتواصل مع الدعم»).
- سجلات الخادم
- إذا كان لديك وصول بصلاحية root: راجع السجلات للتشخيص — مثال Debian/Ubuntu :
tail -n 200 /var/log/auth.log، RHEL/CentOS :tail /var/log/secureأوjournalctl -u sshd.
- إذا كان لديك وصول بصلاحية root: راجع السجلات للتشخيص — مثال Debian/Ubuntu :
أفضل ممارسات الأمان
- احمِ المفتاح الخاص بعبارة مرور (passphrase) واستخدم ssh-agent
ssh-agentحتى لا تضطر لإعادة إدخالها عند كل اتصال. - قم بحذف المفاتيح العامة القديمة بانتظام من ملف authorized_keys
authorized_keysعلى خوادمك. - لا تعطّل مصادقة كلمة المرور (
/etc/ssh/sshd_config → PasswordAuthentication no) إلا بعد التأكد من أن جميع الاتصالات المصرح بها تعمل عبر المفتاح وأنك تحتفظ بطريقة وصول احتياطية (وحدة تحكم المزود). - قصر وصول SSH (جدار الحماية) على نطاقات عناوين IP الضرورية كلما أمكن.
- تجنّب تخزين المفتاح الخاص في أماكن غير مُشفّرة أو مشتركة (تخزين سحابي غير مُشفّر، مساحات عامة، إلخ).
متى تتواصل مع الدعم
افتح تذكرة إذا:
- ليس لديك وصول إلى واجهة الويب/الكونسول التسلسلي ولا يمكنك إضافة المفتاح العام.
- لا تتمكن من تشغيل خدمة SSH بعد تعديل الإعدادات وليس لديك وسيلة وصول أخرى.
- ترغب في أن يضيف المزود المفتاح العام نيابةً عنك (أرفق فقط الـ المفتاح العام : محتوى الملف
id_xxx.pub). لا تُرفق المفتاح الخاص أبدًا.
في التذكرة: حدد عنوان IP للمثيل، واسم المستخدم المستهدف، والصق المفتاح العام كاملاً. لا تُرسل المفتاح الخاص أبدًا.
الموارد الداخلية
- كيفية طلب خادم VPS SSD؟ — تحقق من خيارات الوصول وتوفر وحدة التحكم/خيار حقن المفتاح أثناء الإنشاء.
- كيفية الوصول إلى حسابي في cPanel؟ — إذا كنت تستخدم cPanel لاستيراد/السماح بمفتاح SSH.
الخلاصة
يُعد الاتصال عبر SSH باستخدام مفتاح خطوة بسيطة للتنفيذ ويُحسّن بشكل ملحوظ أمان خادم VPS الخاص بك. عمليًا: أنشئ زوج مفاتيح (يفضل Ed25519)، ثبّت المفتاح العام على الـVPS (باستخدام أمر، عبر وحدة تحكم المزود أو عبر cPanel)، اختبر الاتصال، ثم اتبع ممارسات الأمان الجيدة (حماية المفتاح بعبارة مرور (passphrase)، استخدام ssh-agent، وحذف المفاتيح القديمة). اتصل بالدعم إذا لم يتوفر لديك أي وسيلة وصول احتياطية لحقن المفتاح.
تم الاطلاع على الوثائق في 17 أكتوبر 2026. قد تختلف الأدوات حسب مزود الاستضافة.