У меня есть несколько записей iptables, которые DROP пакеты с разных IP-адресов на разных портах. Я хотел бы удалить с помощью одной команды все правила, соответствующие конкретному IP. От
man iptables
кажется возможным. Как я могу это сделать?
У меня есть несколько записей iptables, которые DROP пакеты с разных IP-адресов на разных портах. Я хотел бы удалить с помощью одной команды все правила, соответствующие конкретному IP. От
man iptables
кажется возможным. Как я могу это сделать?
Я сомневаюсь, что вы можете сделать это с помощью простой команды iptables - в зависимости от вашей версии Linux может использоваться какой-то сценарий bash frankenhack (я думаю, что iptables dump, grep, restore)
Что вы можете сделать, это вставить правило iptables в начале таблицы, чтобы разрешить с этого IP-адреса, который будет переопределять все, что будет потом. Что-то вроде
iptables -I INPUT -s X.X.X.X -j ACCEPT
iptables -I INPUT -d X.X.X.X -j ACCEPT
iptables-save|grep -v 192\.168\.1\.1 >iptables-save && iptables -F && iptables-restore </iptables.save
Возможно, вам придется использовать \, чтобы разделить символ точки
Это не будет соответствовать нотации CIDR.
Explaination:
iptables-save # сбросить новый результат в iptables-save
Адамм, создатель skynet, специально для этого сделал скрипт для своего брандмауэра iptables; Надеюсь, это должно сработать. https://github.com/Adamm00/IPSet_ASUS/commit/56f4bad86ac64bf9c74c6d588f4cd2d83265ab1a