دليل شامل لإنشاء مفاتيح SSH لخوادم أمازون ومراكز البيانات السحابية
سنشرح في هذه المقالة خطوات إنشاء مفاتيح SSH لتسجيل الدخول الآمن إلى خوادم الحوسبة السحابية ومراكز البيانات. تعرّف على كيفية إنشاء هذه المفاتيح واستخدامها على نظامي التشغيل ويندوز ولينكس.

دليل شامل لإنشاء مفاتيح SSH لخوادم أمازون ومراكز البيانات السحابية

ستتعلم في هذه المقالة كيفية إنشاء مفاتيح SSH بشكل آمن واحترافي لتسجيل الدخول الآمن إلى خوادم ومراكز بيانات أمازون السحابية. ستتعرف على طرق عملية على نظامي التشغيل ويندوز ولينكس، بالإضافة إلى أفضل الممارسات لأمن الخوادم وإدارتها.
0 الأسهم
0
0
0
0

لماذا يجب عليّ إنشاء واستخدام مفتاح SSH؟

في بيئات الحوسبة السحابية ومراكز البيانات الدولية، يُعد تسجيل الدخول الآمن والآلي إلى الخوادم حجر الزاوية في كل عملية من عمليات DevOps، واستضافة المواقع الإلكترونية، والعرض، والذكاء الاصطناعي، وإدارة قواعد البيانات. مفاتيح SSH إنها طريقة قياسية وآمنة وقابلة للبرمجة للمصادقة وتحل محل كلمات المرور الضعيفة.

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

المتطلبات الأساسية والمفاهيم الأساسية

المفتاح الخاص: ملفك السري الذي لا ينبغي الكشف عنه.

المفتاح العام: ملف يتم وضعه على الخادم (authorized_keys).

الخوارزميات الشائعة: ed25519 (مُستَحسَن)، rsa 4096.

المسارات: ~/.ssh/id_* على نظام لينكس/WSL و C:\Users\ .ssh على نظام ويندوز.

الوصول: chmod 700 ~/.ssh و chmod 600 للمفتاح الخاص.

إنشاء مفتاح SSH على أنظمة Linux/macOS/WSL

يوصى بـ ed25519 استخدم هذا الخيار إلا إذا كنت بحاجة إلى RSA لأسباب تتعلق بالتوافق.

خطوات إنشاء وإدارة المفاتيح في شل

ssh-keygen -t ed25519 -C "[email protected]" -f ~/.ssh/id_ed25519 -o -a 100
ssh-keygen -t rsa -b 4096 -C "[email protected]" -f ~/.ssh/id_rsa -o -a 100
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
ls -la ~/.ssh
cat ~/.ssh/id_ed25519.pub
ssh-copy-id -i ~/.ssh/id_ed25519.pub [email protected]
ssh-copy-id -i ~/.ssh/id_ed25519.pub -p 2222 [email protected]
chmod 400 my-aws-key.pem
ssh -i my-aws-key.pem [email protected]

ملاحظة: في AWS، غالبًا ما تختار المفتاح أو تستورده عند تشغيل مثيل. إذا كان لديك ملف PEM، فاستخدمه كهوية.

إنشاء مفتاح SSH في نظام التشغيل Windows (باور شيل / ويندوز أوبن إس إس إتش)

يحتوي نظام التشغيل Windows 10/11 على عميل OpenSSH؛ يمكنك أيضًا استخدام PuTTY/Puttygen للاتصال باستخدام PuTTY.

أوامر PowerShell

ssh-keygen -t ed25519 -C "[email protected]" -f $env:USERPROFILE\.ssh\id_ed25519
Start-Service ssh-agent
ssh-add $env:USERPROFILE\.ssh\id_ed25519

مسار الملف:

  • C:\Users\ \.ssh\id_ed25519

  • C:\Users\ \.ssh\id_ed25519.pub

قم بتحويل ملفات PEM إلى PPK باستخدام برنامج PuTTYgen

الخطوات العامة:

  • افتح برنامج PuTTYgen.

  • ملف > تحميل المفتاح الخاص والملف my-aws-key.pem تحميل (عرض جميع الملفات).

  • احفظ المفتاح الخاص باسم my-aws-key.ppk واستخدمه في برنامج PuTTY (الاتصال > SSH > المصادقة > ملف المفتاح الخاص).

استيراد المفاتيح العامة في AWS EC2 ولوحات التحكم السحابية الأخرى

وحدة تحكم AWS: EC2 > أزواج المفاتيح > استيراد زوج مفاتيح. اسم الملف ومحتواه .حانة يدخل.

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

مثال على استخدام cloud-init لإضافة مفتاح عام

#cloud-config
ssh_authorized_keys:
  - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... [email protected]

أضف المفتاح إلى GitLab/GitHub واستخدمه في التكامل المستمر

لـ GitLab: إعدادات المستخدم > مفاتيح SSH ثم الصق المفتاح العام. انتقل إلى المشروع لنشر المفاتيح.

في بيئة التكامل المستمر/التسليم المستمر (CI/CD)، قم بتحميل المفتاح الخاص كمتغير محمي واستخدمه في المهمة عن طريق إنشاء ملف ذي وصول مقيد (chmod 600).

إعدادات الخادم والأمان بعد تثبيت المفتاح

الخطوة 1: تعيين الأذونات.

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
chmod 600 ~/.ssh/id_ed25519

ثم الإعدادات /etc/ssh/sshd_config تحقق وحدث:

  • رقم مصادقة كلمة المرور

  • PermitRootLogin no

  • مصادقة المفتاح العام نعم

  • أنت تستطيع السماح للمستخدمين تم ضبطه لتقييد المستخدمين.

  • لا تستخدم نظام أسماء النطاقات وقم بتغيير المنفذ إذا رغبت في ذلك.

sudo systemctl restart sshd

جدار الحماية:

sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw allow 2222/tcp

استخدم Fail2ban أو CrowdSec لمنع هجمات القوة الغاشمة:

sudo apt install fail2ban

بالنسبة للخوادم الحساسة، استخدم مضيفًا وسيطًا/مضيفًا وسيطًا لتقييد الوصول المباشر إلى الشبكات الخاصة.

نصائح عملية لتطبيقات مختلفة

للمتداولين (خادم افتراضي خاص للتداول)

اختر موقعًا: قرب خوادم الوسطاء أو البورصات لضمان أقل زمن استجابة. لدينا أكثر من 85 موقعًا حول العالم، مما يتيح لنا توفير موقع قريب من السوق المستهدف.

يوصى بتقييد استخدام SSH على عناوين IP الثابتة فقط أو عبر VPN:

sudo ufw allow from 203.0.113.5 to any port 22

للاعبين (خوادم افتراضية خاصة للألعاب)

بالنسبة لخوادم الألعاب، استخدم مواقع ذات اتصال قوي وشبكة توصيل محتوى (CDN)/بروتوكول بوابة الحدود (BGP) مناسبة. استخدم مفاتيح SSH بدلاً من كلمات المرور، وخادم وسيط لتقليل مساحة الهجوم.

للذكاء الاصطناعي والعرض (سحابة وحدة معالجة الرسومات)

استخدم مفاتيح قوية (ed25519/RSA4096) للاتصال بخوادم وحدة معالجة الرسومات وقم بتعيين مستخدم ومفتاح منفصلين لكل مشروع.

rsync -avz -e "ssh -i ~/.ssh/id_ed25519 -p 2222" /local/path user@remote:/remote/path

للاستضافة واستضافة GitLab

استخدم مفتاحًا خاصًا بالخادم (مفتاح النشر) مع وصول محدود للوصول تلقائيًا إلى الخادم إلى المستودعات الخاصة.

إدارة المفاتيح، والتناوب، والمعايير

  • قم بتدوير المفاتيح بشكل دوري (على سبيل المثال كل 6 إلى 12 شهرًا).

  • قم بإزالة المفاتيح القديمة من المفاتيح المعتمدة واحذف لوحة التحكم السحابية.

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

  • في المؤسسات، استخدم شهادات SSH وCA للإدارة المركزية (OpenSSH CA).

نصائح إضافية وحلول للمشاكل

عند مواجهة خطأ تم رفض الإذن (المفتاح العام) تأكد من وجود المفتاح العام في ~/.ssh/authorized_keys موجود والأذونات صحيحة.

sudo journalctl -u sshd -e
sudo tail -f /var/log/auth.log

إذا كنت تستخدم ProxyJump أو مضيفًا وسيطًا، فسيكون ملف التكوين مفيدًا:

Host bastion
  HostName bastion.example.com
  User ubuntu
  IdentityFile ~/.ssh/id_ed25519

Host internal-*
  ProxyJump bastion
  User deploy
  IdentityFile ~/.ssh/id_deploy

من ServerAliveInterval و ServerAliveCountMax استخدمه في إعدادات SSH لمنع انقطاعات الجلسات المفاجئة.

التوصيات الأمنية النهائية

ومن النقاط المهمة الأخرى تقييد الوصول إلى SSH لعناوين IP، واستخدام VPN أو شبكة خاصة، واستخدام خدمات مكافحة DDoS للخوادم الحساسة.

ملخص وقائمة مراجعة مقترحة

  • إنشاء المفتاح: ed25519 مع عبارة مرور

  • حماية الملف: chmod 700 ~/.ssh && chmod 600 private_key

  • تفعيل SSH-Agent وإضافة المفاتيح

  • قم بتحميل المفتاح العام إلى لوحة تحكم AWS أو مركز البيانات أو استخدم cloud-init

  • تعطيل مصادقة كلمة المرور والسماح بتسجيل الدخول الجذر

  • جدار الحماية/UFW وFail2ban أو CrowdSec

  • استخدام نظام الحماية، وتقييد عناوين IP، وشبكة VPN للوصول الحساس

  • نسخ المفاتيح وتدويرها بانتظام

قد يعجبك أيضاً