خطأ تسجيل الدخول SSH إذن مرفوض

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

خطأ: رفض إذن SSH. يرجى المحاولة مرة أخرى.

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

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

هناك سببان رئيسيان يمكن أن يؤديا إلى حدوث هذا الخطأ. أحد الأسباب الأكثر شيوعًا هو تعطيل مصادقة كلمة المرور على خادم SSH.

سبب شائع آخر لهذا الخطأ هو عدم وجود إذن وصول إلى مجلد “ssh” مما يعني بشكل أساسي أن الوصول إلى ملف Authorized_keys معطل.

الحل 1: السماح بمصادقة كلمة المرور على خادم SSH

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

  1. لتجنب ذلك، انتقل إلى خادم SSH، ومن ذلك الجهاز/الخادم، افتح ملف التكوين باستخدام الأمر التالي:
    sudo nano /etc/ssh/sshd_config

    سيفتح أمر التكوين هذا في الطرفية:

    الوصول إلى ملف التكوين

  2. في ملف التكوين هذا، ابحث عن السطر “Password Authentication”، و”أزل التعليق” عن السطر عن طريق إزالة الرمز “#” الموجود في نهايته:البحث عن PasswordAuthentication وتنشيطهتم تنشيط PasswordAuthentication
  3. بعد الانتهاء من ذلك، احفظ ملف التكوين واخرج منه بالضغط على “CTRL + O” ثم “CTRL + X”. بعد ذلك، الخطوة التالية هي إعادة تشغيل خدمة SSH، وللقيام بذلك استخدم الأمر التالي:
    sudo systemctl restart sshd

    إعادة تشغيل خدمة SSH

  4. بعد الانتهاء من ذلك، اتصل بخادم SSH مرة أخرى من العميل للحصول على النتائج التالية:الاتصال بخادم SSH

لقد قمت بحل الخطأ والاتصال بخادم SSH بنجاح.

الحل 2: تمكين مصادقة المفتاح العام

في بعض الأحيان، قد يواجه المستخدمون تعديلاً أو اختلافًا في الخطأ حيث تصبح حالة الخطأ “SSH Permission Denied (public key)”، وينتج هذا الخطأ عن عدم تمكين المصادقة العامة على خادم SSH.

  1. في مثل هذه الحالات، انتقل إلى جهاز الكمبيوتر الخاص بخادم SSH، وافتح ملف التكوين باستخدام الأمر التالي:
    sudo nano /etc/ssh/sshd_config

    في ملف التكوين، قم ببساطة بتعطيل تسجيل الدخول كـ root وتمكين “PublicKeyAuthentication”:

    تعطيل PermitRootLogin وتفعيل PubkeyAuthentication

  2. بعد ذلك، تأكد من تمكين خيارات UsePAM أيضًا في ملف التكوين:تمكين UsePAM
  3. مرة أخرى، احفظ واخرج من الملف باستخدام “CTRL + O” ثم “CTRL + X”، ثم أعد تشغيل خدمة SSH باستخدام الأمر:
     sudo nano /etc/ssh/sshd_config
  4. بمجرد الانتهاء من ذلك، أعد محاولة الاتصال للحصول على النتائج التالية:
    إعادة محاولة الاتصال بخادم SSH

لقد قمت بحل خطأ رفض إذن SSH (SSH Permission Denied) (المفتاح العام).

الحل 3: السماح بالوصول إلى دليل SSH

في كثير من الأحيان، يتم تخزين المفتاح العام داخل الدليل الفرعي للمفاتيح المصرح بها (authorized_keys) داخل دليل “ssh”، وإذا لم تكن صلاحيات هذا الدليل الفرعي أو الدليل بأكمله صحيحة، فسيعود اتصال SSH في النهاية بخطأ.

  1. في مثل هذه الحالات، قم ببساطة بتغيير صلاحيات ملف “authorized_keys” باستخدام الأمر التالي:
    sudo chmod 600 ~/.ssh/authorized_keys

    سيقوم هذا الأمر بتمكين صلاحيات القراءة والكتابة للمفاتيح المصرح بها.

  2. بعد ذلك، امنح صلاحية التنفيذ للدليل الأصلي باستخدام الأمر:
    sudo chmod 700 ~/.ssh

    بعد تشغيل هذه الأوامر، حاول الاتصال بخادم SSH للحصول على النتائج التالية:

    اتصال ناجح بخادم SSH

تُظهر النتيجة أن الخطأ قد تم حله.

إصلاح إضافي لخطأ رفض إذن SSH

قد يحدث خطأ “Permission Denied” عندما تكون كلمة المرور الخاصة بخادم SSH غير صحيحة. غالبًا ما يكون السبب خطأ إملائيًا، أو في بعض الأحيان يكون الخادم قد غيّر كلمة المرور دون علم العميل. في مثل هذه الحالات، عندما يُدخل المستخدم كلمة المرور لاتصال SSH، يظهر الخطأ التالي في الطرفية:

Permission denied "كلمة مرور خاطئة"

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

أدخل كلمة المرور "خادم SSH يعمل"

خطأ “SSH Permission Denied” ليس جديدًا وينتج بشكل أساسي عن عدم تمكين مصادقة كلمة المرور، أو عدم تمكين مصادقة المفتاح العام، وأيضًا بسبب وجود أذونات خاطئة على دليل “ssh” أو “authorized_keys”. لقد أوضح هذا الدليل الحلول التي يمكن استخدامها لإصلاح الخطأ والمتابعة بالاتصال. بالإضافة إلى ذلك، يمكن أن يحدث هذا الخطأ أيضًا بسبب تغيير في كلمة المرور من قبل خادم SSH، أو بسبب خطأ إملائي. في هذه الحالة، من الأفضل الاتصال بدعم خادم SSH أو إعادة كتابة كلمة المرور مع التأكد من عدم وجود أخطاء إملائية.

Comments are closed.