Instalacja Fail2ban w Alma Linux 8

Fail2Ban jest aplikacją, która powinna być zainstalowana w zasadzie na każdej maszynie działającej pod kontrolą Unix / Linux / BSD, wystawioną na świat (zewnętrzne IP). Głównym zadaniem Fail2Ban jest blokada podejrzanych, zakończonych niepowodzeniem prób logowania się do usług świadczonych przez nasz serwer. Podsumowując zabezpiecza przed atakami typu brute force.

Działanie programu Fail2Ban opiera się na analizie logów i wychwytywaniu nieautoryzowanych prób logowania się do różnego rodzaju usług (np. ssh, smtp, pop3, imap…), po czym blokuje adres IP atakującego za pomocą reguł iptables lub dodając wpis do pliku /etc/hosts.deny

Aby dokonać instalacji na początek musimy zainstalować repozytorium epel:

dnf install epel-release -y

Kolejny krok to instalacja Fail2Ban

dnf install fail2ban fail2ban-firewalld -y

Uruchamiamy w systemie poleceniami:

systemctl start fail2ban

systemctl enable fail2ban

Skonfiguruj Fail2Ban

Główny plik konfiguracyjny Fail2Ban znajduje się w /etc/fail2ban/jail.conf. Dobrym pomysłem jest stworzenie kopii głównego pliku konfiguracyjnego. Możesz go utworzyć za pomocą następującego polecenia:

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

Domyślnie Fail2Ban używa zapory Iptables. Aby włączyć obsługę firewalld, uruchom następujące polecenie:

mv /etc/fail2ban/jail.d/00-firewalld.conf /etc/fail2ban/jail.d/00-firewalld.local

Następnie uruchom ponownie usługę Fail2Ban, aby zastosować zmiany:

systemctl restart fail2ban

Domyślnie Fail2Ban nie jest skonfigurowany do blokowania zdalnych adresów IP. Będziesz musiał skonfigurować plik konfiguracyjny więzienia Fail2Ban dla każdej usługi, którą chcesz chronić.

Aby chronić usługę SSH, utwórz plik konfiguracyjny więzienia dla SSH za pomocą następującego polecenia:

nano /etc/fail2ban/jail.d/sshd.local

Dodaj następujące wiersze:

# Ta konfiguracja zablokuje zdalny host na 2 godziny po 3 nieudanych próbach logowania SSH. [sshd] enabled = true bantime = 2h maxretry = 3

Po zakończeniu zapisz i zamknij plik, a następnie uruchom ponownie usługę SSH, aby zastosować zmiany:

systemctl restart fail2ban

Możesz teraz zweryfikować konfigurację za pomocą następującego polecenia:

fail2ban-client status

Skonfigurowane więzienie otrzymasz w następujący sposób:

Status |- Number of jail:	1 `- Jail list:	sshd

Aby sprawdzić, czy w SSH nie ma zakazanego adresu IP, uruchom następujące polecenie:

fail2ban-client status sshd

Otrzymasz listę wszystkich zbanowanych adresów IP w następującym wyniku:

Status for the jail: sshd |- Filter | |- Currently failed:	6 | |- Total failed:	15 | `- Journal matches:	_SYSTEMD_UNIT=sshd.service + _COMM=sshd `- Actions |- Currently banned:	2 |- Total banned:	2 `- Banned IP list:	96.9.67.48 43.154.142.8

Jeśli chcesz ręcznie odblokować adres IP, uruchom następujące polecenie:

fail2ban-client unban remote-ip-address

remote-ip-address ZASTĘPUJEMY ADRESEM IP

Dodaj komentarz