Залил wpad.dat на apache2
Компания, которую я обслуживаю, имеет имя контроллера домена, которое называется internal.example.com
и всякий раз, когда их сотрудники уходят домой, Apache заполняется запросом wpad.dat. Этот поток запросов перенаправляется на 404, это переполняет Apache, и он застопорился.
Существует DNS-запись с подстановочным знаком для *.example.com, которая будет перенаправлена на основной веб-сайт.
Это то, что я уже сделал:
Служил файл wpad.dat в корневой директории своего сайта. Apache перестает зависать, когда я начал обслуживать статический файл.
Добавлены записи DNS для
wpad.internal.example.com
,internal.example.com
,wpad.example.com
в127.0.0.1
,
После добавления DNS и разрешения его распространения я все еще вижу запросы в моих файлах журнала.
Я не знаю, к какому домену они пытаются получить доступ. Файл журнала ссылается на основной веб-сайт, а не на то, к чему они пытаются получить доступ.
Вот приложения, которые запрашивают файл wpad.dat
- WinHttp-Autoproxy-Сервис /5,1
- Microsoft Office 2014
- Агент обнаружения Kaspersky Proxy-Server
- Mozilla/5.0
Этот поток связан с тем, что был залит wpad.dat, но нет однозначного ответа, как исправить или хотя бы заблокировать запросы.
РЕДАКТИРОВАТЬ: Я не знаю, к какому поддомену они пытаются получить доступ, и Apache сообщает, что это с основного сайта. Записи, которые я добавил в DNS, являются интеллектуальными догадками, у меня нет конкретных доказательств того, к чему они обращаются.
2 ответа
Вместо настройки DNS-записи, указывающей на 127.0.0.1, вы должны установить запись, которая будет считаться неразрешимой. Самый простой способ сделать это - установить запись TXT для wpad.example.com
, как это:
;name ttl class rr text
wpad IN TXT "Located in a black hole"
Сюда, wpad.example.com
никогда не разрешит IP-адрес, и клиенты даже не попытаются что-то скачать.
Обратите внимание, что любые просмотры DNS, которые уже были сделаны, могли быть кэшированы, так что клиенты будут продолжать использовать кэшированные результаты. Это означает, что изменение DNS не сразу вступит в силу для всех клиентов, но вы должны увидеть, как оно сужается.
Лучший способ справиться с этим - использовать брандмауэр и полностью блокировать запросы от попадания на ваш веб-сервер, возможно, используя fail2ban
или похожие.
Если это нецелесообразно (по какой-либо причине), то самое эффективное решение - перехватить его как можно раньше на сервере веб-сервера и перенаправить его перед выполнением ввода-вывода.
Вот конфигурация, которую я использовал в прошлом, чтобы делать подобные вещи. В этом случае я перенаправляю запрос на http://127.0.0.1/ помощью внешнего перенаправления, которое заставляет браузер / скрипт пользователя ничего не делать или делать запрос самому себе.
RewriteEngine on
RewriteRule ^/wpad.dat$ http://127.0.0.1/ [R=301,L,E=nolog:1]
# Then if you wish to stop logging the requests
CustomLog logs/access_log combined env=!nolog
Вы должны быть в состоянии настроить это в соответствии с вашими потребностями. Но если у вас есть проблемы, добавьте описание к вашему вопросу.