CentOS7已经内置了firewalld防火墙,用来替代之前的iptables基本操作,作为Linux的基本工具,有必要来了解一下firewalld的基本使用。
firewalld基本操作:# 启动
systemctl start firewalld
# 关闭
systemctl stop firewalld
# 状态
systemctl status firewalld
# 开机启用
systemctl enable firewalld
# 开机禁用
systemctl disable firewalld
firewall-cmd规则配置
开放端口
我们永久开放3388端口并使其生效。# 开放3388端口 --permanent 重启不会失效
firewall-cmd --zone=public --add-port=3388/tcp --permanent
# 重载使生效, 所有规则修改都需要重载生效,后面省略
firewall-cmd --reload
# 确认是否生效
firewall-cmd --zone=public --query-port=3388/tcp
查看当前系统开放的端口firewall-cmd --zone=public --list-ports
批量开放端口
打开从1000到2000的端口。firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent
关闭打开的端口
单个/批量关闭已打开的端口。# 关闭3388端口
firewall-cmd --zone=public --remove-port=3388/tcp --permanent
# 批量关闭1000-2000端口
firewall-cmd --zone=public --remove-port=1000-2000/tcp --permanent
限制IP访问
单个限制,或者限制IP段。# 拒绝111.111.0.200访问80端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="111.111.0.200" port protocol="tcp" port="80" reject"
# 拒绝111.111.0.0到111.111.0.255这个IP段访问80端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="111.111.0.0/24" port protocol="tcp" port="80" reject"
# 查看以设置的限制规则
firewall-cmd --zone=public --list-rich-rules
解除IP限制
解除IP或者IP段访问限制。# 接受111.111.0.200访问80端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="111.111.0.200" port protocol="tcp" port="80" accept"
# 111.111.0.0到111.111.0.255这个IP段访问80端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="111.111.0.0/24" port protocol="tcp" port="80" accept"
关于IP段如何设置,这里有一份16-30位网络号-掩码位数,IP总数,子网掩码查询表供参考:
16-30位网络号-掩码位数,IP总数,子网掩码查询表掩码位数IP数子网掩码C段个数/304255.255.255.2521/64
/298255.255.255.2481/32
/2816255.255.255.2401/16
/2732255.255.255.2241/8
/2664255.255.255.1921/4
/24256255.255.255.01
/23512255.255.254.02
/221024255.255.252.04
/212048255.255.248.08
/204096255.255.240.016
/198192255.255.224.032
/1816384255.255.192.064
/1732768255.255.128.0128
/1665536255.255.0.0256
Linux之常用工具防火墙firewalld配置
更多精彩,敬请关注本博微信公众号:hsu1943