Несколько веб-сервисов все работают на порту 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 таким способом просто сбивает с толку людей (я знаю, я работал в среде, которая делала это; это было болезненно, раздражающе, непродуктивно и ненужно).

Другие вопросы по тегам