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

45

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

Адам Монсен
источник
Какая версия Ubuntu ? («ufw» немного улучшился между 10.04 LTS и 11.x )
david6
@ david6: извините, я не помню, какую версию я использовал, когда первоначально задавал вопрос.
Адам Монсен

Ответы:

50

Вы можете использовать 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 с помощью «1» вставки синтаксиса. Удаление найдет правило независимо от порядка.

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

http://blog.vigilcode.com/2011/05/ufw-with-fail2ban-quick-secure-setup-part-ii/

[РЕДАКТИРОВАТЬ] Для Ubuntu 16.04+

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

[sshd]
enabled = true

будет активирована защита по ssh от fail2ban.

Вы должны поставить это в ложь.

Затем создайте 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

пантера
источник
7
Итак, вкратце: без интеграции, как объяснено, и ufw, и fail2ban работают так, как должны. Fail2ban вставит определения блокировки перед применением правил ufw. С другой стороны, если вы хотите, чтобы блоки отображались в ufw status, вам нужна интеграция. Помимо наличия блоков ufw status, не было бы никакой другой выгоды? В частности, потому что автор блога говорит следующее: « Из коробки» Fail2ban работает с правилами iptables, однако они не очень хороши с нашими более простыми командами UFW (...)
bouke
1
В точку. «Не играй красиво» означает, что ты не появляешься при проверке статуса ufw. Преимущества интеграции заключаются в том, что вы используете один инструмент ufw для управления и отображения правил брандмауэра. Нет ничего плохого в использовании fail2ban, как есть, с точки зрения функциональности. Проблема заключается в том, что для просмотра правил fail2ban вам потребуется использовать iptables -L -v -n, и, как вы уже можете видеть, при использовании ufw вывод будет длинным и трудным для следования. Преимущество интеграции заключается в том, что правила и синтаксис легче понять (при условии, что именно поэтому вы используете ufw в первую очередь)
Panther
Напомним, что если вы нажмете где-нибудь на сайте, на который вы ссылаетесь, вы будете перенаправлены на вредоносное / рекламное ПО.
Антонио Канджано,
@AntonioCangiano - Ссылка здесь работает нормально, проверьте ваш браузер и DNS
Panther
@ bodhi.zazen Любой клик на связанной статье будет перенаправлять на мошеннический веб-сайт, как правильно указал Антонио. Я не хотел бы принимать советы по безопасности из такой статьи.
Горан Мишкович
4

Я годами использовал 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
источник
4

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

Карсон Рейнке
источник
2
Для записи, действие присутствует и в версии 0.8.13
Joril