ar
إعداد مصادقة مفتاح SSH على VPS
مصادقة مفتاح SSH تُعدّ من أكثر أساليب الأمان فعالية لحماية خادم VPS الخارجي. بدلًا من كلمة المرور القابلة للتخمين، يعتمد النظام على زوج مفاتيح تشفير: مفتاح عام على الخادم ومفتاح خاص محتفظ به بأمان على جهازك. هذا الأسلوب يجعل اختراق SSH شبه مستحيل حتى مع هجمات القوة الغاشمة المتقدمة.
Need this done for your project?
We implement, you ship. Async, documented, done in days.
توليد زوج مفاتيح SSH على جهازك المحلي
نفّذ الأوامر التالية على جهازك المحلي (ليس الخادم):
على Linux/macOS:
ssh-keygen -t ed25519 -C "my-vps-key"
يُنصح باستخدام Ed25519 لأنه أحدث وأقوى من RSA. عند السؤال عن المسار، اقبل الافتراضي أو اختر اسمًا مخصصًا. أضف passphrase قوية لحماية إضافية للمفتاح الخاص.
هذا يُنشئ ملفين:
~/.ssh/id_ed25519 (المفتاح الخاص - سري جدًا)
~/.ssh/id_ed25519.pub (المفتاح العام - يُنسخ للخادم)
على Windows باستخدام PowerShell:
ssh-keygen -t ed25519
نسخ المفتاح العام إلى الخادم
الطريقة الأسهل باستخدام ssh-copy-id:
ssh-copy-id -i ~/.ssh/id_ed25519.pub username@${SERVER_IP}
إذا كان SSH يعمل على منفذ مختلف:
ssh-copy-id -i ~/.ssh/id_ed25519.pub -p 2222 username@${SERVER_IP}
بدون ssh-copy-id (يدويًا):
cat ~/.ssh/id_ed25519.pub | ssh username@${SERVER_IP} "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh"
اختبر الاتصال بالمفتاح:
ssh -i ~/.ssh/id_ed25519 username@${SERVER_IP}
يجب أن تتصل دون طلب كلمة مرور (فقط passphrase المفتاح إن وجدت).
تعطيل مصادقة كلمة المرور تمامًا
بعد التحقق من عمل مصادقة المفتاح، عطّل كلمة المرور نهائيًا:
على الخادم، عدّل ملف إعداد SSH:
nano /etc/ssh/sshd_config
غيّر هذه الأسطر:
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no
AuthenticationMethods publickey
أعد تشغيل SSH:
systemctl restart sshd
تحقق من الإعداد بفتح نافذة طرفية جديدة والاتصال. لا تغلق الجلسة الحالية قبل التحقق.
تحقق من السجل إذا واجهت مشكلة:
journalctl -u ssh -f
إدارة مفاتيح SSH المتعددة والتهيئة المتقدمة
لإدارة عدة خوادم بسهولة، أنشئ ملف إعداد SSH محلي:
nano ~/.ssh/config
أضف إعدادات لكل خادم:
Host myvps
HostName ${SERVER_IP}
User username
Port 2222
IdentityFile ~/.ssh/id_ed25519
الآن يمكنك الاتصال ببساطة:
ssh myvps
لإضافة مفتاح إلى SSH Agent لتجنب إدخال passphrase في كل مرة:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
لعرض المفاتيح المحملة:
ssh-add -l
لنسخ ملف من الخادم بسهولة:
scp myvps:/path/to/file .
Related Services
Why Anubiz Host
100% async — no calls, no meetings
Delivered in days, not weeks
Full documentation included
Production-grade from day one
Security-first approach
Post-delivery support included
Ready to get started?
Skip the research. Tell us what you need, and we'll scope it, implement it, and hand it back — fully documented and production-ready.