Блокировка IP-адресов, предотвращение DoS-атак - PullRequest
5 голосов
/ 27 августа 2010

Таким образом, это более общий вопрос о наилучшей практике предотвращения DoS-атак. Я просто пытаюсь понять, как большинство людей обрабатывают вредоносные запросы с того же IP-адреса, что является проблемой, с которой мы сталкиваемся в настоящее время.

Я полагаю, что лучше блокировать IP-адрес действительно вредоносного IP-адреса как можно выше, чтобы предотвратить использование большего количества ресурсов, особенно когда речь идет о загрузке приложения.

Мысли

Ответы [ 2 ]

11 голосов
/ 27 августа 2010

Вы можете предотвратить DoS-атаки различными способами.

  • Ограничение количества запросов в секунду с определенного IP-адреса.Как только предел достигнут, вы можете отправить перенаправление на страницу с кэшированной ошибкой, чтобы ограничить дальнейшую обработку.Вы также можете получить эти IP-адреса, защищенные брандмауэром, чтобы вам вообще не приходилось обрабатывать их запросы.Ограничение запросов для каждого IP-адреса не будет работать очень хорошо, хотя, если злоумышленник подделывает исходный IP-адрес в пакетах, которые он отправляет.
  • Я бы также попытался встроить некоторые умные символы в ваше приложение, чтобы помочь справиться с DoS.,Возьмите карты Google в качестве примера.Каждый отдельный сайт должен иметь свой собственный ключ API, который, я считаю, ограничен 50 000 запросов в день.Если ваше приложение работает аналогичным образом, вы захотите проверить этот ключ на самом раннем этапе запроса, чтобы не использовать слишком много ресурсов для запроса.После использования 50 000 запросов на этот ключ вы можете отправлять соответствующие заголовки прокси, чтобы все будущие запросы (например, в течение следующего часа) для этого ключа обрабатывались обратным прокси.Это не дурак, хотя.Если у каждого запроса свой URL-адрес, обратный прокси-сервер должен будет пройти через запрос к внутреннему серверу.Вы также столкнулись бы с проблемой, если бы в DDOS использовалось много разных API-ключей.
  • В зависимости от целевой аудитории вашего приложения, вы могли бы внести в черный список большие диапазоны IP-адресов, которые вносят значительный вклад в DDOS.Например, если ваш веб-сервис предназначен только для австралийца, но вы получаете множество запросов DDOS из некоторых сетей в Корее, вы можете настроить брандмауэр корейских сетей.Если вы хотите, чтобы ваш сервис был доступен любому, то вам не повезло.
  • Другой подход к работе с DDOS - закрыть магазин и подождать.Если у вас есть собственный IP-адрес или диапазон IP-адресов, вы, ваша хостинговая компания или центр обработки данных можете обнулять трафик, чтобы он попадал в дыру в блоке.здесь .В этом же потоке есть и другие решения.
0 голосов
/ 06 декабря 2012
iptables -I INPUT -p tcp -s 1.2.3.4 -m statistic --probability 0.5 -j DROP iptables -I INPUT n -p tcp -s 1.2.3.4 -m rpfilter --loose -j ACCEPT
# n would be an numeric index into the INPUT CHAIN -- default is append to INPUT chain

подробнее на ... Не удается получить доступ к Plesk Admin из-за атаки DOS, блокировки IP-адреса через SSH?

...