Несколько веб-сервисов все работают на порту 80 с IPTABLES
Мне в основном интересно, как лучше всего использовать несколько веб-сервисов, которые все должны быть подключены к порту 80 без использования чего-то вроде nginx в качестве прокси. Следующее решение действительно работает, но мне интересно, действительно ли я делаю это правильно.
В настоящее время я делаю что-то вроде этого в моих iptables:
*filter
-A RH-Firewall-1-INPUT -m state --state NEW -d 1.1.1.1 -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -d 1.1.1.1 -m tcp -p tcp --dport 8081 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -d 1.1.1.2 -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -d 1.1.1.2 -m tcp -p tcp --dport 8082 -j ACCEPT
*nat
-A PREROUTING -d 1.1.1.1 -p tcp --dport 80 -j DNAT --to 1.1.1.1:8081
-A PREROUTING -d 1.1.1.2 -p tcp --dport 80 -j DNAT --to 1.1.1.2:8082
Я бы указывал свой DNS на 1.1.1.1 для foo.com, а bar.com - на 1.1.1.2, но оба работают на 80 внешне.
Я очень ценю любые предложения / предложения, в настоящее время я использую CentOS 5.5.
1 ответ
Почему бы вам просто не сделать так, чтобы оба веб-сервера (или как они там были) связывались с портом 80 на разных IP-адресах? (Ab) использование iptables таким способом просто сбивает с толку людей (я знаю, я работал в среде, которая делала это; это было болезненно, раздражающе, непродуктивно и ненужно).