Seguridad de un túnel SSH

Seguridad de un túnel SSH

Tenemos un cluster (actualmente 10 máquinas) detrás de una NAT. Existe una puerta de enlace/host de salto NAT entre la red privada y la red normal de la empresa.

Los usuarios pueden sshacceder al servidor de salto y luego ingresar a cualquier otra máquina detrás del NAT.

Me gustaría proporcionar un script sencillo que les ayude a crear un túnel entre las interfaces web detrás de NAT y sus máquinas locales.

Entonces, mi primera sugerencia fue: usar un proxy de calcetines SSH y hacer un túnel de las interfaces a su host local.

Entonces mi pregunta es: si creo estos dos túneles (uno desde la computadora local de mis compañeros de trabajo hasta el host de salto y el otro desde el host de salto hasta la máquina correspondiente detrás de NAT), ¿qué tan seguro es este túnel? ?

Imagínate worker1cuál está haciendo esto:

ssh -t [email protected] -L 10001:localhost:33388 ssh -t hostxyz.behindnat.tld

Hay un puerto abierto 33388 en la máquina host de salto que está escuchando en la interfaz de bucle invertido. Si worker2simplemente inicia sesión en Jump-host y usa el puerto localhost 33388 también para la conexión ya tunelizada, no debe autenticarse nuevamente en hostxyz.behindnat.tld, ¿verdad?

Esto me parece un gran fallo de seguridad, ¿hay alguna solución mejor?

Respuesta1

Supongo que su escenario implica una sesión ssh preexistente entre jumphost y hostxyz, que estaría abierta a todos los que tengan acceso al puerto de escucha de jumphost.

Mencionaste calcetines y túneles, que técnicamente son dos cosas diferentes.

Configure el proxy de calcetines del trabajador1 de esta manera: ssh [email protected] -D 127.0.0.1:10001

Configure el navegador del trabajador1 para que use calcetines localhost:10001para navegar a través de jumphost.tld

Si desea realizar ssh directamente desde trabajador1 a hostxyz, puede hacer algo como lo siguiente.

  ssh [email protected] -L localhost:10001:hostxyz:22
  ssh user@localhost:10001

Esto es lo que hago. Utilizo un archivo .ssh/config para mantener todo organizado. Recomiendo leer lo siguiente para obtener información sobre el archivo de configuración y el túnel.https://man.openbsd.org/ssh_configMire a Michael W Lucas hablar en openssh para obtener otra buena introducción.

información relacionada