Восстановить ошибку в firewall и убрать неправильное правило
Пытался наугад добавить правила
firewall-cmd --direct --permanent --add-rule ipv4 filter FORWARD 0 -s 192.168.0.0/16 -d 52.0.0.0/8 -p udp -m udp --dport 3478 -j DROP
firewall-cmd --direct --permanent --add-rule ipv4 filter FORWARD 0 -s 192.168.0.0/16 -d 52.0.0.0/8 --dport 3478 -j DROP
firewall-cmd выдал success и дальнейшие действия выдают ошибку.
Как убрать ошибку в firewall и неправильное правило?
# firewall-cmd --reload
Error: COMMAND_FAILED: Direct: '/usr/sbin/iptables-restore -w -n'
failed: iptables-restore v1.8.7 (legacy): unknown option "--dport"
Error occurred at line: 5
Try `iptables-restore -h' or 'iptables-restore --help' for more information.
Отключил FirewallD, так как при попытке его включения - отключается SSH доступ. Надо как-то надёжнее исправить ситуацию без личного присутствия у сервера.
Ответы (1 шт):
Автор решения: eri
→ Ссылка
Во втором правиле не указан модуль который будет обрабатывать --dport
Нужно например -m tcp или -p tcp добавить.
Убрать строчку можно так:
Сначала systemctl stop firewalld.service
Потом в /etc/firewalld/direct.xml удаляешь строку <rule ...
<?xml version="1.0" encoding="utf-8"?>
<direct>
<rule ipv="ipv4" table="filter" chain="FORWARD" priority="0">-s 192.168.0.0/16 -d 52.0.0.0/8 --dport 3478 -j DROP</rule>
</direct>