@oleggg1

Как в iptables закрыть все порты и сделать перенаправление с 8080 порта на 80 порт?

Помогите, пожалуйста. Нужно через iptables закрыть все порты кроме порта 8080 и сделать перенаправление с 8080 порта на порт 80.
Вот так не работает:
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
iptables -P INPUT DROP
  • Вопрос задан
  • 1992 просмотра
Пригласить эксперта
Ответы на вопрос 3
@mureevms
Судя по всему, сам клиент локальный. Не работает, потому что пакеты с localhost не попадают в nat таблицу.
Чтоб работало на локалхосте надо добавить это правило:
iptables -t nat -A OUTPUT -p tcp -s 127.0.0.1 --dport 8080 -j REDIRECT --to-ports 80
Ответ написан
@lukashin
Не хватает
iptables -t nat -A POSTROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80
Ответ написан
@vshvydky
зачем сложности с прероутингом и тп?
я так понимаю, что есть прокси форвардинг на нгинкс типо 80 -> localhost:8080
цепочка инпут, политика дроп
аксептим с флагами эстаблишет релейтед
аксептим на 80 порт кого хотим

оутпут разрешено все (получается что все локальные службы, которые будут инициировать коннект будут работать)
И все заработает.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы