J'ai configuré le transfert de port ssh et routeur afin que je puisse ssh dans un ordinateur sur mon réseau domestique lorsque je ne suis pas à la maison. Actuellement, j'ai deux entrées dans mon .ssh/config
fichier, une pour quand je suis sur mon réseau domestique et une pour quand je ne suis pas:
Host mycomputer
HostName 192.168.X.X
Host mycomputerathome
HostName my.no-ip.dynamic
Cela fonctionne mais je me demande si je peux me faciliter les choses. J'espérais qu'il existe un moyen de répertorier plusieurs entrées HostName de telle sorte que si la première échoue, elle revient à la seconde:
Host mycomputer
HostName 192.168.X.X
HostName my.no-ip.dynamic
Pour qu'il essaie d'abord de se connecter à un hôte sur mon réseau local et s'il n'est pas présent, il essaiera de se connecter en utilisant mon nom d'hôte dynamique sans IP. J'ai essayé d'entrer deux HostNames mais en exécutant ssh mycomputer
juste des blocs sans rien faire.
J'ai désactivé l'authentification par mot de passe en faveur des clés, donc la connexion accidentelle à un ordinateur sur le réseau local lorsque je ne suis pas sur mon réseau domestique ne devrait pas risquer que mon mot de passe aille partout où il ne devrait pas.
Est-il possible de spécifier des HostNames de secours pour essayer si le premier ne fonctionne pas?
.ssh/config
peut exécuter des scripts pour certaines propriétés. Je sais que vous pouvez le faire avec ProxyCommand. Vous pouvez faire quelque chose comme indiqué dans ce Q&R de SF - serverfault.com/questions/401233/… .