Защита от DDOS при помощи CloudFlare

Инструкция Защита от DDOS при помощи CloudFlare

Всем привет !

Данную статью писал на ресурсе посвящённому XenForo, но там были замечания + дополню то о чём утаил забыл написать и немного переработал статью, итак:

1)Что-же такое CloudFlare (CF) и зачем нужно:


- Это бесплатный и надёжный DNS-хостинг;

- Это бесплатное кеширование сайтов и ускорение загрузки, а также снижение нагрузки на сервер;

- Это возможность опять-таки бесплатно использовать SSL на своём сайте, причём дают сертификаты от таких "грандов" как Comodo, GlobalSign и т.д., как это сделать расскажу в статье;

- Бесплатно можно отбивать атаки до 10 Гбит/c, также можете дополнительно защитить свой ресурс от атак на ресурс (Как, расскажу в этой статье);

- Платно отбивает от атак до 750 Гбит/с, также если заплатите 20 баксов, то появится возможно подключить Web Application Firewall, который будет защищать ваш ресурс от XSS-атак и других атак на сайты !

Сразу скажу про минусы CloudFlare:

- Т.к. данным сервисом часто пользуются хукеры, для скрытия IP-адресов скажем-так недобропорядочных сайтов, а конкретней таких-как размещение продажи фармы, порно и других прелестей, то существует вероятность попадания IP-адресов CloudFlare в чёрный список Роскомнадзора, хотя у меня не разу такого не было (При посещении ресурсов под CloudFlare), но вероятность есть...

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

- Для надёжной защиты, вам придётся перенести все ваши домены на днс-сервера CloudFlare, а также запретить все обращения к вашему серверу, кроме IP-адресов CF.

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

Но тем не менее, несмотря на эти минусы, это единственный бесплатный способ защитить проект, если вы используете шарред хостинг или VDS/сервер без какой-либо защиты (А таких хостингов более 80%) !

2)Регистрация:

Итак расписываю как настроить по шагам:

Заходим на сайт www.cloudflare.com и регистрируемся. На этом этапе необходимо заполнить рабочий e-mail, ник для комьюнити и придумать сложный пароль. Ну и конечно согласиться с правилами сервиса !

upload_2015-8-26_23-7-17.png


Теперь добавляем домен, для которого мы хотим использовать DNS:

upload_2015-8-26_23-7-52.png


3)Пара слов про DNS:

После этого появляется конфигурация нашей DNS зоны.

Если домен уже был рабочий и висел на другом DNS, то записи считаются автоматически.

Если же домен был пустой, только что куплен/зарегистрирован, то их нужно заполнить самому.

upload_2015-8-26_23-8-27.png


Подробнее о записях:

А запись — здесь нужно ввести IP адрес выделенного сервера или VDS. Или если у вас shared хостинг, то IP адрес этого shared хостинга. Можно найти в меню ISPmanager в разделе «Домены»

AAAA запись — тоже самое, только для IPv6

CNAME запись — псевдоним домена, часто используется для привязки блогов тип tumblr, ucoz, blogger и тому подобных к доменам второго уровня

Примеры:

@ A 8.8.8.8 — данная запись направит основной домен на сервер с IPv4 8.8.8.8 поддомены создаются так же, направляются на IP.

www A 8.8.8.8 — поддомен www направлен на тот же сервер. Таким образом нужно добавить все поддомены. ( Красным выделены основные )

upload_2015-8-26_23-9-10.png


Можно один раз прописать, чтобы любой несуществующий поддомен ссылался на ip

* A 8.8.8.8

Когда вы используете всего один сервер, то это удобно. Но когда поддомены нужно раскидывать на десятки серверов, то всё таки удобно использовать грамотную DNS структуру, т.к. DNS тоже могут засираться ;)

Типы записей:

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

Для почты тип записи MX, TXT еще используется.

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

Потом вам предложат посмотреть ролик и выдадут два DNS-домена, которые нужно прописать у регистратора вашего домена, пример:

NS1 — baby.dns.cloudflare.com
NS2 — high.dns.cloudflare.com


4)Непосредственная защита от ддос:

4.1)Нужно ОБЯЗАТЕЛЬНО использовать сторонний сервер почты для домена, например Яндекс;

4.2)Нужно ОБЯЗАТЕЛЬНО удалить NS-записи, которые ведут на сервер, КРОМЕ А-записей и включить проксирование (Оранжевое облако), пример (Используется почта яндекса для домена):

upload_2015-8-26_23-9-44.png


5)Разбор настроек защиты от ддос:

upload_2015-8-26_23-10-33.png


Security Level:

High:
обеспечивает широкую защиту от спама, хакерских атак, а также атак типа DDoS. Данный уровень безопасности требует ввода капчи каждым пользователем, который был уличен в злонамеренном поведении на других сайтах. Сервис проверяет браузер пользователя на наличие вредоносных сигнатур. Этот уровень безопасности подойдет администраторам, для которых безопасность веб-сайта находится на первом месте.


Medium: При использовании данного уровня безопасности пользователи будут отсеиваться на основе случаев спама, хакерских атак или атак типа DoS, которые производились данными пользователями на других сайтах. Небходим ввод капчи пользователям, которые были уличены в частых атаках на другие сайты.

Сервис также проверит браузер пользователя на наличие вредоносных сигнатур. Идеально подойдет для сайтов с высокими требованиями безопасности. На данном уровне риск ложного срабатывания системы безопасности минимален.

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

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

Essentially off: запретит доступ к Вашему сайту только тем пользователям, которые на данный момент участвуют в известной сервису DoS атаке.

Подойдет веб-мастерам, которые используют CF в основном для увеличение скорости выдачи контента пользователям. Мы также не рекомендуем использовать данный уровень в целях безопасности.

I'm Under Attack!: Будет показывать заглушку посетителям и проверять браузер ботам:

upload_2015-8-26_23-12-0.png


6)Советы для защиты форума:

6.1) Если вы используете e-mail рассылку для регистрации и новостей в темах, то к сожалению ваш реальный айпи адрес может перехватить ддосер в загаловках письма и вся эта защита сведётся к нулю, но тут следующее решение:

- Отказаться от всех емаил рассылок (Отключить);

- Арендовать VPS и пересылать письма через SMTP, но не забывать чистить загаловки, как это сделать смотрим здесь.

6.2)Вместо I'm Under Attack! которые будут напрягать пользователей, можно предложить ввод капчи с пользователей стран, которые участвуют в атаки, сделать это можно в настройках CF:

В граф Firewall (Там-же кстати и выбирается Security Level):

upload_2015-8-26_23-12-29.png


Далее выбираете страну:https://support.cloudflare.com/hc/en-us/articles/205072537

upload_2015-8-26_23-13-0.png

Вписываем страну (Например Китай CN), выбираем "Challenge" и нажимаем ADD, всё все пользователи из Китая, будут вводить капчу.

6.3)Запретите доступ всем IP, кроме этих адресов:https://www.cloudflare.com/ips

Как это сделать, вот:https://support.cloudflare.com/hc/e...telist-CloudFlare-s-IP-addresses-in-iptables-

Для того-чтобы сделать реальные IP-адреса пользователей на уровне nginx, воспользуйтесь этим мануалом: https://support.cloudflare.com/hc/e...-do-I-restore-original-visitor-IP-with-Nginx-

7)Совет как использовать SSL на халяву:

Последний пункт, как использовать SSL для сайта:

Идёте сюда:https://www.cloudflare.com/a/crypto/mydomain

На выбор предлагаются 4 схемы работы веб-сайта: без шифрования на всей протяженности запроса и 3 новых варианта:

upload_2015-8-26_23-21-39.png


upload_2015-8-26_23-21-57.png


Первая из них не требует никаких изменений на стороне сервера, трафик при этом передается между прокси-серверами и вашим ресурсом в открытом виде.

Вариант Full SSL допускает использование любого самоподписанного сертификата, что ненамного надежнее первой схемы и защищает трафик только от пассивного прослушивания. Поэтому в качестве рекомендуемого варианта называется третья опция, требующая наличие у сервера валидного сертификата от общепризнанных ЦС.

В дальнейшем предполагается использование собственного Cloudflare CA, позволяющего защитить канал между сервером и прокси (при этом в браузерах сертификаты Cloudflare CA признаваться не будут, схема планируется исключительно для служебных целей).

В общем выбираете нужную схему и всё...

При желании можно сделать ридерект на https вот-так:https://support.cloudflare.com/hc/e...-How-do-I-redirect-all-visitors-to-HTTPS-SSL-

Вроде всё, все дополнения к статье приветствуются !WinkSmile
  • upload_2015-8-26_23-21-24.png
    upload_2015-8-26_23-21-24.png
    1.7 КБ · Просмотры: 36
Автор
X-Shar
Просмотры
2 519
Первый выпуск
Обновление
Рейтинг
5.00 звёзд Оценок: 1

Последние отзывы

Верх Низ