потенциальные конфликты ufw и fail2ban

37

Будет ли работать как fail2ban, так и ufw вызвать проблемы? Я заметил, что fail2ban изменяет правила iptables, но у ufw уже есть тонна правил iptables, определенных ... поэтому я не уверен, что fail2ban испортит их.

    
задан Adam Monsen 27.07.2011 в 23:16
источник

3 ответа

43

Вы можете использовать ufw и fail2b вместе, но, как указано выше, порядок правил (ufw) - это то, что важно.

Из коробки, fail2ban использует iptables и вставляет правила сначала в цепочку INPUT. Это не принесет никакого вреда или конфликта с ufw.

Если вы хотите полностью интегрировать fail2ban для использования ufw (а не iptables). Вам нужно будет отредактировать несколько файлов, включая

/etc/fail2ban/jail.local

jail.local - это то, где вы определяете свои услуги, включая порт, который они прослушивают (подумайте, изменяя ssh на порт, отличный от стандартного) и какие действия предпринять.

** Обратите внимание: * Никогда не редактируйте jail.conf , ваши изменения должны быть сделаны в jail.local ! Этот файл начинается с этого:

# Changes:  in most of the cases you should not modify this
#           file, but provide customizations in jail.local file,
#           or separate .conf files under jail.d/ directory

Используя ssh в качестве примера, обратите внимание и на определение нестандартного порта =)

[ssh]
enabled = true
banaction = ufw-ssh
port = 2992
filter = sshd
logpath = /var/log/auth.log
maxretry = 3

Затем вы настраиваете fail2ban для использования ufw в (один .conf-файл для каждой службы)

/etc/fail2ban/action.d/ufw-ssh.conf

Синтаксис

[Definition]
actionstart =
actionstop =
actioncheck =
actionban = ufw insert 1 deny from <ip> to any app OpenSSH
actionunban = ufw delete deny from <ip> to any app OpenSSH

Примечание. Вы настраиваете fail2ban для использования ufw и вставки новых правил FIRST с помощью синтаксиса «insert 1». Удалить будет найдено правило независимо от порядка.

Есть хорошая запись в блоге, в которой подробно описано здесь

Ссылка

[EDIT] Для ubuntu 16.04+

по умолчанию « defaults-debian.conf » в /etc/fail2ban/jail.d с содержимым

[sshd]
enabled = true

активирует ssh защиту fail2ban.

Вам нужно поставить его на false.

Затем создайте jail.local, как и вы, в общем, мои будут такими:

[ssh-with-ufw] 
enabled = true 
port = 22 
filter = sshd 
action = ufw[application="OpenSSH", blocktype=reject] 
logpath = /var/log/auth.log 
maxretry = 3

В установке fail2ban по умолчанию уже установлен ufw.conf, поэтому его не нужно создавать.

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

ufw обычно автоматически обнаруживают определенное количество приложений, работающих в сети. Чтобы список просто набирал sudo ufw app list . Это чувствительно к регистру.

перезагрузите fail2ban, и вы больше не увидите цепочку fail2ban, и если какой-либо IP-адрес получит блок, вы увидите его в sudo ufw status

    
ответ дан Panther 05.12.2011 в 22:09
источник
5

Я много лет использую fail2ban и ufw на нескольких компьютерах и никогда не испытывал никаких проблем. Чтобы установить fail2ban:

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano jail.local

Теперь отредактируйте файл так, как вы хотите, например, если вы хотите заблокировать несанкционированный ssh, найдите строки:

[ssh]
enabled  = true
port     = ssh
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 6

Если для параметра «enabled» установлено значение «false», измените его на «true», как указано здесь. После того, как вы установите правила, вам необходимо перезапустить процесс fail2ban:

sudo /etc/init.d/fail2ban restart

Если вы открыли порт 22 на своем брандмауэре ufw fail2ban, он запретит клиентам, которые пытаются подключиться более 6 раз без успеха, он не сломает ваш брандмауэр.

    
ответ дан enedene 05.12.2011 в 22:33
2

Установка 0.9.5 fail2ban включала действие ufw , которое мне просто нужно было установить для banaction

    
ответ дан Carson Reinke 26.12.2016 в 17:55