Вопрос или проблема
Я под сильной атакой DoS уже 3 дня, и теперь я upgraded свой аккаунт CloudFlare до премиум. Теперь я знаю IP-адреса атаки, как я могу заблокировать их все на своем сервере Ubuntu 22.04?
Атаки идут как с IPV4, так и с IPV6. Я не могу заблокировать их в CloudFlare, потому что у меня нет бизнес-плана, мои варианты блокировки доступны только для бизнес-аккаунтов.
Вот скриншот:
-
Вы можете заблокировать любой IP с помощью этой команды:
sudo iptables -A INPUT -s <зловредный-IP> -j DROP
Вы можете разблокировать его с помощью:
sudo iptables -D INPUT -s <зловредный-IP> -j DROP
-
Вы также можете настроить ограничение по скорости.
iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -m limit --limit 10/min --limit-burst 20 -j ACCEPT \ iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -j DROP \
-A INPUT
: Добавляет правило в цепочку INPUT.
-p tcp
: Применяет правило к TCP-трафику.
--dport 80
: Указывает порт, к которому применяется правило (например, 80 для HTTP).
-s 192.168.1.0/24
: Указывает диапазон исходных IP в нотации CIDR.
-m limit
: Использует модуль ограничения для управления трафиком.
--limit 10/min
: Разрешает максимум 10 пакетов в минуту.
--limit-burst 20
: Разрешает до 20 пакетов изначально (всплеск) до того, как будет применено ограничение по скорости.
–j ACCEPT
: Принимает пакеты, соответствующие критериям ограничения.
-j DROP
: Отбрасывает пакеты, превышающие лимит. \
Ответ или решение
Если вы столкнулись с тяжелой DDoS-атакой и решили заблокировать IP-адреса атакующих на вашем сервере Ubuntu 22.04, это тот момент, когда необходимо действовать быстро и эффективно. Мы рассмотрим несколько подходов к блокировке IP-адресов, а также настройки дополнительных мер безопасности.
1. Блокировка IP-адресов с помощью iptables
Вы можете использовать утилиту iptables
, которая встроена в ядро Linux и позволяет настраивать правила фильтрации пакетов. Вот как это сделать:
Блокировка конкретного IP-адреса
Чтобы заблокировать конкретный IP-адрес (например, 192.0.2.1
), выполните следующую команду:
sudo iptables -A INPUT -s 192.0.2.1 -j DROP
Удаление блокировки
Если вам нужно разблокировать IP-адрес, используйте команду:
sudo iptables -D INPUT -s 192.0.2.1 -j DROP
2. Блокировка сетевых диапазонов
Если вы хотите заблокировать диапазон IP-адресов, используйте CIDR-нотацию:
sudo iptables -A INPUT -s 192.0.2.0/24 -j DROP
3. Настройка лимитов на трафик
Может быть полезно установить лимиты на трафик, чтобы предотвратить нагрузку на сервер:
# Ограничение входящих соединений на 10 в минуту, максимальная начальная возможность - 20
sudo iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -m limit --limit 10/min --limit-burst 20 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -j DROP
-A INPUT
: добавляет правило в цепочку INPUT.--dport 80
: указывает порт, к которому применяется правило (например, 80 для HTTP).-s 192.168.1.0/24
: указывает диапазон исходных IP-адресов.-j ACCEPT
: принимает пакеты, соответствующие критериям.-j DROP
: отбрасывает пакеты, превышающие лимит.
4. Сохранение правил
Важно сохранить новые правила iptables
, чтобы они не исчезли после перезагрузки. Используйте следующую команду:
sudo iptables-save | sudo tee /etc/iptables/rules.v4
Для IPv6:
sudo ip6tables-save | sudo tee /etc/iptables/rules.v6
5. Альтернативные средства
Если программа fail2ban
установлена на вашей системе, она может автоматически блокировать IP-адреса, с которых часто происходят атаки. Настройте конфигурацию для мониторинга логов вашего веб-сервера и блокировки подозрительных IP:
sudo apt-get install fail2ban
Измените конфигурацию в /etc/fail2ban/jail.local
для ваших нужд.
Заключение
Помните, что блокировка IP-адресов — это лишь один из способов борьбы с DDoS-атаками. Чтобы обеспечить безопасность вашего сервера, регулярные обновления, настройки брандмауэра и использование сервисов защиты от DDoS, таких как CloudFlare, могут помочь значительно улучшить защиту. Подходите к проблеме комплексно, чтобы минимизировать риски и сохранить доступность ваших ресурсов.
Следуйте этим рекомендациям, и вы повысите уровень защиты вашего сервера, даже под давлением атак.