216 Stimmen

ssh: Die Authentizität des Hosts 'hostname' kann nicht festgestellt werden

Wenn ich per ssh auf einen Rechner zugreife, erhalte ich manchmal diese Fehlerwarnung und werde aufgefordert, "ja" oder "nein" zu sagen. Dies verursacht einige Probleme, wenn von Skripten, die automatisch ssh zu anderen Maschinen laufen.

Warnmeldung:

The authenticity of host '<host>' can't be established.
ECDSA key fingerprint is    SHA256:TER0dEslggzS/BROmiE/s70WqcYy6bk52fs+MLTIptM.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'pc' (ECDSA) to the list of known hosts.

Gibt es eine Möglichkeit, automatisch "Ja" zu sagen oder dies zu ignorieren?

39 Stimmen

Davon würde ich abraten. Sie müssen herausfinden, warum Sie diese Fehler erhalten. Andernfalls öffnen Sie sich für einen Man-in-the-Middle-Angriff, vor dem diese Fehler Sie schützen sollen.

4 Stimmen

Dies könnte durch einen Wechsel des Servers verursacht werden, der diesen ssh-Schlüssel verwendet, oder dadurch, dass jemand zwischen Ihnen und dem Server sitzt und alles mithört, was Sie senden/empfangen.

0 Stimmen

Was könnte der Grund für diesen Fehler sein?

4voto

Kevin Nguyen Punkte 1649

Fügen Sie diese zu Ihrer /etc/ssh/ssh_config hinzu

Host *
UserKnownHostsFile=/dev/null
StrictHostKeyChecking=no

0 Stimmen

2voto

Sandeep Punkte 17036

Im Allgemeinen tritt dieses Problem auf, wenn Sie die Schlüssel sehr häufig ändern. Je nach Server kann es einige Zeit dauern, bis der neue Schlüssel, den Sie erzeugt und in den Server eingefügt haben, aktualisiert wird. Nachdem Sie also den Schlüssel generiert und in den Server eingefügt haben, warten Sie 3 bis 4 Stunden und versuchen Sie es dann erneut. Das Problem sollte gelöst sein. Das ist bei mir passiert.

1voto

Basil Punkte 765

Mit den folgenden Schritten können Sie sich beim Host authentifizieren

  1. Erzeugen Sie einen ssh-Schlüssel. Sie werden aufgefordert, ein Passwort für den Schlüssel zu erstellen

    ssh-keygen -f ~/.ssh/id_ecdsa -t ecdsa -b 521

(oben wird die empfohlene Verschlüsselungstechnik verwendet)

  1. Kopieren Sie den Schlüssel auf den entfernten Host

    ssh-copy-id -i ~/.ssh/id_ecdsa user@host

Beachten Sie, dass der Benutzer @ host ein anderer sein wird als Sie. Sie müssen das Passwort für diesen Server eingeben, nicht das Schlüsselpasswort.

  1. Sie können sich nun sicher beim Server anmelden und erhalten keine Fehlermeldung.

    ssh user@host

Alle Quellenangaben finden Sie hier: ssh-keygen

0voto

Robert A Punkte 327

Führen Sie dies auf dem Hostserver aus, es ist ein Problem der Vorwarnung

chmod -R 700 ~/.ssh

0 Stimmen

Bitten Sie die Benutzer, die Berechtigungen für authorized_keys und öffentliche Schlüssel von 644 auf 700 zu ändern? Und den privaten Schlüssel von 600 auf 700?

0voto

Lavair Punkte 828

Ich hatte den gleichen Fehler und wollte darauf aufmerksam machen, dass - wie es mir gerade passiert ist - Sie vielleicht einfach falsche Rechte haben.
Sie haben Ihre .ssh Verzeichnis entweder als reguläres oder root Benutzer und müssen daher der richtige Benutzer sein. Als dieser Fehler auftrat, war ich root aber ich konfigurierte .ssh als regelmäßiger Benutzer. Beenden von root repariert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X