Linux防火墙如何保护敏感数据
小樊
33
2025-12-20 10:03:25
Linux防火墙保护敏感数据的实用方案
一 核心原则
- 最小暴露面:仅开放业务必需端口与协议,默认拒绝其他一切入站与出站流量。
- 白名单优先:对管理口、数据库、内部API等敏感通道,按来源IP/网段精确放行。
- 纵深防御:防火墙与SSH加固、TLS加密、WAF/ACL配合,降低单点失效风险。
- 可审计与可恢复:启用日志、规则变更留痕,配置备份与快速回滚机制。
二 关键技术与配置要点
-
iptables 精准控制示例
- 仅允许指定来源访问数据库端口(如 Redis 默认 6379/TCP):
- 允许来源网段:iptables -I INPUT -p tcp -s 192.168.1.0/24 --dport 6379 -j ACCEPT
- 其余来源一律拒绝:iptables -A INPUT -p tcp --dport 6379 -j DROP
- 封禁恶意来源:iptables -I INPUT -s 203.0.113.45 -j DROP
- 规则持久化:iptables-save > /etc/iptables/rules.v4(按发行版选择合适路径与方式)
以上做法可对敏感服务实施“只允许可信网段访问”的最小权限策略。
-
firewalld 面向区域的白名单与黑名单
- 启用与查看:systemctl start firewalld;firewall-cmd --list-all
- 源地址白名单:firewall-cmd --permanent --add-source=192.168.2.50;支持 CIDR(如 192.168.2.0/24)
- 端口与服务:firewall-cmd --permanent --add-port=443/tcp;firewall-cmd --permanent --add-service=https
- 黑名单拒绝:firewall-cmd --permanent --add-rich-rule=‘rule family=“ipv4” source address=“203.0.113.45” reject’
- 使配置生效:firewall-cmd --reload
通过“区域+源地址+服务/端口”的组合,可快速为不同来源划分访问级别。
-
传输加密与访问控制协同
- 对管理通道(如 SSH)与对外服务(如 HTTPS)启用 TLS/SSL,防止明文泄露与中间人攻击。
- 在 Web 侧叠加 **WAF(如 ModSecurity)**与 ACL,过滤 SQL 注入、XSS、CSRF 等常见攻击向量。
加密与应用层防护配合防火墙的端口与来源控制,形成多层保护。
-
服务最小化与默认拒绝
- 数据库等敏感服务建议仅在内网监听(如 bind 127.0.0.1 或内网接口),仅对受控应用开放。
- 对高风险服务(如 Redis)务必设置强认证与访问控制,并仅在内网使用;防火墙层面再限制来源。
通过“服务自身加固 + 防火墙边界控制”双重约束敏感数据访问。
三 场景化规则模板
-
管理口最小化
- 仅允许跳板机或办公网段访问 22/TCP:
- iptables:iptables -I INPUT -p tcp -s 203.0.113.0/24 --dport 22 -j ACCEPT;iptables -A INPUT -p tcp --dport 22 -j DROP
- firewalld:firewall-cmd --permanent --add-rich-rule=‘rule family=“ipv4” source address=“203.0.113.0/24” port port=“22” protocol=“tcp” accept’;firewall-cmd --reload
将管理面收敛到可控来源,显著降低暴力破解与横向移动风险。
-
数据库与缓存白名单
- 仅允许应用服务器网段访问 3306/TCP(MySQL)、6379/TCP(Redis):
- iptables:iptables -I INPUT -p tcp -s 10.0.1.0/24 --dport 3306 -j ACCEPT;iptables -I INPUT -p tcp -s 10.0.1.0/24 --dport 6379 -j ACCEPT
- 其余来源拒绝(注意放通顺序,先 ACCEPT 可信,再 DROP 其他)
通过来源白名单与默认拒绝策略,防止数据库被非授权主机访问。
-
出站数据防泄露
- 原则:默认DROP 出站,仅放行业务必需域名/IP 与端口(如 443/TCP 到对象存储、支付网关等)。
- 示例(iptables,谨慎变更并保留应急放行规则):
- iptables -P OUTPUT DROP
- iptables -A OUTPUT -p tcp -d 203.0.113.10 --dport 443 -j ACCEPT
- 按需补充 DNS、NTP、内部依赖等必要出站流量
通过“默认拒绝出站 + 显式放行”减少数据外泄与木马外联通道。
四 运维与加固清单
- 规则备份与变更留痕:iptables-save 到版本化路径;firewalld 使用 --permanent 并定期导出清单。
- 默认拒绝与顺序:先放行“已验证来源/必要服务”,再对剩余流量统一拒绝;变更前准备回滚方案。
- 日志与监控:开启防火墙与系统日志(如 journald/syslog),对 DROP/REJECT 与异常连接进行告警。
- 联动加固:
- SSH:禁用 root 登录与口令登录,改用密钥登录(如 PermitRootLogin no、PasswordAuthentication no)。
- 服务:数据库仅内网监听、启用强认证与最小权限;Web 启用 TLS 与 WAF。
通过“防火墙 + 主机/应用加固”的组合,提升整体抗攻击能力。