在CentOS系统中,使用firewalld作为默认的防火墙管理工具,可以通过以下步骤定制个性化规则:
首先,检查firewalld服务的状态:
sudo systemctl status firewalld
如果服务未启动,可以使用以下命令启动:
sudo systemctl start firewalld
如果需要停止服务:
sudo systemctl stop firewalld
确保firewalld在系统启动时自动运行:
sudo systemctl enable firewalld
查看当前的防火墙区域和规则:
sudo firewall-cmd --list-all
可以在不永久保存的情况下添加规则:
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=80/tcp --permanent
sudo firewall-cmd --reload
永久规则会在系统重启后仍然有效。以下是一些常见的操作:
添加服务:
sudo firewall-cmd --add-service=<service_name> --permanent
例如,添加SSH服务:
sudo firewall-cmd --add-service=ssh --permanent
添加端口:
sudo firewall-cmd --add-port=<port>/<protocol> --permanent
例如,添加端口8080的TCP流量:
sudo firewall-cmd --add-port=8080/tcp --permanent
删除服务或端口:
sudo firewall-cmd --remove-service=<service_name> --permanent
sudo firewall-cmd --remove-port=<port>/<protocol> --permanent
每次修改规则后,都需要重新加载防火墙配置以使更改生效:
sudo firewall-cmd --reload
如果你有多个防火墙区域,可以查看特定区域的规则:
sudo firewall-cmd --zone=<zone_name> --list-all
你可以添加特定的IP地址或网络到防火墙规则中:
sudo firewall-cmd --permanent --zone=<zone_name> --add-source=<ip_address>/<subnet_mask>
sudo firewall-cmd --permanent --zone=<zone_name> --add-rich-rule='<rule>'
例如,添加一个IP地址到特定区域:
sudo firewall-cmd --permanent --zone=trusted --add-source=192.168.1.100
富规则允许更复杂的规则设置:
sudo firewall-cmd --list-rich-rules
通过以上步骤,你可以根据需要定制CentOS防火墙的个性化规则。记得在修改规则后重新加载防火墙配置以确保更改生效。