Linux防火墙相关命令以及ip白名单配置
firewall防火墙基础命令
查看防火墙的服务状态
bash
systemctl status firewalld
- Active: active (running) : 高亮显示,则表示是启动状态。
- Active: inactive (dead):灰色,表示停止。
查看防火墙的状态
bash
firewall-cmd --state
服务的开启、关闭和重启
- 开启
bash
service firewalld start
- 关闭
bash
service firewalld stop
- 重启
bash
service firewalld restart
查看防火墙规则
bash
firewall-cmd --list-all
端口的查询、开放和关闭
- 查询端口80是否开放
bash
firewall-cmd --query-port=8080/tcp
- 开放80端口
bash
firewall-cmd --permanent --add-port=80/tcp
- 移除80端口
bash
firewall-cmd --permanent --remove-port=8080/tcp
重启防火墙
只要是修改了防火墙的配置,就要执行这个reload命令,配置才会生效。
bash
firewall-cmd --reload
防火墙白名单配置
- 允许192.168.0.1所有访问所有端口
bash
firewall-cmd --zone=public --add-rich-rule 'rule family="ipv4" source address="192.168.0.1" accept' --permanent
- 移除192.168.1.10所有访问所有端口
bash
firewall-cmd --zone=public --remove-rich-rule 'rule family="ipv4" source address="192.168.0.1" accept' --permanent
- 允许192.168.0.1/24(0-255)所有访问所有端口
bash
firewall-cmd --zone=public --add-rich-rule 'rule family="ipv4" source address="192.168.0.1/24" accept' --permanent
- 允许192.168.0.1所有访问TCP协议的22端口
bash
firewall-cmd --zone=public --add-rich-rule 'rule family="ipv4" source address="192.168.0.1" port port=22 protocol=tcp accept' --permanent
- 拒绝192.168.0.1所有访问TCP协议的22端口
bash
firewall-cmd --zone=public --remove-rich-rule 'rule family="ipv4" source address="192.168.0.1" port port=22 protocol=tcp reject' --permanent
部分参数介绍
- firwall-cmd:Linux提供的操作firewall的一个工具
- --add-port:添加端口
- --add-rich-rule:添加设置
- --remove-rich-rule:移除设置
- --permanent:表示永久生效