Heim >Backend-Entwicklung >Python-Tutorial >Paramiko-Ausnahme „Unbekannter Server': Wie kann man sie beheben?

Paramiko-Ausnahme „Unbekannter Server': Wie kann man sie beheben?

Susan Sarandon
Susan SarandonOriginal
2024-12-03 10:47:28309Durchsuche

Paramiko

Paramiko „Unbekannter Server“-Ausnahme: Fehlerbehebung und Lösung

Paramiko, eine beliebte Python-Bibliothek, bietet eine Schnittstelle für sichere SSH-Kommunikation. Beim Versuch, über Paramiko eine Verbindung zu einem Server herzustellen, kann es jedoch vorkommen, dass Benutzer auf die Ausnahme „Unbekannter Server“ stoßen. Diese Ausnahme tritt auf, wenn der Hostschlüssel des Servers dem Client nicht bekannt ist.

Verstehen des Problems

Die Ausnahme „Unbekannter Server“ tritt auf, wenn der SSH-Client versucht, eine Verbindung herzustellen an einen Server, dessen Hostschlüssel weder im System noch in lokalen HostKeys-Objekten gespeichert ist. Standardmäßig verwendet Paramiko eine Richtlinie, die alle unbekannten Server ablehnt (RejectPolicy).

Lösung

Um dieses Problem zu beheben, kann man die Richtlinie ändern, die beim Herstellen einer Verbindung mit unbekannten Servern verwendet wird Server. So geht's:

  1. Paramiko importieren:

    import paramiko
  2. Erstellen Sie ein SSH Client:

    client = paramiko.SSHClient()
  3. AutoAddPolicy festlegen:

    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  4. Mit dem verbinden Server:

    client.connect('127.0.0.1', username=username, password=password)

Von Mithilfe von AutoAddPolicy fügt der SSH-Client den Hostschlüssel automatisch seiner Liste bekannter Hosts hinzu. Dadurch kann die Verbindung auch dann erfolgreich hergestellt werden, wenn der Hostschlüssel des Servers zuvor nicht bekannt ist.

Zusätzliche Hinweise

  • Nach dem Herstellen einer Verbindung wird empfohlen, den zu speichern Hostschlüssel zur späteren Bezugnahme in eine Datei kopieren.
  • Sie können Hostschlüssel auch mit der Funktion „load_host_keys()“ aus einer Datei laden. Methode.

Durch die Implementierung dieser Schritte können Benutzer die Ausnahme „Unbekannter Server“ überwinden und mithilfe von Paramiko erfolgreiche SSH-Verbindungen herstellen.

Das obige ist der detaillierte Inhalt vonParamiko-Ausnahme „Unbekannter Server': Wie kann man sie beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn