potencjalne konflikty ufw i fail2ban


45

Czy uruchomienie zarówno fail2ban, jak i ufw spowoduje problemy? Zauważyłem, że fail2ban modyfikuje reguły iptables, ale ufw już zdefiniował mnóstwo reguł iptables ... więc nie jestem pewien, czy fail2ban je zepsuje.


Która wersja Ubuntu ? („ufw” poprawił się nieznacznie między 10,04 LTS a 11.x )
David 6

@ david6: przepraszam, nie pamiętam, jaką wersję uruchomiłem, kiedy pierwotnie zadałem pytanie.
Adam Monsen

Odpowiedzi:


49

Możesz używać ufw i fail2b razem, ale jak wskazano wcześniej, kolejność reguł (ufw) jest ważna.

Po wyjęciu z pudełka fail2ban używa iptables i najpierw wstawia reguły w łańcuchu INPUT. Nie spowoduje to żadnej szkody ani konfliktu z ufw.

Jeśli chcesz w pełni zintegrować fail2ban, aby używać ufw (a nie iptables). Będziesz musiał edytować wiele plików, w tym

/etc/fail2ban/jail.local

jail.local to miejsce, w którym definiujesz swoje usługi, w tym port, na którym nasłuchują (pomyśl o zmianie ssh na port inny niż domyślny) i jakie działania podjąć.

** Uwaga *: Nigdy nie edytuj pliku jail.conf , należy wprowadzić zmiany jail.local! Ten plik zaczyna się od tego:

# 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

Korzystając z ssh jako przykładu, zwróć również uwagę na definicję portu innego niż domyślny =)

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

Następnie skonfigurujesz fail2ban do używania ufw w (jeden plik .conf dla każdej usługi)

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

Składnia jest następująca

[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

Uwaga: Skonfigurujesz fail2ban, aby używał ufw i wstawiał PIERWSZE reguły przy użyciu składni „insert 1”. Usunięcie znajdzie regułę bez względu na kolejność.

Jest ładny wpis na blogu, który bardziej szczegółowo tutaj

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

[EDYCJA] Dla Ubuntu 16.04+

domyślnie „ defaults-debian.conf/etc/fail2ban/jail.dz zawartością

[sshd]
enabled = true

aktywuje ochronę ssh dla fail2ban.

Musisz ustawić to na fałsz.

Następnie stwórz jail.local, tak jak zrobiłbyś to ogólnie, mój będzie taki:

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

W domyślnej instalacji fail2ban znajduje się już plik ufw.conf, więc nie trzeba go tworzyć.

Jedyną konkretną zmianą dla twojego jail.local byłaby linia działania, w której musisz umieścić aplikację dotyczącą ochrony i to, co chcesz uzyskać w wyniku.

ufw ma tendencję do automatycznego wykrywania określonej ilości aplikacji działających w sieci. Aby mieć listę wystarczy wpisać sudo ufw app list. Rozróżnia małe i wielkie litery.

przeładujesz fail2ban, a nie zobaczysz już łańcucha fail2ban, a jeśli jakikolwiek adres IP dostanie blok, zobaczysz go sudo ufw status


7
Krótko mówiąc: bez wykonywania integracji, jak wyjaśniono, zarówno ufw, jak i fail2ban działają tak, jak powinny. Fail2ban wstawi swoje definicje blokowania przed zastosowaniem reguł ufw. Z drugiej strony, jeśli chcesz, aby bloki były wyświetlane ufw status, potrzebujesz integracji. Oprócz ufw statuspojawienia się bloków , nie byłoby innych korzyści? Szczególnie dlatego, że autor bloga mówi co następuje: po wyjęciu z pudełka fail2ban współpracuje z regułami iptables, jednak te nie grają ładny z naszych prostych poleceń UFW (...)
Bouke

1
Dokładnie. „Nie baw się dobrze” oznacza, że ​​nie pojawia się, gdy sprawdzasz je ze statusem ufw. Korzyści z integracji polegają na tym, że używasz jednego narzędzia, ufw, do zarządzania i wyświetlania reguł zapory. Nie ma nic złego w korzystaniu z fail2ban w stanie gotowym do użycia pod względem funkcji. Problem polegałby na tym, że aby zobaczyć reguły fail2ban, należy użyć iptables -L -v -n, i jak widać, przy użyciu ufw dane wyjściowe są długie i trudne do naśladowania. Zaletą integracji jest to, że reguły i składnia są łatwiejsze do zrozumienia (zakładając, że właśnie dlatego używasz ufw)
Panther

Dla przypomnienia, jeśli klikniesz gdziekolwiek w połączonej witrynie, nastąpi przekierowanie do złośliwego oprogramowania / adware.
Antonio Cangiano,

@AntonioCangiano - Link działa tutaj dobrze, sprawdź swoją przeglądarkę i DNS
Panther

@ bodhi.zazen Każde kliknięcie połączonego artykułu przekieruje na nieuczciwą stronę internetową, jak słusznie zauważył Antonio. Niechętnie korzystam z porad dotyczących bezpieczeństwa z takiego artykułu.
Goran Miskovic

4

Używam fail2ban i ufw od lat na kilku różnych komputerach i nigdy nie miałem żadnych problemów. Aby skonfigurować fail2ban:

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

Teraz edytuj plik tak, jak chcesz, na przykład jeśli chcesz zablokować nieautoryzowane ssh, znajdź linie:

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

jeśli „włączone” jest ustawione na „fałsz”, zmień to na „prawda”, jak wspomniano tutaj. Po ustawieniu reguł musisz ponownie uruchomić proces fail2ban:

sudo /etc/init.d/fail2ban restart

Jeśli otworzyłeś port 22 na swojej zaporze ufw fail2ban zablokuje klientów, którzy próbują połączyć się więcej niż 6 razy bez powodzenia, nie zepsuje twojej zapory.


4

Zainstalowanie 0.9.5 fail2ban zawierało ufwakcję, którą po prostu musiałem ustawić dlabanaction


2
Dla przypomnienia, akcja jest obecna również w wersji 0.8.13
Joril
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.