Блокировка по IP

Экспериментальная функция

Функция блокировки по IP является экспериментальной. Функция может быть изменена без предупреждения.

Для блокировки по IP с помощью iptables используется готовый скрипт — block_with_iptables.rb. Для успешного применения блокировок по IP фильтрующему узлу нужно регулярно получать из облака Wallarm обновленный список адресов, принадлежащих атакующим и подлежащих блокировке.

Белый список

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

Настройте блокировку по IP

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

  2. Установите пакет wallarm_extra_scripts. Пакет находится в репозитории Wallarm.

    Для установки пакета выполните команду:

    Debian 8.x (jessie)
    Debian 9.x (stretch)
    Ubuntu 14.04 LTS (trusty)
    Ubuntu 16.04 LTS (xenial)
    Ubuntu 18.04 LTS (bionic)
    CentOS 6.x
    CentOS 7.x
    apt-get install wallarm-extra-scripts
    apt-get install wallarm-extra-scripts
    apt-get install wallarm-extra-scripts
    apt-get install wallarm-extra-scripts
    apt-get install wallarm-extra-scripts
    yum install wallarm-extra-scripts
    yum install wallarm-extra-scripts

    Cкрипт block_with_iptables.rb будет установлен автоматически. Предлагаемый скрипт при каждом запуске создает или обновляет цепочку wallarm_blacklist в таблице filter. Для каждого заблокированного адреса добавляется правило REJECT.

  3. Создайте и сконфигурируйте таблицы iptables, указав какой трафик будет блокироваться. Например, для блокировки всего трафика, поступающего на 80 и 443 порты, выполните команды:

    shell
    iptables -N wallarm_check
    iptables -N wallarm_blacklist
    iptables -A INPUT -p tcp --dport 80 -j wallarm_check
    iptables -A INPUT -p tcp --dport 443 -j wallarm_check
    iptables -A wallarm_check -j wallarm_blacklist

  4. Настройте регулярный запуск скрипта. Например, чтобы создать файл /etc/cron.d/wallarm-blacklist-sync и настроить запуск скрипта каждые 5 минут, выполните команды:

    PATH=/bin:/sbin:/usr/bin:/usr/sbin
      */5 *  * * *  root  timeout 90 /usr/share/wallarm-extra-scripts/block_with_iptables.rb »/path/to/log 2>&1
    
  5. Если необходимо, настройте мониторинг работы скрипта. Для этого можно отслеживать время модификации (mtime) файла /tmp/.wallarm.blacklist-sync.last, которое будет изменяться при каждом успешном запуске скрипта.

  6. Добавление адресов в белый список.

    Чтобы внести несколько IP-адресов в белый список, выполните следующую команду для диапазона адресов. Вместо 1.2.3.4/30, укажите нужное значение:

    iptables -I wallarm_check -s 1.2.3.4/30 -j RETURN
    

    Чтобы внести один IP-адрес в белый список, замените значение 1.2.3.4 на необходимый адрес:

    iptables -I wallarm_check -s 1.2.3.4 -j RETURN
    

results matching ""

    No results matching ""