Я хочу настроить несколько (в настоящее время два) веб-сайтов, размещенных на двух разных компьютерах, используя один внешний IP-адрес. Каждый из этих веб-сайтов будет находиться в разных поддоменах или доменах.
Есть ли способ, которым я мог бы использовать сервер Ubuntu для запроса в качестве точки входа в мою сеть (после брандмауэра) для направления трафика на соответствующую машину на основе заголовка узла некоторых средств? Я делал это в прошлом с Microsoft Proxy Server / ISA. Microsoft называет эту функцию «обратный прокси».
Большое спасибо за вашу помощь
Мэтт
Вы можете instlall Apache и настраивать его как обратный прокси:
sudo apt-get install apache2
sudo a2enmod proxy proxy_http
Создайте/etc/apache2/sites-available/site1 со следующим содержанием:
<VirtualHost *:80>
ServerAdmin webmaster@site1.net
ServerName www.site1.net
ProxyPass / http://local_site1_server/
ProxyPreserveHost on
</VirtualHost>
Затем
sudo a2ensite site1
sudo /etc/init.d/apache2 restart
Вы можете настроить обратный прокси-сервер, используя различные инструменты, такие как Apache. Вы должны помнить, что для того, чтобы за одним IP-адресом было несколько серверов, вам нужно несколько вещей: - уникальный локальный IP-адрес для каждого сервера за этим уникальным IP-адресом - способ уникального различения входящего трафика и перенаправить его соответствующим образом
Трафик может быть перенаправлен на основе различных вещей, которые может обрабатывать обратный прокси-сервер: - IP-адрес источника - Фактический порт, используемый на IP-адресе назначения (вы) - для HTTP / HTTPS, Вы также можете перенаправить на основе части имени узла заголовка HTTP [S].
Третий, вероятно, тот, который вы хотите использовать, если только вы не готовы рекламировать некоторые веб-службы, работающие на нестандартном порту.
И, конечно же, безопасность всегда является приоритетом, и ваша настройка должна быть либо проверена экспертом, либо пройти глубокое сканирование, чтобы убедиться, что оно не уязвимо для атак. Постоянно обновляйте программное обеспечение обратного прокси-сервера или брандмауэра.
Да, существует ряд веб-серверов и прокси-серверов Linux, которые могут выступать в качестве обратных прокси-серверов, отправляя запросы страниц на разные серверы на основе имени хоста в запросе http. Я бы рекомендовал взглянуть на nginx .