我正在服务的一家公司有一个名为的域控制器名称internal.example.com
,每当他们的员工回家时,Apache 就会被 wpad.dat 请求淹没。大量请求被重定向到 404,这使 apache 不堪重负,并陷入困境。
*.example.com 有一个通配符 DNS 条目,可重定向到主网站。
这些是我已经做过的事情:
在他们网站的根目录中提供了一个 wpad.dat 文件。当我开始提供静态文件时,Apache 停止了停滞。
wpad.internal.example.com
为,internal.example.com
,wpad.example.com
to添加了 DNS 条目127.0.0.1
。
添加 DNS 并让它传播后,我仍然可以在我的日志文件中看到请求。
我不知道他们试图访问哪个域。日志文件指的是主网站,而不是他们试图访问的网站。
以下是请求 wpad.dat 文件的应用程序
- WinHttp-Autoproxy-Service/5.1
- 微软办公软件 2014
- Kaspersky Proxy-Server 检测代理
- Mozilla/5.0
该线程与被 wpad.dat 淹没有关,但没有确定的答案如何修复或至少阻止请求。
编辑:我不知道他们试图访问的子域和 apache 报告它来自主网站。我添加到 DNS 的条目是明智的猜测,我没有具体的证据证明他们正在访问什么。
与其设置指向 127.0.0.1 的 DNS 记录,不如设置一个将被视为无法解析的记录。最简单的方法是为 设置一个 TXT 记录
wpad.example.com
,如下所示:这样,
wpad.example.com
永远不会解析到任何 IP 地址,客户端甚至不会尝试下载某些东西。请注意,任何已进行的 DNS 查找可能已被缓存,因此客户端将继续使用缓存的结果。这意味着 DNS 更改不会立即对所有客户端产生影响,但您应该会看到逐渐减少的情况。
处理此问题的最佳方法是在防火墙处并完全阻止请求访问您的 Web 服务器,可能使用
fail2ban
或类似的。如果这不切实际(无论出于何种原因),那么尽早在您的 Web 服务器服务器上捕获它并在任何磁盘 I/O 完成之前将其重定向是最有效的解决方案。
这是我过去用来做这类事情的配置。在这种情况下,我通过外部重定向将请求重定向到http://127.0.0.1/ ,这会导致用户浏览器/脚本不执行任何操作或向自身发出请求。
您应该能够根据您的确切需求对其进行自定义。但是,如果您遇到问题,请为您的问题添加描述。