网络攻击的后续

网络攻击的后续

💡 原文中文,约2000字,阅读约需5分钟。
📝

内容提要

本文总结了针对phpBB论坛的网络攻击防护措施,主要依靠Cloudflare的CDN安全规则和服务器上的Fail2Ban工具。通过设置多个过滤器(如404扫描、登录保护)阻止恶意IP,并在Cloudflare上配置五条规则,包括拦截可疑User Agent、保护搜索和登录页面、限制异常国家访问及带sid的请求。攻击虽持续,但已被有效拦截,服务器运行平稳,流量恢复正常。

🔎

延伸解读

多层防护:Cloudflare与Fail2ban的分工

文章展示了两种防护手段的配合:Cloudflare在边缘节点拦截恶意请求,避免流量到达源服务器;而Fail2ban则作为第二道防线,通过分析Nginx日志实时封禁IP。这种分层策略有效降低了服务器资源消耗,即使攻击持续,服务器仍能平稳运行。对于没有使用CDN的站点,Fail2ban的过滤器(如404扫描、登录保护)是主要依赖,但被封禁的IP仍会消耗一定资源。

识别爬虫的线索:User Agent与请求模式

作者通过分析日志发现,可疑请求常使用过时的User Agent(如macOS 10.15.7 + Chrome 120),且市场份额较低,疑似来自自动化爬虫或代理池。此外,大量仅请求页面而无CSS或图片的带sid访问,也是机器人的明显特征。这些线索帮助制定了针对性的Cloudflare规则,如对可疑UA和搜索、登录页面启用Managed Challenge,既拦截攻击又不误伤正常用户。

Cloudflare免费版的实用配置

文章提到Cloudflare免费账号可设置五条Security Rules,作者配置了拦截可疑UA、保护搜索和登录页、限制异常国家访问及带sid请求等规则。这些规则在24小时内见效,攻击流量显著下降。对于小型网站,免费版已足够应对常见攻击,但付费版(Pro,$20/月/站点)可能提供更多功能,作者认为当前网站规模无需升级。

Q&A

如何防止针对phpBB论坛的网络攻击?

主要依靠Cloudflare的CDN安全规则和服务器上的Fail2Ban工具。在服务器上设置多个过滤器(如404扫描、登录保护)阻止恶意IP,在Cloudflare上配置五条规则,包括拦截可疑User Agent、保护搜索和登录页面、限制异常国家访问及带sid的请求。

Fail2Ban在服务器上设置了哪些过滤器?

设置了四个过滤器:nginx-404scan(针对404错误访问)、nginx-webscan(针对漏洞扫描和配置文件扫描)、phpbb-login(针对短期多次登录)、phpbb-search(针对短期大量搜索)。

Cloudflare免费账号可以设置几条安全规则?

免费账号可以设置五条Security Rules。

如何识别可疑的User Agent?

通过分析Nginx日志,发现某些请求的User Agent组合异常,例如使用旧版macOS(10.15.7)和Chrome 120,这种组合在桌面端市场份额仅3-6%,高度疑似自动化爬虫或代理池。

针对搜索页面和登录页面,Cloudflare采取了什么措施?

对搜索页面和登录页面都开启了Managed Challenge,以阻止恶意访问。

为什么对某些国家的访问开启Managed Challenge?

因为该论坛是中文论坛,面向中文用户,而来自某些国家的请求数量异常高,所以对这些国家的访问开启Managed Challenge,如果以后数量下降再调整。

带有sid的访问为什么被拦截?

因为日志中大量带有sid的访问只有页面请求,没有CSS或图片请求,这是明显的机器人行为。虽然正常访问也可能带sid,但通过规则可以拦截异常模式。

攻击被拦截后,服务器流量和运行状况如何?

攻击仍在继续,但被Cloudflare有效拦截,服务器运行平稳高效,流量恢复正常,每天流量约500兆左右。

🏷️

标签

➡️

继续阅读