Utilizar ProxyCommand
Ver man ssh_config
. Recomiendo hacer uso de ProxyCommand
. Tomemos su escenario original:
- Computadora A (su computadora)
- Computadora B (un nombre de host proxy)
- Computadora C (solo accesible a través de SSH desde la Computadora B)
Edite ~/.ssh/config
con los siguientes contenidos.
Host computerb
HostName <hostname or IP of Computer B>
Host computerc 192.168.35.*
ProxyCommand ssh computerb nc -w 180 %h %p
Ahora podrá llegar de manera transparente a la computadora C. ej.
ssh computerc
Ventajas de este método
Más seguro
Solo necesita su clave privada para estar en la computadora A (su computadora). El nc
comando actuará como un proxy en el que SSH cifrará el tráfico. Esto incluye autenticación. Es una muy mala idea distribuir su clave privada a varios servidores (ya que cualquier servidor comprometido con su clave privada en última instancia compromete su clave privada).
Partidos Múltiples destinos
Se pueden combinar varias computadoras de destino usando Host
. Una sola computadora o cualquier computadora dentro de una red específica (por ejemplo, 192.168.35.0/24
en el ejemplo anterior) a proxy a través de la computadora B. También sirve como un alias.
ssh 192.168.35.27
En el ejemplo anterior, enviará un proxy a través de la computadora B para llegar a la dirección IP.
Proxies en cadena de margaritas
Con este método, puede conectar en cadena tantos servidores proxy automáticos como sea necesario. por ejemplo, puede agregar una computadora D a la que solo se puede acceder desde la computadora C y funcionará de manera transparente.
Host computerd
ProxyCommand ssh computerc nc -w 180 %h %p
ssh computerd
automáticamente proxy a través de la computadora C y la computadora B en los ssh_config
ejemplos anteriores .