CentOS防火墙安全策略制定指南
CentOS系统中,firewalld是默认的防火墙管理工具(CentOS 7及以上版本),其通过“区域(Zone)”概念组织规则,实现分级流量控制。以下是制定安全策略的具体步骤:
确保firewalld已安装并运行:
# 安装firewalld(若未安装)
sudo yum install firewalld -y
# 启动服务并设置开机自启
sudo systemctl start firewalld
sudo systemctl enable firewalld
验证状态:
sudo firewall-cmd --state # 应返回“running”
firewalld预定义了public(公共)、home(家庭)、work(工作)等区域,其中public为默认区域(适用于对外提供服务的主机)。核心原则:默认拒绝所有未明确允许的流量。
sudo firewall-cmd --get-default-zone
public,更严格):sudo firewall-cmd --set-default-zone=public
public):sudo firewall-cmd --zone=public --add-interface=eth0 --permanent
sudo firewall-cmd --reload
仅开放业务必需的端口,避免不必要的服务暴露:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=22/tcp --permanent
http、https、ssh):sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --zone=public --remove-port=9001/tcp --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --zone=public --list-ports # 查看开放端口
sudo firewall-cmd --zone=public --list-services # 查看开放服务
富规则支持基于IP地址、协议、时间段、用户等条件的复杂过滤,提升安全性:
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="22" accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.2.0/24" port protocol="tcp" port="80" reject'
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="80" accept time start="09:00" end="18:00"'
sudo firewall-cmd --reload
启用日志记录可追踪防火墙活动,便于排查异常:
sudo firewall-cmd --permanent --add-log-prefix="Firewall: "
sudo firewall-cmd --permanent --set-log-denied=all # 记录所有拒绝的流量(可选:all/unicast/broadcast/multicast)
sudo tail -f /var/log/messages | grep firewalld
SELinux是CentOS的安全增强模块,可与firewalld协同工作:
sudo setenforce 1
/etc/selinux/config,将SELINUX=enforcing(强制模式,推荐)。sudo semanage port -a -t ssh_port_t -p tcp 2222
firewall-cmd --list-all,移除不再需要的端口或规则。sudo yum update firewalld -y
/etc/firewalld/目录),便于恢复:sudo tar -czvf firewalld_backup.tar.gz /etc/firewalld/
通过以上步骤,可构建一个最小化开放、精细化控制、可监控审计的CentOS防火墙安全策略,有效降低服务器遭受攻击的风险。