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
Poniższy poradnik opisuje sposób instalacji KeePass w systemie Ubuntu. Całość wykonamy za pomocą kilku poleceń…
Master PDF Editor to wszechstronny program PDF, który zawiera wiele funkcji. Oprócz tworzenia i edycji…
Iotop jest prostym narzędziem dla systemów Uniksowych umożliwiającym monitorowanie użycia dowolnego nośnika pamięci flash/hdd/ssd w…
Możesz oddzielić dwa lub więcej poleceń za pomocą średników (;), Średnik (;): służy do oddzielania…
Poniższy poradnik opisuje w jaki sposób za pomocą konsoli możemy dokonać edycji danych zdjęcia exif.…
Poniższy poradnik opisuje sposób instalacji Rocket.Chat W systemie Rocky Linux 8 Całość bardzo prosto zainstalujemy…