Назад | Перейти на главную страницу

Zimbra 7.2 обратный прокси на произвольный внутренний сайт?

У меня установлен ZCS 7.2 с открытым исходным кодом на webmail.domain.com и mailman на mailman.domain.com/mailman.

Я хотел настроить прокси, чтобы, когда кто-то переходит на webmail.domain.com/mailman, вместо этого прокси вытаскивал содержимое mailman.domain.com/mailman.

С apache и mod_proxy я мог бы сделать что-то вроде ProxyPass / mailman https://mailman.domain.com/mailman ProxyPassReverse / почтальон https://mailman.domain.com/mailman

Можно ли (и желательно) сделать то же самое с веб-сервером zimbra, учитывая количество настроек в zimbra? По сути, это обратный прокси-сервер, который перенаправляет на произвольный внутренний веб-сайт.

Перейдите по этой ссылке: http://www.maxxer.it/2010/linux/set-apache2-to-proxy-zimbra/

Я долгое время успешно проксировал Zimbra с помощью Apache2.

Эти команды работают на серверах Debian / Ubuntu.

Сначала включите модули apache2:

a2enmod proxy
a2enmod proxy_html
a2enmod proxy_http

Убедитесь, что использование mod_proxy разрешено, изменив /etc/apache2/mods_available/proxy.conf

Allow from all

В этом случае я хочу использовать прокси SSL, поэтому перед запуском вам нужно переместить Zimbra HTTPS подальше от порта 443 (я перешел на 444). Скопируйте файлы сертификата Zimbra в каталог, доступный для apache. Я выбираю / etc / apache2 / ssl.

Чтобы разрешить автоматическое перенаправление из / в / zimbra, как при обычной установке Zimbra, добавьте следующую строку в свой основной раздел:

RedirectMatch ^/$ /zimbra/
Then, edit you apache2 config file and add:

SSLProxyEngine on
SSLCertificateFile /etc/apache2/ssl/host.crt
SSLCertificateKeyFile /etc/apache2/ssl/host.key
SSLCACertificateFile /etc/apache2/ssl/ca_bundle.crt
ProxyRequests On
ProxyPreserveHost On
ProxyVia full
<Location "/service">
  ProxyPass https://your_zimbra_ip:444/service
  ProxyPassReverse https://your_zimbra_ip:444/service
  ProxyPassReverse /
  ProxyHTMLExtended      On
  ProxyHTMLURLMap /service /service
</Location>

<Location "/zimbra">
  ProxyPass https://your_zimbra_ip:444/zimbra
  ProxyPassReverse https://your_zimbra_ip:444/zimbra
  ProxyPassReverse /
  ProxyHTMLExtended      On
  ProxyHTMLURLMap /zimbra /zimbra
</Location>

<Location "/home">
  ProxyPass https://your_zimbra_ip:444/home
  ProxyPassReverse https://your_zimbra_ip:444/home
  ProxyPassReverse /
  ProxyHTMLExtended      On
  ProxyHTMLURLMap /home /home
</Location>

# CalDAV
<Location "/principals">
  ProxyPass https://your_zimbra_ip:444/principals
  ProxyPassReverse https://your_zimbra_ip:444/principals
  ProxyPassReverse /
  ProxyHTMLExtended      On
  ProxyHTMLURLMap /principals /principals
</Location>
# DAV
<Location "/dav">
  ProxyPass https://your_zimbra_ip:444/dav
  ProxyPassReverse https://your_zimbra_ip:444/dav
  ProxyPassReverse /
  ProxyHTMLExtended      On
  ProxyHTMLURLMap /dav /dav
</Location>
#Printing and HTML interface
<Location "/h">
  ProxyPass https://your_zimbra_ip:444/h
  ProxyPassReverse https://your_zimbra_ip:444/h
  ProxyPassReverse /
  ProxyHTMLExtended      On
  ProxyHTMLURLMap /h /h
</Location>

# img for mobile interface
<Location "/img">
  ProxyPass https://your_zimbra_ip:444/img
  ProxyPassReverse https://your_zimbra_ip:444/img
  ProxyPassReverse /
  ProxyHTMLExtended      On
  ProxyHTMLURLMap /img /img
</Location>

Перезагрузите apache2, и все готово! P.S. если вы хотите использовать прокси https:

a2enmod ssl

Добавьте следующее в свой / etc / apache2 / sites-available / default-ssl

SSLProxyEngine on
ProxyRequests On
ProxyPreserveHost On
ProxyVia full