CentOS 8 Stream系统防火墙配置与安全策略指南
常见问题 · 系统安全相关
防火墙是操作系统安全的第一道防线。正确配置防火墙规则,可以有效阻止未授权访问和网络攻击。本文以CentOS 8 Stream系统为例,详细介绍防火墙的配置方法。
一、防火墙基础概念
防火墙通过规则控制进出网络流量。合理的防火墙策略应遵循"默认拒绝,按需放行"原则,即先拒绝所有流量,再逐一开放必要的端口和服务。
二、启用防火墙
CentOS 8 Stream使用firewalld作为默认防火墙管理工具:
# 启用防火墙
systemctl start firewalld && systemctl enable firewalld
# 查看当前状态和规则
firewall-cmd --list-all
三、常用端口放行规则
# HTTP/HTTPS Web服务
firewall-cmd --add-port=80/tcp --permanent && firewall-cmd --reload
# SSH管理端口(如果已修改)
firewall-cmd --add-port=2222/tcp --permanent
# MySQL/MariaDB数据库(仅限内网)
firewall-cmd --add-source=192.168.1.0/24 --add-port=3306/tcp --permanent
# 重载使规则生效
firewall-cmd --reload
四、配置IP白名单
对于管理端口(如SSH、面板),建议设置IP白名单:
# CentOS/RHEL firewalld - 只允许特定IP访问SSH
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="你的IP/32" port protocol="tcp" port="2222" accept'
firewall-cmd --permanent --remove-service=ssh
firewall-cmd --reload
五、防御常见攻击
1. 限制连接频率 — 使用recent模块限制同一IP的连接速率:
# iptables直接配置
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 5 -j DROP
2. 防端口扫描 — 使用psd模块检测端口扫描:
iptables -A INPUT -m psd --psd-weight-threshold 20 -j LOG --log-prefix "PORTSCAN: "
六、日志与监控
# 开启防火墙日志
firewall-cmd --set-log-denied=all
# 查看被拒绝的连接
journalctl -u firewalld | grep DROP
tail -f /var/log/messages | grep DROP
七、配置检查清单
- 确认默认策略为DROP(拒绝所有入站)
- 仅开放业务必需的端口(Web 80/443、邮件25/587等)
- 数据库端口(3306、5432等)仅限内网或白名单访问
- SSH端口建议修改并使用密钥登录+白名单
- 定期审计防火墙规则,移除不必要的放行规则
- 配置日志告警,及时发现异常访问
关键词:防火墙、firewalld、ufw、安全策略、端口管理 | 八彩云技术分享 · 仅供学习参考
注册
登录控制台
