Convenientemente SSH a los hosts internos?


1

Recientemente descubrí que con ~/.ssh/config, Puedo guardar una gran cantidad de pulsaciones de teclas y automatizar largas líneas de comando, especificando muchos valores predeterminados por host. Ahora que me di cuenta de lo poderosa que puede ser la herramienta, me pregunto si puede adaptarse a otro de mis casos de uso.

Tengo acceso a dos hosts, bastion y wikispy. Bastion tiene una IP externa, wikispy Solo es visible desde el interno. Esto significa que normalmente para conectarse a wikispy, Necesito ssh para bastion primero y luego llamar ssh wikispy. Obviamente, las cosas como el reenvío de puertos se van a complicar de esta manera y esto es algo que me gustaría evitar.

Esto lleva a una pregunta: ¿puedo hacer de alguna manera ~/.ssh/config entrada que dirá "cuando el usuario solicite el host etiquetado wikispy, en realidad conectarse a bastion, luego llame ssh wikispy "¿Sería posible trabajar de forma transparente para poder llamar a cosas como ssh wikispy -L 9999:localhost:9999 y tiene bastion reenviar el puerto de una manera que me permita acceder desde el interior de wikispy?


inf desde #hackerspace-pl@irc.freenode.net me señaló allí sshmenu.sourceforge.net/articles/transparent-mulithop.html
d33tah

Respuestas:


1

Parece que aquí es donde una combinación de ProxyCommand y nc resulta útil. Aquí hay una solución - agregue lo siguiente a ~/.ssh/config:

Host bastion
HostName EXTERNAL_IP
User d

Host wikispy
HostName INTERNAL_IP
User d
ProxyCommand ssh bastion nc -q0 %h 22

De acuerdo a Este artículo , puede obtener más de un solo nivel de anidamiento de esta manera.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.