وفر الوقت عند تسجيل الدخول إلى GitHub عبر SSH باستخدام المصادقة بدون كلمة مرور.

تتضمن المصادقة باستخدام GitHub عادةً استخدام رمز وصول أو كلمة مرور. ومع ذلك ، قد تكون هذه الطرق غير مريحة وغير آمنة ، خاصة عند الوصول إلى GitHub من أجهزة متعددة.

يوفر GitHub خيار استخدام Secure Shell (SSH) للمصادقة. يقدم SSH بروتوكول شبكة آمن للوصول إلى الآلة عن بعد. تثبت هذه الميزة قيمة خاصة في المواقف التي تتطلب التشغيل الآلي أو الوصول المتكرر عن بعد.

فهم مصادقة SSH

المصادقة مع SSH تنطوي على استخدام مفاتيح التشفير لإنشاء اتصال آمن (نفق) بين عميل (جهاز محلي) وخادم (GitHub).

عند استخدام SSH لـ GitHub ، يقوم المستخدم بإنشاء زوج من مفاتيح SSH - مفتاح عام ومفتاح خاص. يتم تحميل المفتاح العام إلى حساب GitHub الخاص بالمستخدم ، بينما يظل المفتاح الخاص مخزّنًا بشكل آمن على الجهاز المحلي للمستخدم.

يمكن تشبيه العملية بمفهوم القفل والمفتاح. الغرض من المفتاح العام (القفل) هو مشاركته بشكل مفتوح وتخزينه بشكل آمن على جانب الخادم. إنه بمثابة نظير للمفتاح الخاص ، مما يمكّن الخادم من التحقق من هوية جهازك المحلي. على العكس من ذلك ، يعمل المفتاح الخاص (المفتاح) كمعرّف فريد يتم تخزينه حصريًا على جهازك المحلي ، مما يتيح مصادقة ناجحة مع الخادم.

instagram viewer

أثناء المصادقة مع GitHub ، يقدم جهازك المحلي مفتاحه الخاص كدليل على الهوية. يتحقق الخادم مما إذا كان المفتاح العام المقابل المرتبط بحساب GitHub الخاص بك يطابق المفتاح الخاص المحدد. إذا تطابقت المفاتيح ، يمنح الخادم الوصول ، وينشئ ملف مشفر وآمن اتصال للتواصل.

إعداد SSH لـ GitHub

في هذا القسم ، سترى كيفية إعداد SSH للمصادقة مع GitHub.

1. إنشاء زوج مفاتيح SSH

عملية توليد زوج مفاتيح SSH هي الخطوة الأولى نحو استخدام SSH للمصادقة.

  1. افتح الجهاز الطرفي أو موجه الأوامر.
  2. نفّذ الأمر التالي لإنشاء زوج مفاتيح SSH جديد:
     ssh-keygen -t rsa -b 4096 -C "[email protected]"
  3. سيُطلب منك إدخال موقع ملف لحفظ زوج المفاتيح. يضعط يدخل لقبول الموقع الافتراضي (~ / .ssh / id_rsa) أو تحديد موقع مخصص.
     > إنشاء زوج مفاتيح rsa عام / خاص.
     > أدخل الملف فيأيّ لحفظ المفتاح (/home/vagrant/.ssh/id_rsa):
  4. بعد ذلك ، سيُطلب منك إدخال عبارة مرور. على الرغم من أن إضافة عبارة مرور اختيارية ، فإنها تعمل كمستوى إضافي من الأمان. تأكد من تذكر عبارة مرورك.
     > أدخل عبارة المرور (فارغة ل بدون عبارة مرور): 
     > أدخل نفس عبارة المرور مرة أخرى:
  5. بعد إنشاء زوج المفاتيح ، يجب أن ترى ملفين في الموقع المحدد. id_rsa (المفتاح الخاص) و id_rsa.pub (المفتاح العمومي).
     > تم حفظ هويتك في /home/vagrant/.ssh/id_rsa.
     > تم حفظ مفتاحك العمومي في /home/vagrant/.ssh/id_rsa.pub.
  6. عند الانتهاء ، يتم عرض بصمة المفاتيح وصورة عشوائية.
  7. أخيرًا ، ستحتاج إلى محتوى المفتاح العام لإضافته إلى GitHub. قم بتشغيل الأمر التالي للحصول على المحتوى:
     القط ~ / .ssh / id_rsa.pub

تأكد من تحديد المسار (~ / .ssh / id_rsa.pub في حالتي) الذي استخدمته عند إنشاء المفاتيح.

انسخ المحتوى إلى مكان آمن ومؤقت لاستخدامه لاحقًا.

2. إضافة المفتاح العام إلى GitHub

الآن بعد أن أنشأت زوج مفاتيح SSH ، تحتاج إلى إضافة المفتاح العام إلى حساب GitHub الخاص بك.

  1. قم بتسجيل الدخول إلى حساب GitHub الخاص بك وانتقل إلى حسابك إعدادات.
  2. انقر فوق مفاتيح SSH و GPG الموجود على الشريط الجانبي الأيسر.
  3. انقر فوق مفتاح SSH جديد.
  4. امنح مفتاح SSH الخاص بك أ عنوان.
  5. الصق محتوى المفتاح العام في ملف مفتاح مجال.
  6. أخيرًا ، انقر فوق أضف مفتاح SSH لحفظ مفتاح SSH في حساب GitHub الخاص بك.

لقد نجحت في تصدير المفتاح العام إلى حساب GitHub الخاص بك باستخدام هذه.

3. تكوين وكيل SSH

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

  1. تأكد من تشغيل وكيل SSH.
     $ EVAL"$ (ssh-agent -s)"
     > وكيل pid 2757
  2. أضف المفتاح الخاص إلى وكيل SSH.
     $ ssh-add ~ / .ssh / id_rsa
     > أدخل عبارة المرور ل /home/vagrant/.ssh/id_rsa:
     > الهوية المضافة: /home/vagrant/.ssh/id_rsa (/home/vagrant/.ssh/id_rsa)

لقد نجحت في تكوين وكيل SSH لإدارة مفاتيحك.

4. اختبار اتصال SSH

يمكنك الآن اختبار للتحقق من أن اتصال SSH الخاص بك قد تم إعداده بشكل صحيح ، ويمكنك المصادقة على GitHub باستخدام SSH.

  • قم بتشغيل الأمر أدناه لاختبار اتصال SSH بـ GitHub ؛
     ssh -T [email protected]
    إذا سارت الأمور على ما يرام ، فسترى تحذيرًا بشأن بصمة الإصبع. قم بتأكيد البصمة واكتبها نعم لاستكمال.
     > أصالة المضيف "github.com (140.92.130.4)" يستطيعر.
    > بصمة مفتاح ECDSA هي SHA256: p2QAMXNIC1TJYWeIOttrVc98 / R1BUFWu3 / LiyKgUfQM.
    > هل أنت متأكد أنك تريد ذلك يكمل الاتصال (نعم / لا)؟
  • عند الكتابة نعم، سترى ناتجًا مشابهًا للإخراج أدناه.
     > تحذير: مضاف بشكل دائم "github.com، 140.92.130.4" (ECDSA) إلى قائمة المضيفين المعروفين.
    > مرحبا princewillingoo! أنتتمت المصادقة عليه بنجاح ، لكن GitHub لا يوفر وصولاً إلى shell.

هذا يدل على أن المصادقة كانت ناجحة.

إدارة المستودعات باستخدام SSH

يتيح لك تكوين SSH إدارة مستودعاتك دون الحاجة إلى القلق بشأن مشاكل كلمات المرور ورموز الوصول.

تعيين عنوان URL البعيد

بوابة البعيد تعيين-أصل عنوان URL [email protected]:/.شخص سخيف

استنساخ مستودع

شخص سخيف استنساخ [email protected]:/.شخص سخيف

دفع التغييرات إلى المستودع

أصل دفع بوابة 

سحب التغييرات من المستودع

بوابة سحب الأصل 

مزايا SSH على مصادقة كلمة المرور

يوفر استخدام SSH للمصادقة العديد من المزايا البارزة مقارنة بأساليب المصادقة التقليدية المستندة إلى كلمة المرور. هذا يتضمن:

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

لهذا السبب ، تميل مصادقة SSH إلى أن تكون خيارًا أفضل مقارنةً بمصادقة كلمة المرور.

أفضل الممارسات واستكشاف الأخطاء وإصلاحها

لضمان إعداد SSH سلس وآمن ، من الضروري اتباع أفضل الممارسات وأن تكون على دراية بالمشكلات الشائعة التي قد تحدث وطرق استكشافها وإصلاحها.

  1. قم دائمًا بتعيين عبارة مرور لإنشاء طبقة أمان إضافية.
  2. تدرب على التدوير المتكرر للمفاتيح والنسخ الاحتياطي.
  3. قم بتأكيد كل خطوة لتجنب أخطاء الأذونات أو تكوين وكيل SSH غير صحيح.

من خلال الالتزام بأفضل الممارسات ، يمكنك بثقة استخدام مصادقة SSH لـ GitHub.

براعة SSH

يتم استخدام SSH على نطاق واسع في مناطق أخرى لإدارة الخوادم ووحدات التحكم الدقيقة وأجهزة الشبكة عن بُعد لأنها تتيح الوصول الآمن إلى واجهة سطر الأوامر (CLI) ، مما يتيح للمستخدمين أداء مهام مختلفة ، وتكوين الإعدادات ، ونقل الملفات ، واستكشاف الأخطاء وإصلاحها مشاكل.