#CentOS 配置防火墙
CentOS 7 提供了一个内置的防火墙管理工具 firewalld
,
使用 systemctl
命令来管理 firewalld 服务:
sudo systemctl start firewalld # 启动 firewalld
sudo systemctl stop firewalld # 停止 firewalld
sudo systemctl enable firewalld # 设置开机启动
sudo systemctl disable firewalld # 禁止开机启动
启用防火墙
启用防火墙之后,就可以使用 firewall-cmd
命令来管理防火墙规则了。
例如,添加一条新的规则,允许从外部 IP 192.168.1.2
访问本地的 SSH 服务:
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.2" service name="ssh" accept'
此外,还可以使用 --permanent
选项来永久保存规则:
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.2" service name="ssh" accept' --permanent
同样的,还可以使用 firewall-cmd
命令来移除不想要的规则:
sudo firewall-cmd --zone=public --remove-rich-rule='rule family="ipv4" source address="192.168.1.2" service name="ssh" accept'
查看防火墙状态
可以使用 firewall-cmd
命令查看当前已启用的防火墙规则:
sudo firewall-cmd --list-all
该命令将会输出当前已启用的所有防火墙规则,包括默认的规则和自己添加的规则。