He configurado el reenvío de puertos ssh y de enrutador para poder ssh en una computadora en mi red doméstica cuando no estoy en casa. Actualmente tengo dos entradas en mi .ssh/configarchivo, una para cuando estoy en mi red doméstica y otra para cuando no estoy:
Host mycomputer
HostName 192.168.X.X
Host mycomputerathome
HostName my.no-ip.dynamic
Esto funciona, pero me pregunto si puedo facilitarme las cosas. Esperaba que haya una manera de enumerar múltiples entradas de HostName de modo que si el primero falla, vuelva al segundo:
Host mycomputer
HostName 192.168.X.X
HostName my.no-ip.dynamic
Por lo tanto, primero intentará conectarse a un host en mi red local y, si no está presente, intentará conectarse utilizando mi nombre de host dinámico sin IP. Intenté ingresar dos HostNames, pero ejecuté ssh mycomputersolo bloques sin hacer nada.
Desactivé la autenticación de contraseña a favor de las claves, por lo que conectarme accidentalmente a una computadora en la red local cuando no estoy en mi red doméstica no debería arriesgar mi contraseña a ningún otro lugar.
¿Es posible especificar HostNames alternativo para probar si el primero no funciona?
.ssh/configpuede ejecutar scripts para ciertas propiedades. Sé que puedes con ProxyCommand. Puede hacer algo como se muestra en estas preguntas y respuestas de SF - serverfault.com/questions/401233/… .