Der Fehler „Authentizität des Hosts kann nicht festgestellt werden“ tritt normalerweise auf, wenn du zum ersten Mal versuchst, dich über SSH (Secure Shell) mit einem Server zu verbinden. Er kann aber auch auf ein ernsthaftes Problem hinweisen. Es kann zum Beispiel sein, dass sich jemand für die Identität des Servers ausgibt.

Zum Glück gibt es verschiedene Möglichkeiten, den Fehler „Authentizität des Hosts kann nicht festgestellt werden“ zu beheben und eine reibungslose und sichere Verbindung zu gewährleisten. Du kannst zum Beispiel eine selbst verwaltete Zertifizierungsstelle (CA) einrichten, deine SSH-Software aktualisieren oder den Remote-Host verifizieren.

In diesem Beitrag werfen wir einen genaueren Blick auf den Fehler „Authentizität des Hosts kann nicht hergestellt werden“. Dann gehen wir einige häufige Ursachen durch und besprechen acht einfache Lösungen. Los geht’s!

Was ist der Fehler „Authentizität des Hosts kann nicht hergestellt werden“?

Die Fehlermeldung „Authentizität des Hosts kann nicht hergestellt werden“ ist ein häufiger Fehler, der vor allem bei der Verwendung von SSH (Secure Shell) auftritt. Normalerweise musst du die SSH-Verbindung mit einem Passwort authentifizieren.

Du kannst sie aber auch mit Public-Key-Kryptografie authentifizieren. Dazu musst du ein SSH-Schlüsselpaar erstellen, das aus einem öffentlichen und einem privaten Schlüssel besteht. Der private Schlüssel bleibt auf deinem eigenen System, während der öffentliche Schlüssel auf das System kopiert wird, mit dem du dich verbindest.

In den meisten Fällen erhältst du diese Fehlermeldung, wenn du dich das erste Mal über SSH mit dem Server verbindest. Das liegt daran, dass der SSH-Client mit dem Server nicht vertraut ist.

Wenn du dem Server vertraust, kannst du die Fehlermeldung einfach ignorieren. Dadurch wird der SSH-Schlüssel in deine Datei known_hosts aufgenommen. Dann kannst du bei jeder Verbindung den Schlüssel, den du vom Host erhältst, mit dem Schlüssel in deiner Datei known_hosts vergleichen, um die Identität des Servers zu überprüfen.

Wenn du dich schon einmal mit dem Server verbunden hast, deutet die Fehlermeldung „Authentizität des Hosts kann nicht festgestellt werden“ darauf hin, dass der Server mit einem neuen Schlüssel neu konfiguriert wurde. Diese Meldung kann aber auch auf ein Problem hinweisen.

Es könnte zum Beispiel sein, dass sich jemand für die Identität des Servers ausgibt und in der Lage ist, alle Daten abzufangen, die über die Verbindung gesendet werden. Im nächsten Abschnitt werden wir uns die Hauptursachen genauer ansehen.

Was ist die Ursache für den Fehler „Authentizität des Hosts kann nicht festgestellt werden“?

Es gibt mehrere Ursachen für den Fehler „Authentizität des Hosts kann nicht hergestellt werden“. Hier sind einige der häufigsten:

  • Der öffentliche Schlüssel des entfernten Hosts hat sich geändert. Das bedeutet normalerweise, dass der Server aktualisiert wurde, kann aber auch bedeuten, dass der Host kompromittiert wurde. In diesem Fall könnte ein Angreifer versuchen, sich als der Host auszugeben.
  • Der Client hat sich noch nie mit dem Remote-Host verbunden. Wenn das der Fall ist, kennt SSH den Server nicht und kann daher einen Fehler zurückgeben.
  • Mehrere Host-Schlüssel. Ein Server kann mehrere Host-Schlüssel haben, z. B. ECDSA und RSA. Wenn du den falschen Schlüssel verwendest, kann es sein, dass du eine Fehlermeldung erhältst.
  • Der Schlüssel des Hosts wurde gelöscht oder ist beschädigt. In diesem Fall wird eine SSHException ausgelöst, die den Fehler „Authentizität des Hosts kann nicht festgestellt werden“ verursacht.
  • Das DNS des entfernten Host ist falsch konfiguriert. Ein falsch konfiguriertes Domain Name System (DNS) kann dich mit einem Host mit einem falschen Hostschlüssel verbinden.
  • Ein Man-in-the-Middle-Angriff. Der Fehler kann ein Zeichen dafür sein, dass ein Angreifer die Verbindung zwischen dir und dem remoten Host abfängt.

Für mehr Sicherheit und Leistung ist es wichtig, dass du einen qualitativ hochwertigen Hosting-Service wählst. Mit dem Anwendungs-Hosting von Kinsta kannst du deine Projekte auf der Infrastruktur der Google Cloud Platforms betreiben:

Kinstas Anwendunngs-Hosting-Dienst
Kinsta’s Anwendungs-Hosting-Dienst

Darüber hinaus wird die Plattform von Cloudflare’s Sicherheitslösungen für Unternehmen unterstützt. Dazu gehören eine Firewall und DDoS-Schutz.

Außerdem kannst du auf kostenlose SSL-Zertifikate zugreifen oder eigene Zertifikate installieren. Und dank unseres nutzungsbasierten Preismodells kannst du deine Ressourcen ganz einfach skalieren, wenn dein Unternehmen wächst.

Wie du den Fehler „Authentizität des Hosts kann nicht festgestellt werden“ behebst (8 Methoden)

Nachdem du jetzt ein bisschen mehr über den Fehler „Authentizität des Hosts kann nicht festgestellt werden“ weißt, sehen wir uns acht Möglichkeiten an, wie du ihn beheben kannst.

1. Überprüfe deine Verbindung

Die erste Möglichkeit, den Fehler „Authentizität des Hosts kann nicht hergestellt werden“ zu lösen, besteht darin, sicherzustellen, dass die Netzwerkverbindung stabil ist. Außerdem solltest du überprüfen, ob die Verbindung durch nichts blockiert wird.

Du könntest zum Beispiel ein Antivirenprogramm einsetzen oder eine Web Application Firewall (WAF) aktiviert haben. Das kann die Verbindung stören. Daher solltest du die Software vorübergehend deaktivieren, um zu versuchen, die Fehlermeldung zu löschen.

2. Ersetze die IP-Adresse

Viele Menschen gehen fälschlicherweise davon aus, dass jeder Remote Server nur einen Schlüssel hat, obwohl ein Server mehrere Hostschlüssel haben kann. So kann es sein, dass du den RSA-Hostschlüssel verwendest, der Server dir aber einen ECDSA-Hostschlüssel präsentiert.

Deshalb siehst du eine Fehlermeldung, weil der Host-Schlüssel unterschiedlich ist. Wenn du die Option HostKeyAlgorithms explizit konfiguriert hast, beachtet SSH sie und bevorzugt die Algorithmen, die du angegeben hast.

Du kannst in deiner ~/.ssh/config-Datei und in der Datei /etc/ssh/ssh_config nachsehen, ob das der Fall ist. Wenn ja, füge deiner ~/.ssh/config-Datei einen Eintrag wie diesen hinzu:

# Update with the real IP address. Host 192.0.2.1 HostKeyAlgorithms rsa-sha2-512,rsa-sha2-256,ssh-rsa

Es ist wichtig zu beachten, dass dies die Verwendung von SHA-1-Signaturen ermöglicht. SHA-1-Signaturen gelten nicht mehr als sicher, da die Sicherheitslücken bekannt sind. Wenn du also weißt, dass der Server SHA-2-Signaturen unterstützt, kannst du den Befehl entfernen.

Es könnte auch sein, dass das System keine Hash-Einträge verwendet. Daher kann es sein, dass der Eintrag, den du explizit hinzugefügt hast, nicht korrekt ist.

In diesem Fall musst du die gleichen Konfigurationsdateien auf HashKnownHosts überprüfen und den Eintrag entsprechend anpassen. Du kannst auch ssh-keygen -F 192.0.2.1 -l (anstelle der IP-Adresse) verwenden, um zu sehen, ob es eine Übereinstimmung mit dem Eintrag gibt.

3. Die Prüfung des Host-Schlüssels überspringen

Es gibt Fälle, in denen die Fehlermeldung „Die Authentizität des Hosts kann nicht festgestellt werden“ harmlos ist. Zum Beispiel kann der Host-Schlüssel auf legitime Weise geändert worden sein, wenn der Server kürzlich aktualisiert oder neu konfiguriert wurde.

In diesem Fall kannst du die Schlüsselüberprüfung überspringen, indem du den Schlüssel an eine Datei „known_hosts“ sendest. In dieser Datei musst du den folgenden Eintrag hinzufügen:

$ ssh -o "UserKnownHostsFile=/dev/null" -o "StrictHostKeyChecking=no" user@host

Du kannst diese Optionen auch dauerhaft in ~/.ssh/config (für den aktuellen Benutzer) einrichten. Wenn du sie für alle Benutzer einrichten willst, verwende stattdessen /etc/ssh/ssh_config.

4. Erstelle deine eigene selbstverwaltete Zertifizierungsstelle (CA)

In Webbrowsern sind X509 Root-Zertifikate vorinstalliert, mit denen du den Secure Sockets Layer (SSL)-Zertifikaten von Websites vertrauen kannst, die du noch nie besucht hast. Während einige SSH-Clients X509 oder PKI unterstützen, tun andere das nicht. Das bedeutet, dass du ein SSL-Zertifikat von VeriSign nicht verwenden kannst, um die Authentizitätsabfrage zu umgehen, wenn der Client dies nicht unterstützt.

Möglicherweise kannst du die Fehlermeldung „Authentizität des Hosts kann nicht festgestellt werden“ jedoch beheben, indem du deine eigene, selbst verwaltete Zertifizierungsstelle (CA) einrichtest. Dann kannst du dich bei dem Server anmelden. Außerdem wird jeder Client mit deinem öffentlichen Schlüssel automatisch deinen Servern vertrauen.

Um loszulegen, musst du ein SSH-Schlüsselpaar erstellen. Das kannst du mit dem folgenden Eintrag tun:

ssh-keygen -f cert_signer

Dann kannst du den öffentlichen Host-Schlüssel jedes Servers wie folgt signieren:

ssh-keygen -s cert_signer -I cert_signer -h -n www.example.com -V +52w /etc/ssh/ssh_host_rsa_key.pub

Dadurch wird ein signierter öffentlicher Host-Schlüssel erzeugt:

/etc/ssh/ssh_host_rsa_key-cert.pub

Navigiere nun zu deiner Datei /etc/ssh/sshd_config. Hier kannst du das HostCertificate auf diese Datei verweisen: HostCertificate /etc/ssh/ssh_host_rsa_key-cert.pub.

Starte dann den SSH-Dienst neu. Auf dem SSH-Client musst du den folgenden Code in die Datei known_hosts einfügen:

@cert-authority *.example.com ssh-rsa AAAAB3Nz...cYwy+1Y2u/

Dieser Eintrag enthält:

  • Die Zertifizierungsstelle
  • Die Domäne (example.com)
  • Der vollständige Inhalt des öffentlichen Schlüssels

Der Fehler sollte nun verschwinden, da der öffentliche Schlüssel von cert_signer jedem Server vertraut, dessen öffentlicher Host-Schlüssel vom privaten Schlüssel von cert_signer signiert ist.

5. Upgrade der SSH-Software

Eine weitere Lösung für die Fehlermeldung „Authentizität des Hosts kann nicht festgestellt werden“ besteht darin, deine SSH-Client-Software zu aktualisieren, um sicherzustellen, dass du die neueste Version verwendest. Auf diese Weise kannst du sicher sein, dass deine Software mit dem Remote-Host kompatibel ist.

Updates enthalten oft Fehlerkorrekturen und Sicherheitspatches, die die Stabilität und Sicherheit der Verbindung verbessern. Sobald du die Software aktualisiert hast, solltest du die Verbindung ohne Fehlermeldung herstellen können.

6. Überprüfe den Remote-Host

Die Fehlermeldung „Authentizität des Hosts kann nicht hergestellt werden“ kann auch auftreten, wenn der Hostschlüssel falsch oder abgelaufen ist. Deshalb solltest du überprüfen, ob der Schlüssel des Remote-Hosts korrekt generiert wurde und noch gültig ist.

Auf diese Weise kannst du überprüfen, ob der Remote-Server online und für Verbindungen verfügbar ist. Gleichzeitig kannst du sicherstellen, dass der Schlüssel des Hosts korrekt ist. Auf diese Weise kannst du sicherstellen, dass du dich mit dem richtigen Server verbindest (und nicht mit einem bösartigen Server, der sich als Zielserver ausgibt).

Um loszulegen, überprüfe den Remote-Host mit dem Befehl „ssh-keyscan“:

ssh-keyscan example.com

Dieser ruft den öffentlichen Schlüssel des entfernten Hosts ab und zeigt ihn auf deinem Terminal an. Dann kannst du diesen Schlüssel mit dem Schlüssel vergleichen, der in deiner Datei known_hosts gespeichert ist (oder mit dem Schlüssel, den der Administrator des Servers bereitgestellt hat).

Wenn die Schlüssel übereinstimmen, ist es wahrscheinlich, dass der Remote-Host der richtige Server ist. Wenn die Schlüssel jedoch nicht übereinstimmen, solltest du das Problem dem Serveradministrator melden und die Verbindung abbrechen.

7. Entferne den alten Host-Schlüssel

Die Fehlermeldung „Authentizität des Hosts kann nicht festgestellt werden“ kann auch bedeuten, dass sich dein Hostschlüssel geändert hat. Daher kannst du den Fehler möglicherweise beheben, indem du den alten Schlüssel aus deiner Datei known_hosts entfernst.

Der Schlüssel des Fernservers kann aufgrund einer Änderung der Serverkonfiguration oder eines Sicherheitsverstoßes aktualisiert worden sein. In diesem Fall stimmt der alte Host-Schlüssel nicht mit dem neuen überein und es kommt zu einem Fehler.

Du musst nur den Eintrag für den öffentlichen Schlüssel des entfernten Hosts löschen, der in known_hosts gespeichert ist. Verwende dazu den folgenden Befehl:

ssh-keygen -R example.com

Damit wird der Eintrag aus der Datei known_hosts entfernt. Wenn du dann das nächste Mal versuchst, dich über SSH mit dem Server zu verbinden, musst du den neuen Host-Schlüssel verifizieren.

8. DNS flushen

Zu guter Letzt kann es sein, dass das Domain Name System (DNS) deines Hosts falsch konfiguriert ist. Das kann dazu führen, dass du dich mit dem falschen Schlüssel mit einem Host verbindest, was zu der Fehlermeldung „Authentizität des Hosts kann nicht festgestellt werden“ führt.

Der einfachste Weg, dieses Problem zu lösen, ist, dein DNS zu löschen. Dazu öffnest du die Windows-Eingabeaufforderung, indem du „cmd“ in die Suchleiste eingibst:

Eingabeaufforderung in Windows
Eingabeaufforderung in Windows

Gib dann den folgenden SSH-Befehl ein:

ipconfig/flushdns

Damit sollte der Fehler behoben sein und du kannst dich mit dem Server verbinden.

Zusammenfassung

Der Fehler „Authentizität des Hosts kann nicht festgestellt werden“ tritt normalerweise auf, wenn du versuchst, dich über SSH mit einem Server zu verbinden. Er kann darauf hinweisen, dass der Server neu konfiguriert wurde. Es kann aber auch bedeuten, dass der Server kompromittiert wurde.

Wenn du zum ersten Mal eine Verbindung herstellst, ist diese Fehlermeldung normal und du kannst sie einfach ignorieren. Andernfalls musst du eventuell den Host überprüfen, um sicherzustellen, dass du dich mit dem richtigen Server verbindest. Möglicherweise musst du auch den alten Host aus der Datei known_hosts löschen oder deine SSH-Software aktualisieren.

Eine weitere einfache Möglichkeit, die Sicherheit deiner Anwendung zu erhöhen, ist die Nutzung eines hochwertigen Hosts wie Kinsta. Alle unsere Tarife bieten einen erstklassigen Support, der dir bei der Behebung von Problemen hilft!