CentOS虚拟机默认使用firewalld管理防火墙,配置步骤如下:
安装与启动
sudo yum install firewalld(CentOS 7/8)sudo systemctl start firewalld sudo systemctl enable firewalld 查看状态
sudo systemctl status firewalld # 查看服务状态 sudo firewall-cmd --state # 查看防火墙是否运行 sudo firewall-cmd --list-all # 查看当前规则 配置端口规则
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent # 永久生效 sudo firewall-cmd --reload # 重新加载规则 sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent sudo firewall-cmd --reload 配置服务规则
sudo firewall-cmd --zone=public --add-service=ssh --permanent sudo firewall-cmd --zone=public --add-service=https --permanent sudo firewall-cmd --zone=public --remove-service=http --permanent 区域管理
sudo firewall-cmd --get-default-zonesudo firewall-cmd --set-default-zone=trusted sudo firewall-cmd --permanent --zone=public --add-interface=eth0 IP访问控制
sudo firewall-cmd --permanent --add-rich-rule='rule source address="192.168.1.100" accept' sudo firewall-cmd --permanent --add-rich-rule='rule source address="10.0.0.0/24" reject' 高级操作
sudo journalctl -u firewalld -fsudo systemctl stop firewalld sudo systemctl disable firewalld 注意:所有配置需通过--permanent参数保存为永久规则,修改后需执行firewall-cmd --reload生效。
参考来源:[1,3,5,7,8,9,11,12,13,14]