Я хочу использовать обратный прокси (nginx или apache) для моего приложения tomcat. Я хочу перенаправить порты 80,443 с обратного прокси на порты tomcat 8080, 8443. После настройки обратного прокси, какой порт должен быть открыт для входящего и исходящего трафика?
это правильно? iptables входящий: открыть порт 80, 443 iptables исходящий: открыть порт 8080,8443
С уважением
черная борода
решение1
АТКПсоединение всегда между двумя (не более) участниками. Каждый из них идентифицируется IP-адресомипорт. Таким образом, на самом деле, когда вы используете обратный прокси, у вас есть:
- Связь между клиентом
<client_IP>:<random_port>
иnginx<server_public_IP>:80
через ваш физический интерфейс. - Связи междуnginx
127.0.0.1:80
иКот127.0.0.1:8080
сквозьинтерфейс обратной связи.
Нет причин для того, чтобы брандмауэр блокировал связь на интерфейсе loopback. Поэтому вы, вероятно, захотите разрешить входящий трафик сместо назначенияпорт 80
и 443
исходящий трафик систочникпорт 80
и 443
.
Однако, как правило, исходящий трафикнетзаблокирован (политика ACCEPT
), вам просто нужны следующие правила iptables:
iptables -A INPUT -i lo -j ACCEPT # loopback interface
# don't block existing traffic
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -m multiport --dports 80,443 -m comment nginx -j ACCEPT
# Probably you want to allow ssh
iptables -A INPUT -p tcp --dport 22 -m comment SSH -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
ПС: Вы также можете запуститьКотнапрямую на портах 80
и 443
с теми же правилами брандмауэра.