Что такое CloudFlare и как защитить сайт от DDoS атак

Привет-привет!
В недавней статье о защите WP я писала, что как-то столкнулась с DDoS атакой на Блог SEO сектанта, и это знакомство ничего приятного не принесло. Зато я приобрела некоторые полезные знания.

Как это было

В один прекрасный день мне пришло письмо от хостера о том, что из-за DDoS атаки на мой сайт, на него поставлена «заглушка» (где нужно подтвердить переход на сайт). Таким образом, на сайт попадают только люди. Мне было сказано, что, если в течение нескольких дней я не снижу нагрузку на сервер, меня отключат (мне нужно прекратить саму себя ддосить?)))).

DDoS атака

С этим хостером у меня уже были неприятные моменты из-за ну оооочень долгих ответов тех поддержки, и я решила поменять его. Вскоре перешла на новый хостинг, и тут началось веселье. Каждый день меня заваливали письмами о нагрузке на сервер (“использование CPU аккаунтом xxxxxxx превысило максимально допустимую суточную нагрузку“) и требованием перейти сначала на повышенный план, а потом и на выделенный сервер. Ничего из этого не работает, проверено ;)

Поскольку спасение утопающих – дело рук самих утопающих, я поняла, что на мои вопросы поддержка адекватно не ответит, а слышать читать о повышении тарифа уже надоело. Тут я стала искать пути решения. И нашла.

Что такое CloudFlare

CloudFlare – это очень полезный сервис, который фильтрует трафик прежде, чем он попадает к вам на сайт. Соответственно, при правильной настройке можно не пустить на сайт спамеров.

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

Бесплатный CloudFlare

Чтобы начать пользоваться CloudFlare, нужно зарегистрироваться и добавить свой сайт/сайты. После добавления каждый сайт сканируется (это занимает около минуты), а после сканирования вам показываются все найденные данные DNS, которые вы можете поменять. Но если не знаете точно, что и как, лучше ничего не трогайте, как я :)

Сканирование сайта в CloudFlare

Дальше будут еще настройки, где вы сможете выбрать План, уровень защиты и безопасности. Тут вы сами должны решить, что вам нужно. Все функции и объяснения – на английском, так что для тех, кто не знает английского, Google Translate в помощь.

Последний этап настройки заслуживает особого внимания. Он называется Update your name servers. Здесь сказано, что для активации вам нужно поменять свои DNS сервера на хостинге.

Изменение DNS

Для меня это был сложный момент, так как я не совсем понимала, безопасно ли это. Поэтому я забросила установку CloudFlare на пару недель, пока все совсем не стало плохо с атаками. После того, как я разобралась, все стало проще.

Меняя DNS сервера в панели своего хостинга со своих на те, что принадлежат CloudFlare, вы не меняете и не теряете хостинг! Весь трафик, идущий на ваш сайт, сначала попадает на сервера CloudFlare, фильтрутеся там согласно вашим настройкам, а потом попадает уже на сервера вашего хостера и на ваш сайт.

CloudFlare - фильтрация трафика

Такая схема помогает обрезать большую часть спамерского трафика и защититься от DDoS атак, предварительно поставив необходимые настройки.

Блокировка IP адресов и стран в CloudFlare

Просто добавить сайт в сервис CloudFlare – мало, нужно еще понять, откуда идет спамерский трафик и поставить его фильтрацию. Для этого нужно собрать список атакующих IP адресов и выяснить, к каким странам они относятся (например, при помощи http://www.ip2location.com/). IP адреса нужно смотреть в логах на своем хостинге.

Вот несколько советов для определения спамеров в логах:

- Много запросов в секунду с одного IP адреса
- Запросы на одну и ту же страницу сайта (чаще всего – на wp-login.php при брутфорс атаках. У меня были на главную страницу)
- Непонятные рефереры. Например, npj3z6t09f390.net – просто набор букв и цифр.

После того, как вы собрали IP адреса, заблокируйте их в CloudFlare в меню Threat control:

Заблокировать IP адреса через CloudFlare

Если IP адресов из одной страны слишком много, заблокируйте всю страну

Заблокировать страну через CloudFlare

Как сделала я:
ok Заблокировала самые активные спамные IP

ok Прошлась по списку стран и заблокировала те, из которых меня спамили, а также те, из которых ко мне вряд ли придут посетители. Так что если вы будете в Индии и захотите почитать Блог SEO сектанта, извините.
okЗаблокировала некоторые IP в файле .htaccess (об этом ниже).

Результаты защиты

После всех настроек, можно посмотреть на аналитику заходов на сайт и спамерских атак. Эта аналитика в бесплатном плане доступна не сразу.

Cloudflare - аналитика по атакам

Как видите, трафика из заблокированных стран было более, чем много…

CloudFlare – это не полная панацея, некоторые заходы спамеров он все равно пропускает. Но не смотря на это, он оооочень сильно помогает. Однажды я провела эксперимент: отключила CloudFlare на полчаса. Сайт лег в течение 10 минут, потому что на сервер обрушилось кучу запросов, 10000 строк файла лога заполнялись за 3 секунды… Потом я снова включила CloudFlare, и за несколько часов 10000 строк файла заполнялось всего за 18 минут)))

Экстренная защита во время DDoS атаки

Все вышеперечисленные действия значительно снижают количество ненужной нагрузки на ваш сервер, но в случае самой DDoS атаки этого все равно может оказаться недостаточно.

Если ваш сервер находится на грани издыхания в борьбе с DDoS атакой, то лучше воспользоваться экстренной защитой от CloudFlare. Для этого нужно зайти в настройки и включить режим «I’m under attack!».

CloudFlare - защита от DDoS атаки

Таким образом, когда на ваш сайт будет кто-то заходить, CloudFlare проведет дополнительную проверку этого пользователя и пропустит его, если проверка пройдет успешно. Она длится всего несколько секунд и не требует ввода капчи. Для обычного пользователя она выглядит вот так:

Экстренная защита от DDoS атаки

Те, кто очень внимательно следит за Блогом SEO сектанта, должны были видеть тут такую страницу.

Как только нагрузка спала, можно выключать этот режим.

Как сменить хостера используя CloudFlare

Как я написала в начале статьи, я меняла хостера. Но он сказался еще хуже, и я переехала обратно к старому. Кому интересно, Блог SEO сектанта сейчас на Timeweb, делала попытку переехать на Reg.ru. Попытка завершилось провалом, не с моей строны. Мне показалось, что у Reg.ru изначально очень слабая защита, потому что именно неделя с ними была самой напряженной. Как только я вернулась на Timeweb, нагрузка снизилась сама. Видимо, у них стоят фильтры на уровне их серверов, а не отдельных сайтов.

Так вот когда я переносила сайт обратно на Timeweb, мне нужно было менять IP адрес и DNS. Но у меня же были поставлены DNS CloudFlare, и я не понимала, как осуществить перенос.
На самом деле, все просто: нужно всего лишь заменять IP адрес старого хостинга на IP адрес нового в самом CloudFlare. В панели My websites выбираете сайт и нажимаете на DNS settings

CloudFlare - изменение IP и DNS

В появившемся меню нужно изменить два пункта, в которых показывается, на какой IP адрес отсылается отфильтрованный трафик после фильтрации в CloudFlare.

Поменять IP сайта в CloudFlare

Небольшое наблюдение: обычно на то, чтобы изменение хостера вступили в силу, нужно пару дней. Если это делать через CloudFlare, нужно всего пару часов.

После этого не забудьте поставить DNS CloudFlare в панели нового хостинга.

Блокировка IP адресов в файле .htaccess

CloudFlare – это хорошо, но, как я писала выше, часть спамерского трафика все равно пробивается через его фильтры. Именно поэтому я дополнительно запретила самые активные IP адреса в файле .htaccess. Делается это очень просто:

Order Deny,Allow
Deny from 46.116.149.240
Deny from 113.160.131.13
Deny from 111.246.221.15
Deny from 79.22.143.38
Deny from 111.246.221.15
Deny from 109.251.3.154
....

Если у вас много таких адресов, этот тул будет полезен, он cгенерирует список со всеми запрещающими директивами. Вам нужно только дать ему IP адреса, которые хотите заблокировать.

В итоге всем заблокированным адресам будет выдаваться 403 ошибка. Она тоже грузит сервер, но во много раз меньше, чем загрузка полноценной страницы сайта. В логах на сервере такие заходы будут видны.

Конец

Вот такими методами я боролась с DDoS атакой и снижала нагрузку на сервер. А вы когда-нибудь сталкивались с этими задачами? Знаете ли еще какие-нибудь интересные способы? Делитесь ими в комментариях!

И не забывайте подписываться на Блог SEO сектанта, то ли еще будет :)

Если Вам понравилась статья, подпишитесь на обновления блога, и Вы будете всегда в курсе выхода новых материалов.

1 звезда2 звезды3 звезды4 звезды5 звезд! Ура! (27 голосов, оценка: 5.00 из 5)
Loading...Loading...
Последние комментарии

Ответить на Николай Отмена ответа

Ваш email не будет опубликован. Обязательные поля отмечены *

CommentLuv badge