本文目录导读:

- 方案一:使用 Fail2Ban(最经典、成本最低)
- 方案二:使用云服务商的 WAF 和 DDoS 防护(最推荐、SaaS模式)
- 方案三:使用开源或商业的入侵检测与防御系统(IDS/IPS)(最专业、企业级)
- 方案四:使用 iptables/nftables + 动态黑名单(最底层、灵活)
- 方案五:基于 IP 信誉库的自动化封禁(最前沿、被动防御)
- 综合最佳实践(推荐组合)
- 注意事项与避坑指南
针对外网扫描的及时封禁,需要构建一个自动化、多层次的防御体系,单纯依靠人工查看日志再封禁,速度是远远不够的。
核心思路是:识别(Detection)-> 决策(Decision)-> 封禁(Blocking),整个流程必须在秒级甚至毫秒级完成。
以下是几种主流的、可落地的方案,按推荐程度和适用场景排序:
使用 Fail2Ban(最经典、成本最低)
适合个人服务器、小企业,通过分析服务日志,自动添加防火墙规则。
- 原理:监控 SSH、Web 服务器(Nginx/Apache)等日志,在单位时间内出现多次“认证失败”或类似错误模式的 IP,会被临时或永久封禁。
- 操作步骤(以 SSH 为例):
- 安装 Fail2Ban。
- 配置
jail.local文件,设置 SSH 监控:[sshd] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log # 或 /var/log/secure maxretry = 5 # 5次失败 bantime = 3600 # 封禁1小时 findtime = 600 # 在10分钟内
- 启动服务。
- 优点:简单、成熟、免费。
- 缺点:只能处理“已知”的失败模式,对 POST 扫描、慢速连接等效果不佳;需要日志写入才会触发,有轻微延迟。
使用云服务商的 WAF 和 DDoS 防护(最推荐、SaaS模式)
如果你的服务在阿里云、腾讯云、AWS、Cloudflare 等平台上,直接利用其边缘安全服务是最佳选择。
- 原理:流量先经过云侧清洗,在到达你服务器之前,异常扫描流量就已经被拦截。
- 操作步骤:
- 开启 WAF(Web应用防火墙):
- 配置IP黑/白名单:手动或自动添加。
- 开启扫描器防护:云商有内置的扫描器特征库。
- 开启频率限制:一个 IP 在 1 秒内请求超过 100 次,自动触发滑块验证或封禁 1 小时。
- 开启 DDoS 防护:默认设置通常就能防御 SYN 洪水等扫描行为。
- 使用 CDN(内容分发网络):CDN 会隐藏源站 IP,使扫描者在公网层面无法直接找到你的服务器。
- 开启 WAF(Web应用防火墙):
- 优点:延迟极低(在云边缘处理)、防护能力强(有庞大的威胁情报库)、无需运维服务器。
- 缺点:需要付费(根据套餐),但通常性价比很高,且包含在云服务基础防护里。
使用开源或商业的入侵检测与防御系统(IDS/IPS)(最专业、企业级)
适合对安全有较高要求的企业。
- 原理:在服务器上或网络入口旁路部署,深度检测网络包内容,对符合攻击特征的流量进行实时拦截。
- 推荐工具:
- Snort / Suricata:开源 IPS,可以自定义规则(看到
curl、wget等扫描器 User-Agent 直接封禁;看到大量/admin、/wp-admin等目录爆破尝试直接封禁)。 - OSSEC / Wazuh:主机入侵检测系统(HIDS),检测到异常进程、文件篡改、异常登录等行为后,可以调用脚本封禁 IP。
- Snort / Suricata:开源 IPS,可以自定义规则(看到
- 优点:检测能力强,能处理应用层攻击、SQL注入尝试等复杂扫描。
- 缺点:配置复杂、维护规则库需要一定安全知识、对性能有一定要求。
使用 iptables/nftables + 动态黑名单(最底层、灵活)
适合对 Linux 防火墙有深入理解的用户。
- 原理:编写脚本,定期或实时分析日志,将恶意 IP 写入 iptables 的
set或ipset中实现快速封禁。 - 操作步骤(结合 ipset):
- 创建一个 ipset 集合:
ipset create blacklist hash:ip timeout 3600 # 设置超时时间
- 添加 iptables 规则,拒绝该集合的所有流量:
iptables -I INPUT -m set --match-set blacklist src -j DROP
- 编写脚本(如 Shell、Python)读取日志,提取 IP,并添加到 ipset:
ipset add blacklist 1.2.3.4 timeout 86400
- 使用
cron或systemd定时执行脚本。
- 创建一个 ipset 集合:
- 优点:极低延迟(内核态处理)、资源占用少、可玩性高。
- 缺点:脚本需要自己维护,如果规则写错可能误封自己。
基于 IP 信誉库的自动化封禁(最前沿、被动防御)
利用第三方在线威胁情报(Threat Intelligence)。
- 原理:定期(如每小时)从 AbuseIPDB、Tor Exit Nodes 列表、Spamhaus 等服务拉取已知的恶意 IP 列表,然后通过脚本(方案四中的方法)将其批量加入黑名单。
- 工具:
abuseipdb-blacklist等开源项目。 - 优点:封禁速度很快(拉取即封禁),能防范尚未攻击你的扫描器。
- 缺点:依赖外部服务,且可能存在少量误报。
综合最佳实践(推荐组合)
对于大多数中小型企业和开发者,一个高性价比的“四层防御”组合如下:
- 第一层(云边缘):云服务商的 WAF + CDN,挡住绝大多数扫描和流量型攻击。这是最推荐你优先做的。
- 第二层(服务器自保):Fail2Ban,保护 SSH 等关键服务。
- 第三层(告警与监控):配置云监控或开源监控(如 Grafana + Prometheus),一旦某个 IP 短时间内请求量激增,触发告警,并调用云 API 或服务器脚本自动封禁。
- 第四层(最终防线):iptables 黑名单脚本,配合第三层或手动维护。
注意事项与避坑指南
- 警惕误封:CDN 的 IP(如 Cloudflare 节点)不能封,否则网站会打不开,务必确认封禁的是源站的攻击IP,而非CDN的节点IP。
- 不要完全封禁/0(全0网段):外网扫描来自全球,不可能封掉所有IP,重点封禁高频、高错误率的 IP。
- 时间窗口:
bantime(封禁时间)建议先短后长,第一次 1 小时,第二次 24 小时,对于确凿的恶意扫描(如来自已知僵尸网络),可以永久封禁。 - 区分扫描与正常访问:搜索引擎爬虫(如 Googlebot、Bingbot)也会频繁访问,切勿误封,可以通过验证 User-Agent、IP 归属(反解析域名)来区分。
- 定期审计:定期检查被封禁的 IP 列表,清理误封。
如果你只有一台 VPS,立即安装 Fail2Ban,如果你有云服务,立即开启 WAF 的频率限制功能,这两个操作能在 10 分钟内让你的服务器安全等级提升一个档次。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播