Jak nainstalovat Fail2ban na Rocky Linux a AlmaLinux

Napsáno Krajta, Fail2ban je bezplatný a open-source Systém prevence narušení (IPS), který chrání server před útoky hrubou silou.

Po zadaném počtu nesprávných pokusů o heslo bude IP adrese klienta zakázán přístup do systému po zadanou dobu nebo dokud jej správce systému neodblokuje. Tímto způsobem je systém chráněn před opakovanými útoky hrubou silou od jednoho hostitele.

[ Mohlo by se vám líbit: Jak zabezpečit a chránit server OpenSSH ]

Fail2ban je vysoce konfigurovatelný a lze jej nastavit tak, aby zajišťoval nespočet služeb, jako je SSH, vsftpd, Apache, a Webmin.

V této příručce se zaměřujeme na to, jak můžete instalovat a konfigurovat Fail2ban na Rocky Linux a AlmaLinux.

Krok 1: Zajistěte, aby byl spuštěn Firewalld

Ve výchozím stavu, Rocky přichází s Firewalld běh. Pokud tomu tak však ve vašem systému není, začněte Firewalld provedením:

$ sudo systemctl start firewalld. 

Poté povolte spuštění při spuštění:

$ sudo systemctl povolit firewalld. 

Poté ověřte stav Firewalld

$ sudo systemctl status firewalld. 
Zkontrolujte stav Firewalld
Zkontrolujte stav Firewalld

Kromě toho můžete potvrdit všechny Firewalld aktuálně vymáhaná pravidla pomocí příkazu:

$ sudo firewall-cmd --list-all. 
Seznam pravidel Firewalld
Seznam pravidel Firewalld

Krok 2: Nainstalujte si EPEL do Rocky Linux

Jako požadavek na instalaci fail2ban a další potřebné balíčky, musíte nainstalovat EPEL úložiště, které poskytuje další vysoce kvalitní balíčky pro Distribuce založené na RHEL.

$ sudo dnf install epel-release. 
Nainstalujte si EPEL do Rocky Linux
Nainstalujte si EPEL do Rocky Linux

Krok 3: Nainstalujte si Fail2ban do Rocky Linux

S EPEL nainstalován, pokračujte a nainstalujte fail2ban a fail2ban-firewalld balík.

$ sudo dnf install fail2ban fail2ban-firewalld. 

Tím se nainstaluje server fail2ban a komponenta firewalld spolu s dalšími závislostmi.

Nainstalujte si Fail2ban do Rocky Linux
Nainstalujte si Fail2ban do Rocky Linux

Po dokončení instalace fail2ban spusťte službu fail2ban.

$ sudo systemctl start fail2ban. 

A povolte jej spuštění při spuštění.

$ sudo systemctl povolit fail2ban. 

Stav služby fail2ban můžete ověřit spuštěním příkazu:

$ sudo systemctl status fail2ban. 

Výstupem je potvrzení, že Fail2ban běží tak, jak bychom očekávali.

Zkontrolujte stav Fail2ban
Zkontrolujte stav Fail2ban

Krok 4: Konfigurace Fail2ban v Rocky Linux

Pokračujeme dále, musíme nakonfigurovat fail2ban, aby fungoval podle očekávání. V ideálním případě bychom upravili hlavní konfigurační soubor - /etc/fail2ban/jail.conf. To se však nedoporučuje. Jako alternativní řešení se zkopíruje obsah konfiguračního souboru jail.conf do vězení. místní soubor.

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

Nyní otevřete vězení. místní soubor pomocí preferovaného editoru.

$ sudo vim /etc/fail2ban/jail.local. 

Pod [VÝCHOZÍ] část, ujistěte se, že máte následující nastavení tak, jak vypadají.

bantime = 1 hod. findtime = 1h. maxretry = 5. 

Pojďme definovat atributy:

  • The bantime direktiva určuje dobu, po kterou bude klientovi zakázán přístup po neúspěšných pokusech o ověření.
  • The najít čas směrnice je doba nebo období, během kterého bude fail2ban uvažovat při zvažování opakovaných pokusů o nesprávné zadání hesla.
  • The maxretry parametr je maximální počet pokusů o nesprávné heslo, než bude vzdálenému klientovi zablokován přístup na server. Zde bude klient uzamčen po 5 selháních ověřování.

Ve výchozím nastavení funguje fail2ban s iptables. To však bylo ve prospěch brány firewall zastaralé. Musíme nakonfigurovat fail2ban, aby fungoval po boku firewalld místo iptables.

Spusťte tedy příkaz:

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

Chcete -li použít změny, restartujte fail2ban:

$ sudo systemctl restart fail2ban. 

Krok 5: Zabezpečení služby SSH pomocí Fail2ban

Ve výchozím nastavení fail2ban neblokuje žádného vzdáleného hostitele, dokud nepovolíte konfiguraci vězení pro službu, kterou chcete zabezpečit. Konfigurace vězení je uvedena v souboru /etc/fail2ban/jail.d cestu a přepíše konfiguraci uvedenou v souboru jail.local.

V tomto příkladu vytvoříme konfigurační soubor vězení pro ochranu služby SSH. Vytvořte proto soubor vězení SSH.

$ sudo vim /etc/fail2ban/jail.d/sshd.local. 

Dále vložte následující řádky:

[sshd] enabled = true # Přepsat výchozí globální konfiguraci. # pro konkrétní vězení sshd. bantime = 1 d. maxretry = 3.

Ve výše uvedené konfiguraci bude vzdálenému hostiteli zakázán přístup do systému na 1 den po 3 neúspěšných pokusech o přihlášení SSH. Uložte změny a restartujte službu fail2ban.

$ sudo systemctl restart fail2ban. 

Dále ověřte stav konfigurace vězení pomocí fail2ban-klient nástroj příkazového řádku.

$ sudo fail2ban-client status. 

Z výstupu vidíme, že máme nakonfigurováno 1 vězení pro službu s názvem „sshd’.

Zkontrolujte stav vězení Fail2ban
Zkontrolujte stav vězení Fail2ban

Kromě toho můžete potvrdit maxretry hodnota vězení sshd pomocí možnosti get.

$ sudo fail2ban-client get sshd maxretry 3. 

Hodnota se vytiskne 3 by měl odpovídat tomu, co jste zadali v sshd.local soubor.

Krok 6: Testování konfigurace Fail2ban

Po nastavení fail2ban a vytvoření konfiguračního souboru vězení pro službu SSH jdeme na proveďte zkušební běh a simulujte 3 neúspěšná přihlášení zadáním nesprávného hesla pro každé heslo výzva.

Přejděte tedy ke vzdálenému systému Linux a zkuste se přihlásit pomocí nesprávného hesla. Po 3 neúspěšných pokusech bude připojení přerušeno a jakýkoli další pokus o opětovné připojení bude blokován, dokud neuplyne doba trvání zákazu.

Testování Fail2ban v Linuxu
Testování Fail2ban v Linuxu

Chcete -li získat přehled o zablokovaných klientských systémech, zkontrolujte stav vězení.

$ sudo fail2ban-client status sshd. 
Zkontrolujte stav bloku Fail2ban
Zkontrolujte stav bloku Fail2ban

Chcete -li zrušit nebo odebrat klienta z vězení, spusťte příkaz:

$ sudo fail2ban-client unban 192.168.2.102. 

Ještě jednou zkontrolujte stav vězení a ujistěte se, že klient není zahrnut do seznamu zakázaných IP adres.

$ sudo fail2ban-client status sshd. 
Zkontrolujte seznam bloků Fail2ban
Zkontrolujte seznam bloků Fail2ban

Jak jsme viděli, Fail2ban je velmi užitečný nástroj při odvrácení vetřelců, kteří se snaží narušit váš systém Linux. Funguje to ve spojení s Firewalldem k zákazu klientských systémů na zadanou dobu po určitém počtu neúspěšných pokusů o přihlášení. Přitom poskytuje další vrstvu ochrany pro váš server Linux.

Teachs.ru