Ich habe die Weiterleitung von SSH- und Router-Ports eingerichtet, damit ich SSH in einen Computer in meinem Heimnetzwerk einbinden kann, wenn ich nicht zu Hause bin. Derzeit habe ich zwei Einträge in meiner .ssh/config
Datei, einen für den Fall, dass ich in meinem Heimnetzwerk bin, und einen für den Fall, dass ich nicht in meinem Heimnetzwerk bin:
Host mycomputer
HostName 192.168.X.X
Host mycomputerathome
HostName my.no-ip.dynamic
Das funktioniert, aber ich frage mich, ob ich es mir leichter machen kann. Ich hatte gehofft, dass es eine Möglichkeit gibt, mehrere HostName-Einträge so aufzulisten, dass wenn der erste fehlschlägt, er auf den zweiten zurückfällt:
Host mycomputer
HostName 192.168.X.X
HostName my.no-ip.dynamic
Damit zuerst versucht wird, eine Verbindung zu einem Host in meinem lokalen Netzwerk herzustellen, und wenn dies nicht vorhanden ist, wird versucht, eine Verbindung mit meinem dynamischen Hostnamen ohne IP-Adresse herzustellen. Ich habe versucht, zwei Hostnamen einzugeben, aber ssh mycomputer
nur Blöcke ausgeführt, die nichts bewirken .
Ich habe die Kennwortauthentifizierung zugunsten von Schlüsseln deaktiviert, sodass eine versehentliche Verbindung mit einem Computer im lokalen Netzwerk, wenn ich nicht in meinem Heimnetzwerk bin, nicht riskieren sollte, dass mein Kennwort irgendwohin geht, wo es nicht sein sollte.
Ist es möglich, Fallback-Hostnamen anzugeben, um zu versuchen, ob der erste nicht funktioniert?
.ssh/config
kann das Skripte für bestimmte Eigenschaften ausführen. Ich weiß, dass Sie mit ProxyCommand können. Sie können etwas tun, wie in diesen Fragen und Antworten von SF - serverfault.com/questions/401233/… gezeigt .