firewalld 创建ipset
创建ipset
firewall-cmd --permanent --zone=public --new-ipset=blacklist --type=hash:net
执行完命令可在/etc/firewalld/ipsets路径下看到生成的blacklist.xml文件。
添加/删除要禁止的ip或ip段
#添加ip
firewall-cmd --permanent --zone=public --ipset=blacklist --add-entry=192.168.1.60
#添加ip段
firewall-cmd --permanent --zone=public --ipset=blacklist --add-entry=192.168.1.0/24
#删除ip
firewall-cmd --permanent --zone=public --ipset=blacklist --remove-entry=xxx.x.x.xx
#删除ip段
firewall-cmd --permanent --zone=public --ipset=blacklist --remove-entry=xxx.xx.xx.0/24
封禁ipset
firewall-cmd --permanent --zone=public --add-rich-rule="rule family=ipv4 source ipset=blacklist drop"
允许访问ipset
firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" source ipset="permit_22_input" port port=22 protocol=tcp accept'
firewalld ipset维护命令
列出所有ipset
firewall-cmd --get-ipsets
列出set下所有的entry
firewall-cmd --ipset=blacklist --get-entries
打印set的路径
firewall-cmd --permanent --path-ipset=blacklist
删除set
firewall-cmd --permanent --delete-ipset=blacklist
要从 iplist.txt 文件中添加地址
firewall-cmd --permanent --ipset=blacklist --add-entries-from-file=iplist.txt
firewall-cmd --permanent --ipset=blacklist --remove-entries-from-file=iplist.txt
从iplist.txt文件中批量删除地址
firewall-cmd --permanent --ipset=blacklist --remove-entries-from-file=iplist.txt