IIS обслуживает только запросы с именами хостов
Каков оптимальный способ настройки IIS для блокировки прямого IP-доступа к серверу? Прямой IP-доступ используется только вредоносными сканерами, которые будут троллить весь интернет, ip ищет уязвимые серверы.
Только вчера я встал на сервер, который нигде не используется в Интернете, и у меня уже не было найдено /MyAdmin/scripts/setup.php в моих журналах ошибок.
3 ответа
Вы можете использовать функцию перезаписи URL в IIS, чтобы сделать это:
- Откройте функцию перезаписи URL:

Добавьте правило типа "Блокировка запроса":

Заблокируйте запросы на основе имени хоста:
Если вы знаете свой IP-адрес, вы можете использовать его для блокировки запросов, которые его используют: 
Или вы можете заблокировать все запросы, которые не используют доменное имя:
Надеюсь, это поможет (мне понадобилось много времени, чтобы найти это).
Обратите внимание, что я понятия не имею о производительности, связанной с этим использованием.
Это, честно говоря, ниже заботы о, однако...
- Настройте сайт по умолчанию на сервере таким образом, чтобы он указывал на пустой каталог, или на статические файлы, или на что-то, что вас не волнует, когда вас "забивают" вредоносные сканеры. [Booga Booga]
- Не отображайте пустые заголовки узлов на свои сайты в IIS.
В диспетчере IIS выберите веб-сайт, который вы хотите защитить. Щелкните сайт правой кнопкой мыши и выберите РЕДАКТИРОВАТЬ ПРИВЯЗКИ.
Затем отредактируйте привязки для нужной комбинации протокол/порт/IP. Затем отредактируйте поле имени хоста, включив в него имя вашего веб-сайта (например: myhost.mydomain.com) или подстановочный знак (например: *.mydomain.com).
После этого любой, кто попытается получить доступ к вашему сайту по IP, получит ошибку 404. Любой, кто обращается к веб-сайту по имени хоста, будет просматривать сайт в обычном режиме.
Нет необходимости использовать перезапись URL-адресов (что увеличивает нагрузку на сервер)