Alojamiento VPS DIY para múltiples dominios (3) en una única IP estática

Alojamiento VPS DIY para múltiples dominios (3) en una única IP estática

y gracias por tu aporte.

Lo que quiero hacer: Quiero alojar algunas aplicaciones web y de correo electrónico, por ejemplo, para mí y dos clientes en una dirección IP estática, principalmente para aprender y posiblemente considerar algún alojamiento limitado para un par de clientes a largo plazo con un pequeño número de usuarios.

Lo que tengo Estoy funcionando en XenServer Xeon con 32 GB de RAM, con una conexión de 100 MB pero con una única IP estática.

Lo que estoy tratando de descubrir Quiero experimentar configurando algunas máquinas virtuales en el servidor xenserver, ejecutando IBM Lotus Domino (esto usa varios puertos) 80, 25, 1352, por ejemplo. Entonces necesito descubrir cómo reenviar el tráfico al servidor apropiado según el nombre de dominio. Así por ejemplo

IP WAN externa única -> dominio1.com:80 -> VM1:80 IP WAN externa única -> dominio1.com:1352 -> VM1:1352

IP WAN externa única -> domain2.com:80 -> VM2:80 IP WAN externa única -> domain2.com:1352 -> VM2:1352

IP WAN externa única -> dominio3.com:80 -> VM3:80 (Ejecutando Cpanel para alojamiento web)

Entiendo que un proxy inverso puede ser la solución. NGINX o POUND, pero parece que es sólo para aplicaciones web, no para otras aplicaciones. También me topé con Citrix Netscaler y quedé completamente confundido. También vi usar iptables de DD-WRT o algo así. Simplemente debe haber una manera de hacer esto. Agradecería cualquier aportación que alguien tenga. Seguramente alguien está haciendo esto en alguna parte.

Estoy abierto a enrutadores, personalizados o no, o dispositivos virtuales o no, pero me encantaría algo basado en software como un dispositivo virtual o algo así. ¿Algunas ideas?

Gracias

shane

Respuesta1

Entonces necesito descubrir cómo reenviar el tráfico al servidor apropiado según el nombre de dominio.

Esto no es posible a menos que exista una especificación de la capa de aplicación (por ejemplo, el encabezado Host de HTTP). Sin esa IP no se sabe nada de DNS, por lo que no se puede reenviar basándose en ella.

Vea esta pregunta sustancialmente similar del otro día:¿Puedo usar DNS con direcciones NAT privadas?

Respuesta2

En primer lugar, recomendamos configurar IPv6 y enrutar un /60 a cada VM. De esa manera, los usuarios que tienen IPv6 no experimentarán ninguno de los problemas relacionados con el proxy, porque su tráfico se enrutará directamente al host deseado.

Además, tener IPv6 en las máquinas virtuales le brinda una dirección para enviar el tráfico, lo que en algunas configuraciones será más fácil, porque el proxy puede confiar en DNS para encontrar el backend.

Un proxy inverso es el camino a seguir para el tráfico HTTP. Un proxy inverso también puede manejar el tráfico HTTPS siempre que tanto el cliente como el proxy admitan SNI. Esto funcionará incluso si el servidor web no es compatible con SNI. Esto no tiene por qué limitarse a los puertos 80 y 443. El proxy podría configurarse para recibir tráfico en puertos arbitrarios.

SMTP se puede manejar instalando una retransmisión de correo en la dirección IPv4. Se debe tener cuidado para garantizar que no se abuse de él para transmitir spam. Recomiendo configurar una regla de firewall para que el repetidor no pueda conectarse a servidores SMTP externos. El firewall puede permitir conexiones SMTP desde el exterior al relé, desde el relé a través de IPv6 a las máquinas virtuales, y desde las máquinas virtuales al mundo exterior como IPv6 o IPv4, que obviamente tiene que pasar por una NAT.

En principio, se puede admitir DNS, pero no sé si alguien lo ha implementado todavía.

Si tiene otros protocolos específicos en mente, estaré encantado de ofrecerle sugerencias sobre cómo podrían respaldarse. No conozco ningún otro protocolo que envíe el nombre de dominio con suficiente antelación para que dicha interfaz se envíe en función del nombre de dominio, pero me gustaría conocer otros.

he implementadounoYo mismo uso dicha interfaz, pero por ahora solo HTTP y HTTPS, que son, con diferencia, los protocolos más fáciles de admitir.

información relacionada