
Мне нужно разрешить трафик протокола 50 (esp) для ipsec.
Я могу сделать:
iptables -A INPUT -p esp
iptables -A OUTPUT -p esp
Как мне сделать это с помощью firewalld?
решение1
Для этого вам понадобится использовать (довольно простое) расширенное правило.
Например:
firewall-cmd --zone=vpnendpoint --add-rich-rule="rule protocol value=esp accept"
решение2
Эта статья устарела для новых версий firewalld.
Если кто-то прочтет этот пост в то время, когда я его просматриваю (21.01.2023), то у firewalld есть определение для esp, так что вам больше не нужно выполнять эти более сложные правила...
firewall-cmd --add-protocol=esp
решение3
Я ни в коем случае не эксперт по iptables или firewalld, но мне кажется, что-то вроде этого сработает:
firewall-cmd --permanent --direct --add-rule filter INPUT -p esp -j ACCEPT
firewall-cmd --permanent --direct --add-rule filter OUTPUT -p esp -j ACCEPT
Если у вас есть зоны и т. п. настройки, вы также можете сделать это с помощью опций --zone
и --add-rich-rule
вместо --direct
.