У меня сейчас есть pfSense
брандмауэр, который перенаправляет порт 80 и 443 на внутренний Apache, который действует как обратный прокси для нескольких поддоменов нашей компании.
поскольку pfSense
предоставляет обратный прокси через Squid3, я бы хотел избавиться от сервера Apache и маршрутизировать все с помощью pfSense
вместо.
Моя текущая конфигурация Apache выглядит примерно так:
<VirtualHost *:80 *:443>
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
ServerName trac.mycompany.com
SSLProxyEngine on
SetEnv force-proxy-request-1.0 1
SetEnv proxy-nokeepalive 1
ProxyPreserveHost On
ProxyPass / https://trac.mycompany.com/
ProxyPassReverse / https://trac.mycompany.com/
ProxyVia on
</VirtualHost>
<VirtualHost *:80 *:443>
ServerName svn.mycompany.com
ProxyPass / http://svn.mycompany.com/
ProxyPassReverse / http://svn.mycompany.com/
ProxyVia On
</VirtualHost>
Как видите, оба варианта довольно просты. Я знаю, что использование виртуальных хостов с HTTPS и одним внешним IP-адресом ограничивает меня использовать самоподписанные сертификаты, и я знаю о рисках, но в данный момент мне все равно (я просто хочу, чтобы были отправлены имена пользователей и пароль. зашифрованный).
На pfSense
, Я настроил его следующим образом:
Обратный прокси включен. Обе trac
и svn
работать на том же локальном сервере (192.168.0.26). Проблема в том, что когда прокси-сервер попадает на внутренний сервер, локальный сервер Apache всегда пытается обслуживать trac
поддомен, вместо сопоставления по имени.
Могу ли я этого добиться с помощью модуля обратного прокси в pfSense
? Я упустил что-то очевидное?
я знаю, что это запоздалый ответ, но лучше поздно, чем никогда :) вы, вероятно, уже разобрались, но если вы не ... создайте вторичный IP-адрес на локальном сервере, работающем с той же сетевой картой, и запустите каждый веб-сайт на отдельном IP .
Я не думал, что вы когда-нибудь сможете обслуживать 2 https-сайта с одного IP-адреса и одного порта, так как заголовки теряются при шифровании, и вы всегда попадаете на основной сайт по умолчанию. 2 сайта http - это нормально, но 2 сайта https нуждаются в разных портах или разных IP-адресах.