服务器白名单的设置位置取决于服务器的操作系统、使用的软件或服务类型,以及管理方式,以下是常见场景下的设置方法和注意事项,帮助您快速定位并配置白名单。

操作系统级别的白名单设置
Windows服务器
在Windows系统中,白名单通常通过“高级安全Windows防火墙”或“本地安全策略”进行设置。
- 防火墙规则:打开“控制面板”>“系统和安全”>“Windows Defender防火墙”>“高级设置”,选择“入站规则”,点击“新建规则”,选择“自定义”或“程序”,然后指定允许的IP地址或IP范围,仅允许特定IP地址访问服务器的3389端口(RDP)或22端口(SSH)。
- 本地安全策略:通过“运行”输入
secpol.msc打开“本地安全策略”,选择“IP安全策略”,创建新规则并添加源IP地址限制,此方法适用于更复杂的安全策略配置。
Linux服务器
Linux系统主要通过防火墙工具(如iptables、firewalld或ufw)设置白名单。

- iptables:使用
iptables A INPUT s 允许的IP地址 j ACCEPT命令添加允许的IP,并默认拒绝其他所有连接,仅允许192.168.1.100访问SSH端口:iptables A INPUT p tcp dport 22 s 192.168.1.100 j ACCEPT,随后添加iptables A INPUT p tcp dport 22 j DROP。 - firewalld:适用于CentOS 7+或RHEL系统,使用
firewallcmd permanent addrichrule='rule family="ipv4" source address="192.168.1.100" accept'添加规则,并重新加载防火墙。 - ufw:适用于Ubuntu系统,通过
ufw allow from 192.168.1.100 to any port 22 proto tcp命令允许特定IP访问SSH。
应用程序或服务级别的白名单设置
Web服务器(如Apache、Nginx)
- Apache:在
.htaccess文件或虚拟主机配置中,使用Require ip 允许的IP地址指令限制访问。<Directory "/var/www/html"> Require ip 192.168.1.100 </Directory> - Nginx:在配置文件中使用
allow和deny指令。location / { allow 192.168.1.100; deny all; }
数据库服务器(如MySQL、PostgreSQL)
- MySQL:在
mysql.user表中直接限制主机权限,或通过CREATE USER 'user'@'允许的IP' IDENTIFIED BY 'password'创建用户时指定允许的IP地址。 - PostgreSQL:修改
pg_hba.conf文件,添加类似host all all 192.168.1.100/32 md5的规则,限制特定IP的连接。
其他服务(如SSH、RDP)
- SSH:编辑Linux服务器的
/etc/hosts.deny和/etc/hosts.allow文件,或在Windows RDP设置中通过“组策略编辑器”限制允许访问的组或用户。
云服务平台的白名单设置
若服务器部署在云平台(如AWS、阿里云、腾讯云),白名单通常在安全组或网络ACL中配置。
- AWS安全组:在EC2控制台选择安全组,添加入站规则,指定源IP地址和端口范围。
- 阿里云安全组:在ECS实例管理页面,配置安全组规则,允许特定IP访问目标端口。
- 腾讯云安全组:与阿里云类似,在CVM实例的“安全组”选项中添加规则。
注意事项
- 测试环境先行:在生产环境配置前,务必在测试环境验证白名单规则,避免误操作导致无法访问。
- 默认拒绝策略:建议设置白名单时采用“默认拒绝,明确允许”的原则,确保安全性。
- 动态IP处理:若客户端IP可能变化,可考虑使用IP段或VPN替代固定IP白名单。
- 日志监控:配置白名单后,定期检查访问日志,及时发现异常尝试。
相关问答FAQs
Q1: 服务器白名单设置后无法访问,如何排查?
A: 首先检查白名单规则是否正确,包括IP地址格式、端口和协议是否匹配,其次确认防火墙或安全组规则是否有冲突,例如是否先允许了更宽泛的IP段,最后检查目标服务是否正常运行,以及客户端网络是否可达,可通过telnet IP 端口或nc zv IP 端口测试端口连通性。

Q2: 如何批量添加多个IP地址到白名单?
A: 不同场景方法不同:
- Linux防火墙:使用
iptables A INPUT s 192.168.1.0/24 j ACCEPT添加IP段,或通过脚本循环添加多个IP。 - 云平台安全组:多数支持CIDR格式(如192.168.1.0/24)或批量导入IP列表。
- 应用程序配置:如Nginx可使用
allow 192.168.1.0/24; allow 10.0.0.1;连续添加多条规则。
注意避免规则冲突,并确保总数不超过服务限制。
