Восстановить ошибку в firewall и убрать неправильное правило

Рейтинг: 0Ответов: 1Опубликовано: 11.06.2023

Пытался наугад добавить правила

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 доступ. Надо как-то надёжнее исправить ситуацию без личного присутствия у сервера.

Ответы

▲ 0Принят

Во втором правиле не указан модуль который будет обрабатывать --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>