¿Es posible configurar un proxy para SSH según el nombre de host?
Como:
|-> host1.domainexample1.com
|-> host2.domainexample1.com
SSH from outsite <-> Firewall <-|-> domainx.com (Default)
|-> host1.domainexample2.com
|-> host2.domainexample2.com
Además, por motivos de seguridad, me encantaría tener un puerto multiplex. Estos se pueden archivar con SSHL, lo que hace que el puerto 443 funcione para OpenVPN, HTTPS y SSH.
Idealmente, sería fantástico si NGINX pudiera soportarlo todo.
Gracias.
Respuesta1
Dado que SSH no envía SNI, Nginx no puede enrutar conexiones SSH por nombre de host.
Pero hay un truco que puede enviar el nombre de host antes que SSH. Necesitas configurarlo en tulocalmáquina.
Modificar ~/.ssh/config
:
Host *.domainexample1.com
ProxyCommand openssl s_client -quiet -servername %h -connect your.firewall.ip.com
De esta manera, puede obtener el nombre de host $ssl_preread_server_name
en Nginx. Luego puedes enrutarlos estableciendo algunas corrientes ascendentes.