Я пытаюсь настроить перенаправление порта с порта 80 на 8080 на сервере с поддержкой IPv4 и IPv6. Операционная система - Ubuntu 14.04 с ядром серии 3.2 *. Это рабочий сервер, поэтому я не хочу обновлять ядро.
Я использую UFW в качестве программного обеспечения межсетевого экрана, и я хотел бы придерживаться его также для IPv6. В настоящее время я обрабатываю перенаправление портов для IPv4 в /etc/ufw/before.rules следующим образом:
*nat
:PREROUTING ACCEPT [0:0]
-A PREROUTING -p tcp --dport -80 -j REDIRECT --to-port 8080
Это отлично работает для IPv4, но если я добавлю это в before6.rules, UFW не запустится и не будет жаловаться на проблему с запуском ufw-init.
Из поисковых запросов в Интернете, включая этот сайт, я обнаружил, что ip6tables не поддерживает NAT и REDIRECT в ядрах старше 3.8. Я также нашел решение, использующее TPROXY ip6table, но мне не удалось найти правильный синтаксис для before6.rules для ufw и, что более важно, я считаю, что TPROXY - это не то же самое, что REDIRECT (я не так хорош в iptables, поэтому я могу ошибаться, не стесняйтесь исправлять это утверждение).
Итак, мой последний вопрос:
Можно ли перенаправить порт 80 на 8080 через UFW для соединений IPv6 на коробке с ядром 3.2? И если ufw не поддерживает это, возможно ли это сделать только через ip6tables?
Заранее спасибо!
Что ж, я смог сделать эту работу с помощью другого решения. Как заявил в комментариях Сандер Стеффанн, это, вероятно, невозможно сделать через iptables и / или ufw.
Вместо этого я столкнулся с демоном xinetd, который помог мне выполнить то, что я хотел - просто перенаправить 80 на 8080 как для IPv4, так и для IPv6-соединений.