Как защитить сайт от нежелательного трафика?
Подробная инструкция о том, как ограничить доступ к сайту пользователям из России, Беларуси и других стран.
В связи с последними событиями в мире, большинство веб-разработчиков интересуются, как ограничить опасный трафик с нежелательных стран. Начнём с элементарного.
Что такое CloudFlare и зачем он нужен?
Раньше я считал, что если мой сайт ориентирован на одну страну (например, местный интернет-магазин), то мне не нужны всякие CDN сервисы для ускорения. Размещаешь сайт в своей стране и всё быстро летает. Но, не следует забывать, что...
CloudFlare - это не только бесплатный CDN, а и мощное средство для защиты сайта от нежелательного трафика и DDoS аттак.
Помимо ускорения, сервис CloudFlare бесплатно предоставляет:
- E-mail роутинг. Вы можете создавать любые почтовые адреса на своём домене (даже отлавливать письма на несуществующие ящики) и пересылать их на привычные вам Gmail или другие email.
- SSL сертификат. Вы можете настроить безопасное HTTPS соединение со своим сайтом получив бесплатный сертификат на 15 лет который признают все браузеры.
- Ускорение и оптимизации. Помимо обычного CDN вы можете настроить оптимизацию картинок на лету, конвертацию в формат WebP, выполнять минификацию кода, подключить современные протоколы для более быстрой загрузки сайта, и конечно же настроить кэширование.
- Защита. С помощью CloudFlare можно собирать подробную статистику посещений и фильтровать трафик, защитить админ-панель или корзину от взлома, отбить DDoS аттаки, фильтровать ботов и даже настроить доступ к внутренней инфраструктуре без использования VPN.
- Приложения, правила и прочие оптимизации на стороне. Вы можете настраивать редиректы в зависимости от события, запускать различные скрипты и даже добавлять на сайт приложения по типу поиска или чатов.
Помимо всего CloudFlare является регистратором доменов по себестоимости. К примеру, вы можете купить домен com за 8 долларов - такой цены вы нигде не найдёте. А также настроить стриминг, обрабатывать изображения, использовать их средства защиты.
Собственно, из всего выше перечисленного, нас, в первую очередь, интересует защита сайта.
CloudFlare можно использовать на любых сайтах и приложениях не зависимо от системы управления сайтом или хостинга.
Чтобы продолжить действовать по инструкции, ваш сайт должен использовать NS сервера от CloudFlare. О том, как подключить CloudFlare написано много статей и видео, поэтому этот вопрос я опущу.
Как защитить сайт с помощью CloudFlare?
Чтобы настроить фильтрацию трафика по странам, нужно:
- Создайте новое правило. Укажите название (можно на русском), условие (Country is in Russian Federation, Belarus) и действие (Block) и нажмите кнопку Deploy.
Как вы уже догадались, с помощью правил для файервола мы можем не только блокировать страны, а фильтровать по файлам куки, IP адресам, типам устройств, URL адресам, ботам и так далее.
Если на ваш сайт идут атаки с какой-то определённой страны, то данное решение поможет снизить нагрузку на хостинг и ограничить доступ к вашему сайту. Дополнительно можно включить режим DDos, когда атака идёт с разных IP.
Единственный минус, что такое решение может ограничить доступ поисковым ботам по типу Яндекса и вам начнут приходить письма, что ваш сайт недоступен. Мы когда-то ограничили доступ жителям США и чуть не выпали из Google.
Кстати, у меня есть статья о том, как защитить сайт на WordPress с помощью правил CloudFlare. Если разобраться, то эти правила можно применять к любым CMS и приложениям просто заменив URL.