售前咨询400-838-0503

Linux云服务器如何配置防火墙白名单?

技术文档 2025-04-18 07:00

Linux云服务器防火墙白名单配置全攻略

在云服务器运维管理中,防火墙配置是保障服务器安全的第一道防线。本文将详细介绍在Linux云服务器上配置防火墙白名单的完整流程,帮助您实现精确的访问控制。

一、白名单防火墙的核心价值

防火墙白名单机制遵循"默认拒绝,明确允许"的安全原则,相比传统的黑名单模式具有以下优势:

  • 最小权限原则:只允许必要的网络访问
  • 防御零日攻击:未明确允许的流量自动阻断
  • 简化审计:清晰可见所有允许的访问规则

二、准备工作

在开始配置前,请确保:

  1. 拥有root或sudo权限
  2. 确认当前使用的防火墙工具(常见的有iptables、firewalld、ufw)
  3. 准备需要放行的IP/端口清单
  4. 建议先在测试环境验证配置

三、主流防火墙工具配置详解

1. iptables方案

# 清空现有规则
iptables -F

# 设置默认策略(拒绝所有入站/转发)
iptables -P INPUT DROP
iptables -P FORWARD DROP

# 允许本地回环
iptables -A INPUT -i lo -j ACCEPT

# 放行指定IP(示例:允许192.168.1.100访问SSH)
iptables -A INPUT -p tcp --dport 22 -s 192.168.1.100 -j ACCEPT

# 保存规则(根据系统选择)
service iptables save   # CentOS 6
iptables-save > /etc/iptables.rules  # Debian/Ubuntu

2. firewalld方案(CentOS/RHEL)

# 添加可信IP到白名单
firewall-cmd --permanent --add-source=192.168.1.100

# 开放特定服务给白名单IP
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" service name="ssh" accept'

# 重载配置
firewall-cmd --reload

3. UFW方案(Ubuntu)

# 允许指定IP访问
ufw allow from 192.168.1.100 to any port 22

# 更精细的规则示例
ufw allow proto tcp from 192.168.1.100/32 to any port 80,443

四、高级配置技巧

1. 动态IP处理方案

对于动态IP的情况,可以考虑:

  • 配置DDNS解析
  • 使用fail2ban自动更新规则
  • 设置IP段范围(谨慎使用)

2. 服务端口管理建议

服务默认端口安全建议
SSH22修改为高位端口
HTTP80配合WAF使用
数据库3306/5432限制内网访问

3. 自动化维护脚本

示例脚本(/usr/local/bin/refresh_firewall.sh):

#!/bin/bash
# 获取最新IP列表
IP_LIST=$(curl -s https://your-api.com/allow_ips)

# 刷新iptables规则
iptables -F ALLOW_LIST
for IP in $IP_LIST; do
  iptables -A ALLOW_LIST -s $IP -j ACCEPT
done

五、常见问题排查

1. 规则不生效检查步骤

  1. 确认规则已保存并加载
  2. 检查规则顺序(iptables按顺序匹配)
  3. 验证网络连通性(traceroute/telnet)
  4. 查看系统日志(/var/log/messages)

2. 典型错误解决

  • 错误: 锁定自己导致无法连接
    方案: 配置管理端口例外或通过控制台恢复
  • 错误: 服务响应变慢
    方案: 检查conntrack表大小,优化规则顺序

六、安全加固建议

完成白名单配置后,建议进一步:

  1. 启用防火墙日志监控
  2. 设置定期规则审计(cronjob)
  3. 结合IDS/IPS系统增强防护
  4. 配置云安全组多层防护

通过本文介绍的Linux防火墙白名单配置方法,您可以有效控制服务器访问权限,大幅提升云环境的安全性。建议根据实际业务需求灵活调整规则,并建立完善的变更管理流程。

如本公告涉及你的产品,或有不清楚之处,可提交工单确认。

提交工单