ip6tables, блокирующий исходящие + входящие соединения

Я только что перешел на сервер с ipv6 и поэтому изменил свой скрипт межсетевого экрана. Однако изменение моего iptables-script на ip6tables, похоже, не работает. Это часть ipv6, которая не разрешает ни исходящий, ни входящий трафик на ipv6 (но должна разрешать весь исходящий трафик и разрешать только ssh, https); ipv4 работает как шарм:

#IPv6
# Setting default policies:
ip6tables -P INPUT DROP
ip6tables -P FORWARD DROP
ip6tables -P OUTPUT ACCEPT

# Exceptions to default policy
ip6tables -I INPUT -i lo -j ACCEPT
ip6tables -A INPUT -p tcp —dport 22 -j ACCEPT       # SSH
ip6tables -A INPUT -p tcp —dport 443 -j ACCEPT      # HTTPS
ip6tables -A INPUT -m state —state ESTABLISHED,RELATED -j ACCEPT

Спасибо!

Решение:

iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A FORWARD -p icmp -j ACCEPT

ip6tables -A INPUT -p icmpv6 -j ACCEPT
ip6tables -A OUTPUT -p icmpv6 -j ACCEPT
ip6tables -A FORWARD -p icmpv6 -j ACCEPT

Согласно другому ответу здесь и http://www.ietf.org/rfc/rfc4890.txt

1
задан 27 June 2016 в 12:02
1 ответ

У вас нет правила, разрешающего исходящий трафик, хотя ваши правила для портов 22 и 443 кажутся двунаправленными. Вы должны фильтровать ICMP на внешнем интерфейсе и разрешать трафик DNS на порт 53 (как UDP, так и TCP).

Я бы порекомендовал вам использовать построитель межсетевого экрана с поддержкой IPv6. Есть порты, на которых вы, вероятно, захотите заблокировать исходящий трафик, даже если вам нужна открытая политика для исходящего трафика. У хорошего разработчика брандмауэра есть несколько правил по умолчанию, которые помогут вам начать работу с разумным брандмауэром.

0
ответ дан 4 December 2019 в 06:10

Теги

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