本文目录导读:

- 基于云服务商的DDoS防护/安全组(推荐)
- 服务器防火墙全局操作
- CDN/WAF层全局拉黑(如Cloudflare、阿里云WAF)
- 系统级全局DNS黑名单(针对域名/邮件)
- 编程实现全局封禁(Nginx、Apache、反向代理)
- 自动化工具:结合威胁情报
- 关键注意事项:
- 最终建议:
针对恶意IP的全局拉黑,需要根据你的网络环境、技术能力和防御目标选择合适方案,以下是几种常见的全局拉黑方法,从轻量到重型排序:
基于云服务商的DDoS防护/安全组(推荐)
- 适用场景:网站/服务器托管在云上(AWS、阿里云、腾讯云等)。
- 方法:
- 登录云控制台,找到安全组/防火墙规则。
- 添加出站/入站规则,将恶意IP列为拒绝来源(如
0.0.0/0除外,但建议使用白名单模式)。 - 如果是DDoS攻击,启用云服务商的DDoS高防IP,自动识别并清洗恶意流量。
- 优势:简单、无需修改代码,覆盖所有流量。
服务器防火墙全局操作
- Linux:使用
iptables或fail2ban自动封禁。# 永久封禁IP(示例) iptables -A INPUT -s 1.2.3.4 -j DROP # 使用fail2ban自动拉黑(推荐) fail2ban-client set sshd banip 1.2.3.4
- Windows:使用高级安全防火墙或PowerShell:
netsh advfirewall firewall add rule name="Block IP" dir=in remoteip=1.2.3.4 action=block
CDN/WAF层全局拉黑(如Cloudflare、阿里云WAF)
- 适用场景:网站已接入CDN或Web应用防火墙。
- 方法:
- 登录CDN控制台,进入“安全设置”或“IP黑名单”。
- 添加恶意IP到黑名单,CDN会直接拒绝该IP的请求。
- 对于持续攻击,可启用“国家/地区封锁”或“速率限制”。
- 优势:源服务器不直接暴露,攻击流量在边缘节点被拦截。
系统级全局DNS黑名单(针对域名/邮件)
- 适用场景:防止恶意IP通过主机名访问或发送垃圾邮件。
- 方法:
- 编辑
/etc/hosts.deny(Linux)添加:ALL: 1.2.3.4 - 或使用
nftables(现代Linux防火墙):nft add rule ip filter INPUT ip saddr 1.2.3.4 drop
- 编辑
编程实现全局封禁(Nginx、Apache、反向代理)
- Nginx:在
http或server块中添加:deny 1.2.3.4; allow all; # 除禁止IP外其他放行
- Apache:在
.htaccess或httpd.conf:Order deny,allow Deny from 1.2.3.4
自动化工具:结合威胁情报
- 使用
fail2ban+abuseipdbAPI 自动拉黑恶意IP。 - 在防火墙中加载公共黑名单(如
Spamhaus、CINSscore):ipset create blacklist hash:net ipset add blacklist 1.2.3.0/24 iptables -A INPUT -m set --match-set blacklist src -j DROP
关键注意事项:
- 白名单优先:如果业务有固定IP(如公司办公IP),务必先添加白名单。
- 动态IP(VPN/代理):恶意IP不断更换,需结合 速率限制 + 行为分析(如WAF)而非仅黑名单。
- 误伤风险:某些公共DNS或CDN IP(如Googlebot)可能被误封,建议仅封禁明确攻击IP。
- 分布式攻击:若IP来自全球大量主机,单靠黑名单无效,需换用DDoS清洗服务。
最终建议:
- 小型站点/个人服务器:使用
iptables+fail2ban即可。 - 中型业务:接入CDN(如Cloudflare)并启用IP黑名单。
- 关键业务/高并发:必须使用专业WAF或云安全组,配合自动化封禁策略。
示例操作(Linux快速封禁):
# 立即封禁1.2.3.4 sudo iptables -A INPUT -s 1.2.3.4 -j DROP # 保存规则(Debian/Ubuntu需安装iptables-persistent) sudo netfilter-persistent save
如果攻击持续,建议检查服务器日志定位攻击类型(CC攻击?漏洞利用?),针对性优化。