Назад | Перейти на главную страницу

Запросы брандмауэра, которые думают, что вы другой хост

Я немного новичок, так что потерпи меня.

Я регулярно проверяю свои журналы для развлечения и получаю много (тысячи) таких ошибок: http://pastebin.com/i0iSKDCW

У меня проблемы с сервером Burst.net VPS, и мне интересно, был ли мне выделен чей-то старый IP-адрес, и они оставили свой домен настроенным или что-то вроде этого?

Что я хочу сделать, так это использовать iptables или что-то подобное, чтобы отклонить все подобные запросы (с хостом: eciou.net), не позволяя им добраться до Nginx (у меня есть медленное программное обеспечение, работающее под Nginx).

Решение

Как предложили замечательные люди ниже, я просто добавил это в свой файл конфигурации:

сервер {слушать [::]: 80; имя_сервера eciou.net; расположение / {корень / SRV / http / static / eciou; index index.html; }}

Обратите внимание, что [::]: 80 означает, что мой сервер также настроен на прием IPv6. Обычно я считаю, что достаточно 80.

Да, скорее всего, у вас есть IP-адрес, который раньше использовался для размещения eciou.net домен.

К сожалению, нет простого способа отфильтровать такие запросы с помощью iptables, потому что он работает на более низком уровне модели OSI и ничего не знает о Ведущий: ... Заголовок HTTP.

Вы можете фильтровать такие запросы в nginx и не дать им добраться до вашего тяжелого программного обеспечения. Это можно сделать с помощью переменной среды $ host: http://wiki.nginx.org/HttpCoreModule#.24host

Вот быстрый пример, который вернет 404 для запросов к этому домену:

if ($host ~* "eciou.net") {
    return 404;
}

Я бы посоветовал возвращать 404 для всех этих запросов, потому что ... ну, потому что 404 означает «Не найдено», и это действительно происходит здесь.

Например.:

server {
  listen 80; # only port means "listen all interfaces"
  server_name eciou.net;
  log_not_found off; # if you do not want to log all these 404's
  root /srv/http/static/eciou;
  location / {}
}

В этой настройке Nginx будет искать запрошенные файлы в файловой системе. Ничего страшного, но если вас это беспокоит, return 404 будет эффективнее (вместо root + location)