سيرفر مخصص: المصادقة الثنائية عبر SSH
تم إنشاء هذا الدليل باستخدام المنتجات التالية:
(قد تختلف التفاصيل مع المنتجات من مزودين مختلفين ولكن المفاهيم الرئيسية تظل كما هي)
مقدمة
خدمة المصادقة الثنائية عبر SSH من جوجل، المعروفة باسم Google Authenticator SSH، تعزز أمان الوصول عبر SSH (Secure Shell) بإضافة طبقة ثانية من التحقق. رغم أن SSH يوفر بالفعل طريقة آمنة لإنشاء اتصال مشفر مع سيرفر بعيد، فإن دمج 2FA يزيد من مستوى الأمان بطلب إدخال المستخدمين ليس فقط كلمة المرور، بل أيضاً رمز تحقق لمرة واحدة يتم إنشاؤه بواسطة Google Authenticator. في هذا الدليل، سنستعرض خطوات تثبيت وتكوين خدمة Google Authenticator SSH على سيرفر لينكس.
التثبيت
أولاً، تحتاج لتثبيت Google Authenticator على VPS لينكس الخاص بك. نفذ الأمر التالي:
sudo apt install libpam-google-authenticator
سيُطلب منك كتابة "Y" لتثبيت الحزمة، اكتبها واضغط Enter ثم سيتم تثبيت Google Authenticator!
ابدأ Google Authenticator بكتابة 'google-authenticator'. تأكد من أن حجم نافذتك كافٍ لعرض رمز QR، وإلا اضغط "CTRL+C" وأعد المحاولة.
سيُطلب منك مرة أخرى إذا كنت تريد المتابعة، اكتب "Y" للموافقة. ستحصل الآن على رمز QR. افتح تطبيق المصادقة على هاتفك الذكي وامسح رمز QR. في هذا المثال نستخدم Google Authenticator:
تأكد من نسخ أكواد النسخ الاحتياطي، يمكن استخدام كل منها مرة واحدة في حال فقدت تطبيق المصادقة.
الآن يعرض التطبيق الأكواد التي ستحتاجها لتسجيل الدخول لاحقاً. في هذه الحالة تبدو هكذا:
الأسئلة التالية ستُطرح عليك:
- هل تريد حفظ إعدادات Google Authenticator؟
- هل تريد تسجيل دخول واحد فقط كل 30 ثانية؟
- هل يجب زيادة الوقت الذي يكون فيه الرمز صالحًا؟
- هل يجب السماح بثلاث محاولات تسجيل دخول فقط كل 30 ثانية؟ (حماية ضد هجمات القوة الغاشمة)
لأسباب أمنية ننصح بالموافقة على جميعها بـ نعم.
التكوين
الآن علينا تعديل Google Authenticator ليتم استخدامه فعليًا. هذا يتطلب تعديلين.
/etc/ssh/sshd_config
فعّل الوحدات المطلوبة في ملف /etc/ssh/sshd_config
. افتح الملف بكتابة:
sudo nano /etc/ssh/sshd_config
أنت الآن في محرر نصوص. يمكنك التنقل باستخدام الأسهم، حذف النص وإدخاله بحرية، ثم اضغط 'CTRL + X' ثم 'Y' وأخيرًا 'Enter' لحفظ الملف.
تأكد من أن السطرين 'UsePAM' و 'ChallengeResponseAuthentication' مضبوطان على 'yes'، مثل هذا:
احفظ الملف بـ 'CTRL + X' ثم 'Y' وأخيرًا 'Enter'. أعد تشغيل SSH بالأمر التالي:
sudo systemctl restart ssh
/etc/pam.d/sshd
الآن نضيف Google Authenticator إلى تسجيل الدخول في ملف /etc/pam.d/sshd
. افتح الملف بكتابة:
sudo nano /etc/pam.d/sshd
انتقل إلى نهاية الملف وأضف السطر التالي:
auth required pam_google_authenticator.so
احفظ الملف بـ 'CTRL + X' ثم 'Y' وأخيرًا 'Enter'.
اختبار الوصول
حان الوقت لتسجيل الدخول لأول مرة باستخدام 2FA. بعد اتباع الخطوات أعلاه، فقط أعد تشغيل اتصال SSH الخاص بك.
أدخل كلمة المرور كالمعتاد. سيُطلب منك إدخال رمز، فقط أدخل رمز 2FA الحالي.
الآن أنت مسجل دخول!
الخلاصة
مبروك، لقد قمت بتكوين 2FA بنجاح لوصول SSH الخاص بك. لأي أسئلة أو مساعدة إضافية، لا تتردد في التواصل مع فريق الدعم لدينا، المتوفر يوميًا لمساعدتك! 🙂