سؤال كيفية إصلاح تحذير حول مفتاح مضيف ECDSA


أحاول إعداد SSH بدون كلمة مرور على خادم Ubuntu مع ssh-copy-id myuser@myserver، لكنني أتلقى الخطأ:

تحذير: يختلف مفتاح مضيف ECDSA الخاص بـ "myserver" عن المفتاح الخاص بعنوان IP "192.168.1.123"

ما الذي يسبب هذا ، وكيف يمكنني إصلاحه؟ حاولت حذف .ssh دليل على الجهاز البعيد ، وتشغيلها ssh-keygen -R "myserver" محليا ، لكن هذا لا يحل الخطأ.


218
2018-05-05 19:05


الأصل


في حالتي ، أقوم بتغيير الخادم (IP) ربط مع المجال ، ثم The ECDSA host key for server has changed. طريقي هو إزالة سلسلة ذاكرة التخزين المؤقت ذات الصلة حول المجال في ~/.ssh/known_hosts. ثم يعمل ssh. - Ninja


الأجوبة:


قم بإزالة المفتاح المخزن مؤقتًا لـ 192.168.1.123 على الجهاز المحلي:

ssh-keygen -R 192.168.1.123

318
2018-05-05 20:20



لم تنجح معي في تركيب خادم دبيان حديثًا عند العمل في المنزل. أيضا ، الجواب هو مقتضب جدا. - Chris K
/home/wf/.ssh/known_hosts محدثة. تم الاحتفاظ بالمحتويات الأصلية كـ /home/wf/.ssh/known_hosts.old "تحذير: إضافة مفتاح مضيف ECDSA نهائيًا لعنوان IP" x.x.x.x "إلى قائمة المضيفات المعروفة." يتم عرض. ثم يبدو أنه يعمل - Wolfgang Fahl
يمكنك تحديث المفتاح بدلاً من إزالته. استعمال ssh-keyscan -t ecdsa my.server.domain >> ~/.ssh/known_hosts بعد ذلك لن تحتاج إلى التحقق من مفتاح جديد عند الاتصال بالمضيف أولاً. - Alex
لمن لا ينجح في إنجاحه: لقد سجلت مضاعفات حدوث نفس عنوان IP: 1 / عنوان IP المذكور (xx.xx.xx.xx) ، domain (tomsihap.fr) ، خادم vps الخاص بالموفر العنوان (vpsxxx.ovh.net). ssh-keygen -R لكل من هذه الأعمال. - tomsihap
عملت لي ، ولكن قد يكون الارتباك من أي مضيف يجب تشغيل هذا الأمر؟ الجواب هو من الذي عرض الخطأ. السؤال الثاني والجواب أكثر وضوحا ، ولكن فقط في حالة: أي عنوان لتمرير إلى ssh-keygen -R؟ العنوان الذي يظهر في بيان الخطأ. - Russ Bateman


في حالتي ssh-keygen -R ... لم يحدد التحذير. كان لدي معلومات إضافية مثل:

Offending key for IP in /home/myuser/.ssh/known_hosts:8
Matching host key in /home/myuser/.ssh/known_hosts:24

أنا ببساطة تحريرها يدويا ~/.ssh/known_hosts وحذف السطر 8 ("المفتاح المخالف"). حاولت إعادة الاتصال ، وأضاف المضيف بشكل دائم ، وكان كل شيء جيد بعد ذلك!


42
2018-03-11 18:52



يعمل كالسحر. يمكن اصلاح هذا في خط واحد مع sed -e '8d' /home/myuser/.ssh/known_hosts، استبدال رقم السطر 8 واسم الملف مع تلك المعروضة على نظامك. - Alex P. Miller


أفعل الكثير من ssh-ing بين أجهزة الكمبيوتر الخاصة بي LAN وحسابي الاستضافة اثنين ، لذلك لقد فرزت جميع أنواع الصعاب وينتهي مع SSH ، بما في ذلك مشاكل المصادقة باستخدام ssh -v لنرى أين وما الخطأ.

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

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

عندما كانت جميع أنظمة التشغيل Ubuntu وأقوم بإعادة تثبيت نظام التشغيل الخاص بالملقم ، عند أول اتصال لـ SSH ، أحصل على هذا النوع من التحذير ، والذي أفضِّل عليه التحذير الصامت أعلاه!

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
06:ea:f1:f8:db:75:5c:0c:af:15:d7:99:2d:ef:08:2a.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending key in /home/user/.ssh/known_hosts:4
RSA host key for domain.com has changed and you have requested strict checking.
Host key verification failed.

ثم افتح ~ / .ssh / known_hosts على جهاز الكمبيوتر الذي يبدأ في تشغيل ssh ، احذف هذا السطر وأعد الاتصال وما يحدث:

chris@home ~ $ ssh work
The authenticity of host '[work]:11122 ([99.85.243.208]:11122)' can't be established.
ECDSA key fingerprint is 56:6d:13:be:fe:a0:29:ca:53:da:23:d6:1d:36:dd:c5.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[work]:11122 ([99.85.243.208]:11122)' (ECDSA) to the list of known hosts.
Linux rock 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64

هذه البقعة تقريبًا: 11122 هو رقم المنفذ الذي أقوم بتوجيه SSH منه على جدار الحماية

لقد تحققت من النسخ الاحتياطية من خادم أوبونتو سابق وتمكنت من إلغاء تثبيت ديبيان الجديد الخاص بي:

Ubuntu:                                            Debian:
# Package generated configuration file             # Package generated configuration file
# See the sshd(8) manpage for details              # See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for      # What ports, IPs and protocols we listen for
Port 22                                            Port 22
# Use these options to restrict which interface    # Use these options to restrict which interfaces
#ListenAddress ::                                  #ListenAddress ::
#ListenAddress 0.0.0.0                             #ListenAddress 0.0.0.0
Protocol 2                                         Protocol 2
# HostKeys for protocol version 2                  # HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key                  HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key                  HostKey /etc/ssh/ssh_host_dsa_key
------------------------------------------------   HostKey /etc/ssh/ssh_host_ecdsa_key
#Privilege Separation is turned on for security    #Privilege Separation is turned on for security
UsePrivilegeSeparation yes                         UsePrivilegeSeparation yes

لذا ، نعم ، على الأرجح ، بدأ المضيف باستخدام مفاتيح ecdsa مؤخرًا ، والتي تستند إلى تغييرات Ubuntu مؤخرًا ، سألقي باللوم على التحديث. تحول Ubuntu بعيداً عن نظام التشغيل linux-solid-rock الذي أعتمد عليه هو سبب تثبيت دبيان هذه المرة.

قرأت ل security.SE ف / أ على ecdsa وقمت بالفعل بإزالة هذا الخط من sshd_config بلدي الجديد ديبيان الخادم. (وركض service ssh restart)


14
2018-01-16 08:12



إجراء 1+ لمربع المقارنة جنبًا إلى جنب. هل يمكن أن تضيف عنوان URL مختلفًا؟ يعني "تبديل Ubuntu بعيدًا عن نظام التشغيل Linux القوي" يعني؟ - bgoodr
bgoodr هو رأيي ويستند فقط على إعداد ملفات RAID الخاصة بي عدة مرات خلال السنوات القليلة الماضية. : / حماقة للإجابة ، ولكن ابدأ غوغلينغ ubuntu debian server وسترى ما أقصده - Chris K
ChrisK أنت ، يا سيدي ، هي رئيسه. شكرًا جزيلاً على الإجابة التفصيلية والموجزة. - sargas


ssh-keygen -f "/root/.ssh/known_hosts" -R 192.168.1.123

هذا يجب أن يحل محل المفاتيح الموجودة تحت known_hosts.old وإنشاء واحدة جديدة. هذا الحل يعمل بالنسبة لي في نفس السيناريو


5
2018-05-14 18:16





تحدث المطالبة في كل مرة لأن عناوين IP تتغير كل الوقت عند استخدام العنونة الديناميكية. حاول استخدام IP ثابت بحيث تحتاج فقط إلى إضافة المفتاح مرة واحدة فقط.


4
2018-01-16 09:06



نقطة جيدة ، لم أفتقد حيث ذكر شخص ips ديناميكية؟ - Chris K


هل تستخدم نفس المستخدم للاتصال؟

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

إذا كنت ترغب في تسجيل الدخول على الخادم B كمستخدم بيدا من جهاز الكمبيوتر ا بدون كلمة المرور ، جرب هذا الأمر ، كل ذلك من جهاز الكمبيوتر ا:

ssh-keygen -t rsa

ينشئ هذا الأمر المفتاح ويخزن المفتاح في الملف. من فضلك غادر عبارة المرور فارغة.

ssh Beda@B mkdir -p .ssh

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

cd ~/.ssh

يقوم هذا الأمر بتغيير الدليل إلى الدليل الرئيسي للمستخدمين ./ssh.

cat id_rsa.pub | ssh Beda@B 'cat >> .ssh/authorized_keys'

يقوم هذا الأمر بطباعة الملف id_rsa.pub (مفتاحك العام) authorized_keys على الخادم.

هام: Beda هو اسم المستخدم الخاص بك على الخادم الذي تتصل به ، B هو خادم IP الخاص بك.

الآن ، يمكنك الاتصال بالخادم B بدون كلمة مرور أو عبارة مرور:

ssh Beda@B

2
2017-10-21 09:17



أو استخدم فقط ssh-copy-id لملء ملف authorized_keys مع مفتاح id_rsa.pub الخاص بك دون جميع المتاعب الإضافية. - BlakBat


الخيط هنا قد يساعد.

بشكل أساسي ، تريد إزالة مفتاحي RSA و ECDSA لذلك المضيف ، ثم استخدامهما ssh-keyscan لاعادتها الى حسابك known_hosts الملف بطريقة لا تسبب هذا التعارض. عملت بالنسبة لي عندما كان لي نفس المشكلة.


1
2017-12-20 16:47