CentOS 防火墙安全性提升指南
一 基础加固与最小暴露面
sudo systemctl start firewalld && sudo systemctl enable firewalld;仅开放必需服务,例如 HTTP/HTTPS/SSH,避免暴露数据库、管理端口到公网。firewall-cmd --reload 使配置生效,并定期用 firewall-cmd --list-all 与 firewall-cmd --list-all-zones 核查规则是否按预期加载。二 精细化访问控制
firewall-cmd --permanent --add-service=http --zone=public,便于维护与可读性。firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="203.0.113.10" port port="22" protocol="tcp" accept' && firewall-cmd --reload。firewall-cmd --permanent --zone=public --remove-service=dhcpv6-client && firewall-cmd --reload。三 抗暴力破解与基础抗D策略
firewall-cmd --permanent --zone=public --add-rich-rule='rule service name="ssh" limit value="3/min" accept' && firewall-cmd --reload。四 纵深防御与运维审计
sudo setenforce 1,并在 /etc/selinux/config 中持久化,减少被攻破后的横向移动空间。五 常用命令清单
sudo systemctl start|enable firewalldsystemctl status firewalldfirewall-cmd --list-all、firewall-cmd --list-all-zonesfirewall-cmd --permanent --zone=public --add-service=http(HTTPS 为 https,SSH 为 ssh)firewall-cmd --permanent --zone=public --add-port=3306/tcpfirewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="x.x.x.x" port port="22" protocol="tcp" accept'firewall-cmd --reloadfirewall-cmd --list-all > fw-$(date +%F).bak;必要时按备份逐条恢复