Может ли кто-нибудь указать мне, что нужно искать, чтобы получить маршрутизатор / шлюз / брандмауэр для моей среды домашнего офиса, чтобы иметь возможность запускать несколько, например. Веб-сервер на 80-м порту, с одним публичным ip. Я знаю, что это можно сделать с помощью Apache или IIS на сервере-компьютере. Маршрутизатор Cisco или Netgear?
Например.:
host1.example.com:80 -> 192.168.0.101
host2.example.com:80 -> 192.168.0.102
Openwrt имеет хорошую поддержку apache / squid. Я использовал apache даже для обратного прокси. Единственное, что вам нужно, это маршрутизатор, совместимый с openwrt.
Во-вторых, вам нужно настроить apache (я предлагаю для этого apache) в этом специальном методе работы с прокси. Это не так сложно, как кажется. Если хотите, я был рад скопировать пример конфигурации в этот пост.
Нет особой проблемы с потребностью ЦП в таком прокси - большинство маршрутизаторов не имеют очень сильного ЦП - потому что то, что делает такая конфигурация hw / sw, на самом деле не больше, как если бы она только пересылала пакеты. Нет таких ресурсоемких вещей, как например, например. php-интерпретация или jvm, и apache может работать со своим "рабочим" mpm в многопоточном режиме, что очень быстро.
Маршрутизаторы обычно не запускают серверы. Маршрутизаторы на базе OpenWRT и DD-Wrt могут предоставить эту функцию, если у них достаточно памяти. Это потому, что они работают под управлением ядра Linux. Возможности веб-сервера реализуются путем запуска веб-сервера или прокси, такого как Apache или Squid.
Если у вас есть несколько небольших сайтов для сервера, вы можете использовать Rasberry Pi или подобное устройство для запуска своих веб-сайтов. Если вам требуется большая емкость, небольшой сервер под управлением Linux может предоставить возможности как брандмауэра, так и веб-сервера. Я начал с переработанной настольной системы со второй сетевой картой под управлением Linux в качестве веб-сервера и брандмауэра.
Я делаю это разделение на веб-сервере. Основные веб-серверы обрабатывают доставку контента на основе заголовка Host. Веб-сервер Apache называет эту функцию VirtualHosts. Можно проксировать часть или весь трафик хоста на второй сервер.
Мультидоменный HTTPS сложнее, поскольку сертификаты связаны с именем хоста. Если домены связаны, будет работать мультидоменный или подстановочный сертификат. Некоторые серверы могут обрабатывать согласование имени хоста перед предоставлением сертификата, хотя я никогда успешно этого не реализовывал.
Вам нужно, чтобы маршрутизатор пересылал HTTP-запросы на ваш веб-сервер. Большинство маршрутизаторов предоставляют эту возможность через порт и / или как адрес DMZ.