Flujo NGINX SSH basado en el nombre de host

Flujo NGINX SSH basado en el nombre de host

¿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_nameen Nginx. Luego puedes enrutarlos estableciendo algunas corrientes ascendentes.

información relacionada