У меня есть очень длинный список 1500+ IPS в файле, скажем, /etc/blocklist.ips, каждый IP-адрес в строке файла. Как я могу DROP для каждого ip в файле с firewalld от centos 7? Также я искал, что в папке / firewald есть файлы .xml, так что это означает, что я должен создать свой черный список в файле .xml?
то, что Firewalld остановлен, не означает, что правила, созданные с помощью firewalld, не работают с iptables, верно?
Очистка iptables также удалит все на firewalld?
Лучший способ управлять правилами брандмауэра с большим количеством IP-адресов остается с ipset
.
Затем создайте набор ip-адресов:
ipset create blacklist hash:ip hashsize 4096
и добавьте каждый из ip-адресов, которые нужно заблокировать:
ipset add blacklist 192.168.0.5
ipset add blacklist 192.168.0.100
ipset add blacklist 192.168.0.220
AFAIK firewalld еще не имеет API-метода для добавления необходимого правила iptables, которое работает с модулем сопоставления, поэтому вы собираетесь сделать что-то немного уродливое, как это, я думаю:
firewall-cmd --direct --add-rule ipv4 filter INPUT 0 -m set --match-set blacklist src -j DROP
вместо обычного iptables -I INPUT -m set --match-set blacklist src -j DROP
вы бы обошлись без firewalld.