一、概述
- 用途
ipset是ip地址的集合;
firewalld使用ipset可以在一条规则中处理多个ip地址;
执行效果更高;
对ip地址集合的管理也更方便。
- 注意
与iptables所用的ipset命令的不同;
不要混合使用firewall-cmd的ipset参数与linux平台上的ipset命令,避免引起冲突;
firewalld的ipset会记录到/etc/firewalld/ipsets/目录下。
二、部署
- 安装前注意事项
为防止把自己挡住,提前关闭firewall开机自启动,并将ssh加入到信任区
systemctl disable firewalld.service
firewall-cmd --permanent --zone=trusted --add-source=0.0.0.0[填写你信任的ip]
firewall-cmd --reload
yum -y install ipset*
firewall-cmd --permanent --new-ipset=office --type=hash:ip
ll /etc/firewalld/ipsets/
firewall-cmd --permanent --ipset=office --add-entry=0.0.0.0[填写你信任的ip]
# cat /etc/firewalld/ipsets/office.xml
<?xml version="1.0" encoding="utf-8"?>
<ipset type="hash:ip">
<entry>1.1.1.1</entry>
</ipset>
firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" source ipset="office" accept'
firewall-cmd --reload
#添加协议和端口
firewall-cmd –permanent –add-rich-rule ‘rule family=”ipv4” source ipset=”office” port port=3306 protocol=tcp accept’
systemctl enable firewalld.service
三、日常维护命令
firewall-cmd --permanent --get-ipsets
firewall-cmd --permanent --ipset=office --remove-entry=x.x.x.x
firewall-cmd --permanent --delete-ipset=office
firewall-cmd --permanent --path-ipset=office
firewall-cmd --permanent --info-ipset=office
firewall-cmd --permanent --ipset=office --get-entries
四、添加运维平台或者跳板机ip
firewall-cmd --permanent --info-ipset=office
firewall-cmd --permanent --ipset=office --add-entry=1.1.1.1