Reverse proxy for Zimbra, mod_proxy and apache2
El escenario:
- Un servidor web con Debian 5 (Lenny), apache2, con una sólo una IP pública. Atiende múltiples virtual hosts.
- Un servidor de correo con Zimbra Collaboration Suite 6 (ZCS), con una IP privada.
- Ambos servidores forman parte de la misma red.
Antecedentes:
El hostname mail.example.com está asociado a la IP pública del servidor web.
El hostname internal-mai.example.com está asociado a la IP privada del servidor de correo.
El requerimiento:
El webmail de ZCS debe ser accesible desde Internet en http://mail.example.com
La solución:
En el servidor web
# a2enmod proxy proxy_http # vim /etc/apache2/mods-available/proxy.conf
en el archivo proxy.com reemplaza ‘Deny from all’ por ‘Allow from all’ (sin las comillas)
# vim /etc/apache2/sites-available/mail.example.com
Y agrega este contenido:
<VirtualHost *:80> ServerName mail.example.com ProxyPass / http://internal-mail.example.com/ ProxyPassReverse / http://internal-mail.example.com/ ErrorLog /var/log/apache2/mail.example.com-error.log LogLevel warn CustomLog /var/log/apache2/mail.example.com-access.log combined </VirtualHost>
Por último reinicia apache2
/etc/init.d/apache2 restart
Ahora a través de un proxy inverso (reverse proxy) todas las peticiones dirigidas a http://mail.example.com serán redirigidas internamente a http://internal-mail.example.com , el servidor de correo.
[/code]



