كيفية إصلاح خطأ رفض الإذن (المفتاح العام)

نشرت: 2024-01-10
جدول المحتويات
  • لماذا يهم؟
  • أساسيات اتصالات الكمبيوتر الآمنة
  • مفتاح القفل: المفاتيح العامة
  • لماذا يحدث هذا الخطأ؟
  • كيف تصلحها
  • نصائح إضافية إذا كان لا يزال لا يعمل
  • الحفاظ على تشغيله بسلاسة
  • الأسئلة الشائعة
  • مصادر أخرى
  • تغليف

هل سبق لك أن صادفت رسالة "خطأ: تم رفض الإذن (المفتاح العام)" أثناء استخدام جهاز الكمبيوتر الخاص بك؟ يعد هذا خطأً شائعًا يظهر عادةً أثناء اتصالات SSH، وهي الطريقة التي تتواصل بها أجهزة الكمبيوتر مع بعضها البعض بشكل آمن.

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

كيفية إصلاح الخطأ: تم رفض الإذن (المفتاح العام)

لماذا يهم؟

الاتصالات الآمنة، مثل تلك التي يتم إجراؤها باستخدام SSH، تشبه إجراء محادثة خاصة في غرفة صاخبة. لن ترغب في أن يسمعك الجميع، خاصة إذا كنت تشارك أسرارًا أو معلومات شخصية، أليس كذلك؟ ولهذا السبب فإن إصلاح هذا الخطأ مهم جدًا.

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

أساسيات اتصالات الكمبيوتر الآمنة

دعونا نتعمق في ماهية SSH.

يرمز SSH إلى Secure Shell، وهي طريقة خاصة لأجهزة الكمبيوتر للتحدث مع بعضها البعض عبر الإنترنت بطريقة آمنة للغاية. تخيل أن SSH هو نفق خاص خاص يربط بين جهازي كمبيوتر.

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

مفتاح القفل: المفاتيح العامة

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

فكر في الأمر كمصافحة سرية. إذا لم تكن المصافحة متطابقة، فلن يحدث الاتصال، وذلك عندما ترى رسالة "خطأ: تم رفض الإذن (المفتاح العام)" .

لماذا يحدث هذا الخطأ؟

إذن لماذا ترى هذا الخطأ؟ هناك عدة أسباب شائعة:

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

كيف تصلحها

الآن بعد أن فهمت قليلاً سبب حدوث هذا الخطأ، فلنتحدث عن كيفية إصلاحه. فيما يلي بعض الخطوات التي يمكنك اتباعها:

التحقق من أذونات مفتاح SSH:

قم بتعيين الأذونات الصحيحة لمفتاحك الخاص.

 chmod 600 ~/.ssh/id_rsa chmod 600 ~/.ssh/autorized_keys

تأكد من وجود مفتاحك العام في ~/.ssh/authorized_keys على الخادم. إذا لم يكن الأمر كذلك، قم بإضافته باستخدام:

القط ~/.ssh/id_rsa.pub | ssh user@hostname 'cat >> ~/.ssh/authorized_keys'.

تصحيح أخطاء اتصال SSH

قم بتشغيل ssh -vvv user@hostname لتمكين الوضع المطول، مما يوفر تشخيصًا تفصيليًا للاتصال.

تحقق من التكوينات الصحيحة على الخادم، خاصة بالنسبة لـ PasswordAuthentication و PubkeyAuthentication .

القط الخ/ssh/sshd_config

حلول إضافية:

تحقق جيدًا من أنك تستخدم اسم المستخدم الصحيح لاتصال SSH.

أعد تشغيل خدمة SSH لتحديث الاتصالات.

 sudo systemctl restart sshd

تحقق من منفذ اتصال SSH في ملف تكوين SSH. الافتراضي هو عادة 22 ولكن ربما تم تغييره.

تحقق من منفذ SSH

تحقق من سجلات الخادم، مثل /var/log/auth.log أو /var/log/secure، للحصول على تفاصيل الخطأ.

نصائح إضافية إذا كان لا يزال لا يعمل

إذا جربت هذه الخطوات ومازلت ترى الخطأ، فإليك بعض الأشياء الأخرى التي يمكنك تجربتها:

  1. وضع التحدث: قم بتشغيل الوضع المطول في SSH. يشبه هذا مطالبة جهاز الكمبيوتر الخاص بك بإعطائك المزيد من الأدلة حول الخطأ الذي يحدث. يمكنك القيام بذلك عن طريق إضافة -vvv إلى أمر SSH، مثل ssh -vvv [email protected] . سيعطيك الكثير من التفاصيل حول ما يحدث عندما تحاول الاتصال.
  2. مشكلات الوكيل: في بعض الأحيان، قد تكون المشكلة مع وكيل SSH، وهي أداة تحمل مفاتيحك. إذا كان الوكيل لا يعمل بشكل صحيح، فلن يتم تقديم مفاتيحك بشكل صحيح. يمكن أن تساعد إعادة تشغيل وكيل SSH في بعض الأحيان.

الحفاظ على تشغيله بسلاسة

لتجنب الوقوع في هذا الخطأ في المستقبل، إليك بعض النصائح للحفاظ على عمل كل شيء بشكل جيد:

  1. العناية بالمفتاح: تعامل مع مفاتيح SSH الخاصة بك كما لو كنت تتعامل مع مفتاح المنزل. حافظ عليها آمنة ولا تشاركها مع الآخرين. تحقق بانتظام مما إذا كانوا لا يزالون يعملون كما ينبغي.
  2. الفحوصات المنتظمة: تمامًا مثلما تقوم بفحص سيارتك أو منزلك بانتظام بحثًا عن أي مشكلات، افعل الشيء نفسه مع إعدادات SSH الخاصة بك. تأكد من أن الإعدادات لم تتغير بشكل غير متوقع وأن مفاتيحك محدثة.

الأسئلة الشائعة

كيف أقوم بإعداد مصادقة المفتاح العام في SSH؟

لإعداد مصادقة المفتاح العام في SSH، قم أولاً بإنشاء زوج مفاتيح SSH على جهازك المحلي باستخدام أمر مثل ssh-keygen . يؤدي هذا إلى إنشاء مفتاح خاص ( id_rsa ) ومفتاح عام ( id_rsa.pub ). بعد ذلك، انسخ المفتاح العام إلى ملف ~/.ssh/authorized_keys الخاص بالخادم باستخدام ssh-copy-id user@server_ip . تأكد من أن ملف authorized_keys لديه الأذونات الصحيحة (عادةً 600) للأمان. يمكّن هذا الإعداد SSH من استخدام المصادقة المستندة إلى المفتاح بدلاً من كلمات المرور.

ما هي الأسباب الشائعة لخطأ "تم رفض إذن SSH (المفتاح العام)"؟

  • تتضمن الأسباب الشائعة لهذا الخطأ ما يلي:
  • أذونات غير صحيحة على ملفات مفتاح SSH. يجب أن يكون المفتاح الخاص قابلاً للقراءة فقط بواسطة المستخدم (600).
  • التكوين الخاطئ في ملفات تكوين SSH ( sshd_config أو ssh_config ).
  • برنامج عميل أو خادم SSH قديم قد لا يدعم بروتوكولات المصادقة الحالية.
  • جدار الحماية أو برنامج الأمان الذي يحظر منافذ أو اتصالات SSH.
  • إعداد المفتاح العام بشكل غير صحيح في ملف authorized_keys ، أو استخدام اسم مستخدم خاطئ لاتصال SSH.

كيف يمكنني التحقق من إضافة مفتاح SSH الخاص بي بشكل صحيح إلى الخادم؟

للتحقق، قم بتسجيل الدخول إلى الخادم وتحقق من ملف ~/.ssh/authorized_keys . يجب أن يكون مفتاحك العام مدرجًا هناك. يمكنك أيضًا اختبار الاتصال عن طريق محاولة إدخال SSH إلى الخادم. إذا لم يطلب كلمة مرور، فهذا يعني أنه تمت إضافة المفتاح بشكل صحيح.

لماذا من المهم تقييد الأذونات على ملفات مفاتيح SSH؟

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

هل يمكن أن تؤدي التغييرات في تكوين SSH للخادم إلى أخطاء "تم رفض الإذن"؟

نعم، يمكن أن تؤدي التغييرات في ملف تكوين SSH الخاص بالخادم ( etc/ssh/sshd_config ) إلى مثل هذه الأخطاء. على سبيل المثال، إذا تم تعيين PubkeyAuthentication على no ، فلن يقبل الخادم مصادقة المفتاح العام، مما يؤدي إلى خطأ رفض الإذن.

ماذا علي أن أفعل إذا كان عميل SSH الخاص بي قديمًا؟

إذا كان عميل SSH الخاص بك قديمًا، فقد لا يدعم طرق المصادقة الأحدث أو قد يحتوي على ثغرات أمنية غير مُصححة. من المهم تحديث عميل SSH الخاص بك إلى أحدث إصدار متاح لنظام التشغيل الخاص بك.

كيف تؤثر جدران الحماية على اتصالات SSH؟

يمكن لجدران الحماية حظر اتصالات SSH إذا تم تكوينها لتقييد الوصول إلى منفذ SSH (الافتراضي هو 22). تأكد من أن جدار الحماية الخاص بك يسمح بحركة المرور على المنفذ المستخدم لـ SSH لمنع مشكلات الاتصال.

مصادر أخرى

كيفية تثبيت Sendmail في Linux 2024 (خطوة بخطوة)

أوامر Linux الأساسية لـ DevOps (دليل)

تغليف

في هذه المقالة، اكتشفنا أسباب ظهور "الخطأ: تم رفض الإذن (المفتاح العام)" وكيفية إصلاحه. تذكر أن هذا الخطأ يشبه عدم ملاءمة المفتاح للقفل - فهذا يعني عادةً أن هناك شيئًا ما في طريقة إعداد مفاتيح SSH أو استخدامها. باتباع الخطوات التي أوضحناها، من المفترض أن تكون قادرًا على حل المشكلة والعودة إلى إجراء محادثات آمنة مع أجهزة الكمبيوتر الأخرى.