
Cómo configurar Apache para mejorar la seguridad de un sitio Zope, utilizando mod_proxy y VirtualHostMonster.
Tenemos una máquina con una única IP pública que hace de fachada de una red con direccionamiento privado. Esta máquina tiene configurado un port-forward de los puertos 80 y 443 hacia una de las máquinas de la red interna (que llamaremos ‘www’). Esa máquina se encarga de gestionar todo lo referente a web que hay en la red local. Hay una tercera máquina (llamada ‘zope’) que tiene varios sitios Plone. Algo como esto:
INET-----router--+--www 80,443
|
+--zope 8081
En realidad este tinglado es “virtual”, porque no son máquinas reales sino VServers, pero a efectos de configuración y mantenimiento es igual que si estuviera montado con máquinas reales.
La configuración del iptables de router es:
*nat -A PREROUTING -m multiport -p tcp --dports 80,443 -j DNAT --to-destination zope -A POSTROUTING -o eth0 -j MASQUERADE
Lo único que hay que hacer en el Zope es instalar el producto VirtualHostMonster: en el raíz. Tienes que indicar un ID pero puedes poner cualquier cosa, por ejemplo “VHM”. Este producto permite indicarle a Zope cómo son las URL que quieres que genere.
En www instalamos un Apache nuevecito y hacemos un VirtualHost conforme a la receta Crear un sitio web SSL con apache2.
Instala el módulo proxy con:
# a2enmod proxy
Sobre el mismo fichero que has hecho para el sitio SSL, haz las siguientes modificaciones:
<VirtualHost *:443>
...
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
# Zope site management
<Location /zope>
ProxyPass http://zope:8081/VirtualHostBase/https/IP_PUBLICA:443//VirtualHostRoot/_vh_zope
ProxyPassReverse http://zope:8081/VirtualHostBase/https/IP_PUBLICA:443//VirtualHostRoot/_vh_zope
</Location>
<Location /miSitio>
ProxyPass http://zope:8081/VirtualHostBase/https/IP_PUBLICA/xm/VirtualHostRoot/_vh_miSitio
ProxyPassReverse http://zope:8081/VirtualHostBase/https/IP_PUBLICA:443/xm/VirtualHostRoot/_vh_miSitio
</Location>
</VirtualHost>Se trata de un Reverse Proxy, es decir, no se puede usar como un proxy web al uso, sino simplemente como un intermediario transparente hacia otro site.
En este fichero, se definen dos redirecciones: la primera es para el interfaz de administración de Zope, y la segunda es un sitio Plone llamado “miSitio”.
No olvides recargar la nueva configuración de Apache.
# /etc/init.d/apache2 reload
Comentarios recientes
hace 17 horas 24 mins
hace 20 horas 59 mins
hace 2 días 19 horas
hace 2 días 19 horas
hace 3 días 12 horas
hace 3 días 18 horas
hace 4 días 24 mins
hace 4 días 35 mins
hace 4 días 3 horas
hace 5 días 17 horas