Wie gehe ich mit der Überprüfung des SSH-Hostschlüssels bei zwei verschiedenen Hosts unter derselben (aber sich ändernden) IP-Adresse um?[geschlossen]

StackOverflow https://stackoverflow.com/questions/733753

Frage

Ich habe 2 SSH-Server hinter einer NAT-Firewall an einem Standort, der seine WAN-IP jeden Tag ändert.Sie haben zu einem bestimmten Zeitpunkt immer die gleiche WAN-IP-Adresse, jedoch an unterschiedlichen Ports.

Ich verbinde mich folgendermaßen mit Server A:

ssh -p 22001 karl@x1.example.com

und an Server B:

ssh -p 22002 karl@x2.example.com

Ich erhalte also zwei verschiedene Host-Schlüssel für dieselbe IP und außerdem, wenn sich die IP ändert, sogar eine andere IP für denselben Host.

Ich muss immer wieder den anderen Schlüssel oder den alten Schlüssel (im Falle einer IP-Änderung) in der Datei „known_hosts“ löschen.

Ich zögere, die Schlüsselüberprüfung auszuschalten, da dies weniger sicher wäre.Aber es ist auch unsicher, ständig eine Warnung zu bekommen (weil ich solche Warnungen dann ständig ignoriere).Gibt es eine bessere Lösung?

Das hängt mit meiner alten Frage hier zusammen, ist aber nicht dasselbe:

Warnmeldung zur SSH-Anmeldung auf einem Server mit 2 DNS-Namen

War es hilfreich?

Lösung

Ich denke, das wird funktionieren:

Ein ... kreieren config Datei in Ihrem .ssh Verzeichnis wie folgt:

Host server1
  Hostname x1.example.com
  HostKeyAlias server1
  CheckHostIP no
  Port 22001
  User karl

Host server2
  Hostname x2.example.com
  HostKeyAlias server2
  CheckHostIP no
  Port 22002
  User karl

Erläuterung unten (von man ssh_config)

CheckHostIP

Wenn dieses Flag auf "Ja" gesetzt ist, überprüft SSH (1) die Host -IP -Adresse in der Datei bekannt_hosts.Auf diese Weise kann SSH erkennen, ob sich ein Host -Schlüssel aufgrund von DNS -Spoofing geändert hat.Wenn die Option auf "Nein" eingestellt ist, wird der Scheck nicht ausgeführt.Der Standard ist "Ja".

HostKeyAlias

Gibt einen Alias ​​an, der anstelle des realen Hostnamens verwendet werden sollte, wenn Sie nachschlagen oder den Host -Schlüssel in den Host -Schlüsseldatenbankdateien speichern.Diese Option ist nützlich für Tunneling SSH -Verbindungen oder für mehrere Server, die auf einem einzelnen Host ausgeführt werden.

Der Username Und Port line vermeidet, dass Sie diese Optionen auch in der Befehlszeile angeben müssen, sodass Sie einfach Folgendes verwenden können:

% ssh server1
% ssh server2
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top