Cómo usar un bastión SSH solo fuera de casa con ProxyJump

Fuentes: Using a SSH bastion, but only when I'm touching grass

Configurar un servidor bastión (jump host) para acceder a equipos del homelab desde fuera de la red local resulta muy útil, pero presenta un problema habitual: la conexión pasa por el bastión aunque ya se esté en casa, lo que añade latencia innecesaria. Este artículo explica una solución nativa de OpenSSH basada en dos directivas de ssh_config: Match y ProxyJump. Mediante Match host *.m.example.ca exec "! getent hosts %h >/dev/null", la regla solo se aplica si getent no resuelve el nombre del host, es decir, cuando el equipo no se encuentra en la red doméstica. En tal caso, ProxyJump redirige la conexión a través del bastión. Se muestra también una variante para dominios .local resueltos por mDNS, aunque el autor advierte de que, en ese escenario, ForwardAgent puede ser arriesgado: un atacante que suplantase target.local en la red local obtendría acceso a toda la cadena de claves SSH. Por eso, para .local se recomienda pasar siempre por el bastión sin usar Match.