مشكلة اتصال سه مع "فشل التحقق من مفتاح المضيف..."خطأ

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

فشل التحقق من مفتاح المضيف...

"فشل التحقق من مفتاح المضيف" يعني أن المضيف تم تغيير مفتاح المضيف البعيد.

سه يخزن مفاتيح المضيف من المضيفين عن بعد في ~/.ssh/known_hosts. يمكنك إما تحرير هذا الملف النصي يدويا وإزالة المفتاح القديم (يمكنك رؤية رقم السطر في رسالة الخطأ) ، أو استخدام

ssh-keygen -R hostname

من عند صفحة الرجل:

- اسم المضيف
يزيل جميع المفاتيح التي تنتمي إلى اسم المضيف من ملف مضيفين معروفين. هذا الخيار مفيد لحذف المضيفين المجزئين .

(التي تعلمتها من الإجابة علىهل من الممكن إزالة مفتاح مضيف معين من سه& # 39; الصورة المعروفة ملف مضيفين?).

إذا كنت تعمل في بعض الحالات عن بعد / البرمجة النصية حيث كنت تفتقر إلى الوصول التفاعلي إلى موجه إلى إضافة هوستكي ، والعمل حوله مثل هذا:

$ ssh -o StrictHostKeyChecking=no user@something.example.com uptime

تحذير: وأضاف بشكل دائم 'something.example.com,10.11.12.13' (رسا) إلى قائمة المضيفين المعروفين.

أيضا في بعض الأحيان هناك حالة عندما كنت تعمل على وحدة التحكم التسلسلية ، ثم التحقق من الأمر أعلاه في وضع مطول -v سوف تظهر لك /dev/tty غير موجود ، بينما هو موجود.

ssh -v user@hostname

في الحالة أعلاه فقط إزالة /dev/tty وإنشاء ارتباط رمزي من /dev/ttyS0 إلى /dev/tty.

rm /dev/ttyln -s /dev/ttyS0 /dev/tty

كبديل ، أضف id_rsa.pub إلى الموقع البعيد ، لذلك لا تتم مطالبة كلمة المرور وتحصل على وصول تسجيل الدخول.

في حالتي ، كان هذا بسبب مشكلة أوديف-لم يكن هناك /dev/tty عقدة الجهاز. كان الحل بالنسبة لي فقط:

sudo mknod -m 666 /dev/tty c 5 0

على المحطة:

ssh -o StrictHostKeyChecking=no -i YourPublicKey.pem user@example.com uptime

ستظهر الرسالة التالية ، أو ما شابه ذلك:

Warning: Permanently added 'example.com, XX.XXX.XXX.XX' (ECDSA) to the list of known hosts. 00:47:37 up 3 min,  0 users,  load average: 0.00, 0.00, 0.00

ثم ، قم بالاتصال بـ إي سي 2 كالمعتاد:

ssh -i YourPublickey.pem user@example.com

قد تحتاج فقط إلى إدخال " نعم " عندما سه تأكيد تريد الاستمرار في الاتصال.

مثل رفع الصوت عاليا.

The authenticity of host 'xxx' can't be established.ECDSA key fingerprint is yyy.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'xxx' (ECDSA) to the list of known hosts.Enter passphrase for key '/Users/ysy/.ssh/id_rsa':

ثم أدخل كلمة المرور الخاصة بك.

يرجى الانتباه إلى "هل أنت متأكد من أنك تريد مواصلة الاتصال (نعم / لا)? نعم". يجب عليك إدخال نعم ، لا تدخل.

لديك لوضع مفتاح رسا من المضيف الهدف في المضيف المصدر /home/user/.ssh/known_hosts عن طريق تشغيل هذا على الهدف

ssh-keyscan -t rsa @targethost

حسنا ، ببساطة لأن أوبونتو الثاني يتطلب الاتصال عن طريق المفتاح وليس كلمة المرور.

أقترح عليك استخدام sudo dpkg-reconfigure openssh-server على جهاز الكمبيوتر الخاص بك ، ومن ثم يجب أن تعمل بشكل صحيح. فإنه سيتم إعادة تعيين التكوين ل بينسه ويجب أن يعود إلى مصادقة كلمة المرور الافتراضية.

الاحتمال الثاني هو أن هناك بالفعل مفتاح لأوبونتو الأخرى الخاصة بك في جهاز الكمبيوتر الخاص بك ، وأنه تغير وبالتالي لم يتم التعرف عليها بعد الآن. في هذه الحالة ، سيتعين عليك تحرير الملف .ssh/authorized_keys لإزالة خط إشكالية تحديد أوبونتو الخاص بك.

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

ssh-keygen -f "/home/USER/.ssh/known_hosts" -R HOSTNAME

لقد نظرت للتو إلى رسالة الخطأ التي ألقتها في وجهي وقالت لتشغيل هذا الأمر من أجل إزالته من قائمة المضيفين. بعد ذلك فعلت ما يلي:

ssh-copy-id HOSTNAME

من تابعت المطالبات من هناك حتى كنت قادرا على سه في الخادم.

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

sed -i '5d' ~/.ssh/known_hosts

إشعار: يجب أن تكون الجذر أو لديك امتياز لسودو.

د use يمكنك استخدام أسماء المضيف أو عناوين بروتوكول الإنترنت?

ليست مماثلة ولكن حصلت على نفس الخطأ ولكن بسبب مشكلة مختلفة: ubuntu - Managing multiple servers behind a firewall with SSH reverse tunnel - Server Fault

هذه ليست قضية أوبونتو محددة. يمكن أن يحدث مع أي ’ سه ’ من سطر الأوامر.