Рассмотрим вопрос ограничения доступа большого количества нежелательных пользователей на сайте под управлением Битрикс (отражение простой DDoS атаки на Битрикс). В битриксе, версии бизнес и старше есть модуль веб-аналитика.
Он позволяет блокировать пользователей при превышении активности.
Но количество посещений может быть такое, что может падать целиком сервер, не давая возможности обрабатывать запросы битриксу.
Во время такой нагрузки сайт падал с ошибкой 502. При этом nginx фиксировал большое количество запросов за короткое время.
Решилось установкой и настройкой на сервере программы fail2ban. Ниже я приведу пример конфигурации, который помог именно в моем случае. В составе программы имеется множество фильтров для защиты от различных атак.
установка репозитория:
yum update && sudo yum install epel-release
установка программы
sudo yum install fail2ban
На моем сервере используется виртуальная машина битрикс, с установленными nginx +apache. Поэтому далее необходимо настроить fai2ban на работу с nginx.
В файле /etc/nginx/bx/conf/bitrix.conf во все разделы location вставил следующий код:
limit_req zone=lr_zone burst=100 nodelay;
Копируем дефолтный jail.conf:
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
в нём пишем:
[DEFAULT]
bantime = 600
banaction = iptables-ipset-proto6
[sshd]
enabled = true
maxretry = 6
[nginx-badbots]
enabled = true
filter = nginx-badbots
port = http,https
logpath = /var/log/nginx/mos_access.log
bantime = 600
maxretry = 2
[nginx-http-auth]
enabled = true
filter = nginx-http-auth
port = http,https
logpath = /var/log/nginx/mos_access.log
запуск программы с помощью системы управления службами
sudo systemctl start fail2ban
перезапускаем nginx командой service nginx restart
видим, если все правильно, падение нагрузки на сервер, и множественные записи в /var/log/ fail2ban.log
Я рассмотрел частный вариант защиты виртуальной машины Битрикс от простой DDoS атаки.
Более сложным атакам прекрасно противостоит сервис CloudFlare. У него есть один бесплатный тариф. Для включения защиты надо зарегистрироваться на сервисе, добавить свой сайт. Затем поменять ваши ns-сервера на сервера cloudflare. После этого защита включится. На бесплатном тарифе есть 3 правила Firewall. Например, можно заблокировать весь траффик кроме России.
Надеюсь, моя статья вам чем-то помогла.
Простейшая защита от ddos атак для Битрикс
Статьи на тему: Оставить комментарий