Estoy configurando un servidor Gitlab ( https://about.gitlab.com/ ) dentro de una máquina virtual usando KVM en un host Ubuntu 14.04. Mi universidad nos cobra por cada dirección IP externa, por lo que no puedo usar redes en puente y hacer que cada máquina virtual hable directamente con el mundo exterior. En cambio, tengo que usar NAT y la máquina host debe manejar todo el tráfico entrante.
Para HTTP, este no es un gran problema. Configuré un proxy inverso usando Nginx y dnsmaq para dirigir el tráfico basado en el subdominio (por ejemplo, git.example.com irá al servidor de Gitlab). Pero el servidor Gitlab también necesita conexiones SSH entrantes para que git funcione. Llegué a descubrir que Nginx solo parece proporcionar proxy inverso para conexiones HTTP / S y no puedo usarlo para SSH. También es importante que el servidor Gitlab esté disponible en el puerto 22, ya que de lo contrario todos los usuarios tendrían que recibir instrucciones para usar un puerto diferente.
¿Alguien sabe si puedo usar Apache con mod_proxy para esta u otra solución? La configuración ideal dirigiría el tráfico SSH basado en el subdominio de manera que ssh example.com
vaya al host, ssh git.example.com
vaya al servidor git, etc.