为了在CentOS 7.9上配置防火墙,只允许开放8080、100、80和3306端口,并确保其他端口被阻止,您可以使用firewalld
来管理规则。以下是实现这一需求的步骤:
步骤 1: 确保 firewalld 已启动并启用
首先,确认firewalld
服务正在运行并且设置为开机启动:
sudo systemctl start firewalld
sudo systemctl enable firewalld
步骤 2: 清除现有的端口规则(可选)
如果您想要移除所有现有的端口规则,请执行以下命令。请注意,这将移除所有自定义添加的端口规则。
sudo firewall-cmd --remove-all-ports --permanent
sudo firewall-cmd --reload
步骤 3: 添加指定端口
为每个您想开放的端口添加规则:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-port=100/tcp --permanent
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
步骤 4: 重新加载 firewalld 配置
应用更改:
sudo firewall-cmd --reload
步骤 5: 检查状态
验证新规则是否生效:
sudo firewall-cmd --list-ports
步骤 6: 禁用不必要的服务(可选)
如果您的系统上有不需要的服务正在监听端口,考虑禁用它们以提高安全性。例如,使用systemctl
命令停止并禁用不使用的网络服务。
注意事项
- 如果您之前有使用
iptables
直接管理规则,转而使用firewalld
后,可能需要清除旧的iptables
规则。 - 在生产环境中进行这些更改前,请确保您有远程访问服务器的备用方式(如通过控制台或KVM),以防万一新的防火墙规则意外地阻止了所有连接。
以上步骤将帮助您配置CentOS 7.9上的firewalld
,仅开放指定的端口。如果有任何疑问或者遇到问题,请随时提问。