Všechny servery, které jsou přístupné z Internetu, jsou vystaveny riziku útoků malwaru. Například pokud máte aplikaci, která je přístupná z veřejné sítě, mohou útočníci pomocí pokusů hrubou silou získat přístup k aplikaci.
Fail2ban je nástroj, který pomáhá chránit váš počítač se systémem Linux před hrubou silou a jinými automatizovanými útoky sledováním škodlivých aktivit v protokolech služeb. Ke skenování souborů protokolu používá regulární výrazy. Počítají se všechny položky odpovídající vzorům a když jejich počet dosáhne určité předdefinované prahové hodnoty, Fail2ban po určitou dobu zakáže útočnou IP pomocí systémového firewallu. Po uplynutí doby zákazu bude adresa IP odstraněna ze seznamu zákazů.
Tento článek vysvětluje, jak nainstalovat a nakonfigurovat Fail2ban na Debian 10.
Instalace Fail2ban na Debian #
Balíček Fail2ban je součástí výchozích úložišť Debianu 10. Chcete-li jej nainstalovat, spusťte následující příkaz jako root nebo uživatel s oprávněními sudo:
sudo apt aktualizace
sudo apt install fail2ban
Po dokončení se automaticky spustí služba Fail2ban. Můžete to ověřit kontrolou stavu služby:
sudo systemctl status fail2ban
Výstup bude vypadat takto:
● fail2ban.service - Fail2Ban Service Loaded: loaded (/ lib / systemd / system / fail2ban.servis; povoleno; přednastavení dodavatele: povoleno) Aktivní: aktivní (běží) od St 2021-03-10 18:57:32 UTC; Před 47. roky…
A je to. V tomto okamžiku máte na svém serveru Debian spuštěn Fail2Ban.
Konfigurace Fail2ban #
Výchozí instalace Fail2ban je dodávána se dvěma konfiguračními soubory, / etc / fail2ban / vězení.konf
a / etc / fail2ban / vězení.d / defaults-debian.konf
. Tyto soubory byste neměli upravovat, protože při aktualizaci balíčku mohou být přepsány.
Fail2ban čte konfigurační soubory v následujícím pořadí. Každý .místní
soubor přepíše nastavení z .konf
soubor:
/ etc / fail2ban / vězení.konf
/ etc / fail2ban / vězení.d / *.konf
/ etc / fail2ban / vězení.místní
/ etc / fail2ban / vězení.d / *.místní
Nejjednodušší způsob, jak konfigurovat Fail2ban, je zkopírovat soubor vězení.konf
na vězení.místní
a upravit .místní
soubor. Pokročilejší uživatelé si mohou postavit .místní
konfigurační soubor od nuly. The .místní
soubor nemusí obsahovat všechna nastavení od odpovídajícího .konf
soubor, pouze ty, které chcete přepsat.
Vytvořit .místní
konfigurační soubor zkopírováním výchozího vězení.konf
soubor:
sudo cp / etc / fail2ban / jail.conf, místní
Chcete-li začít konfigurovat otevřený server Fail2ban, vězení.místní
soubor s textovým editorem:
sudo nano / etc / fail2ban / jail.místní
Soubor obsahuje komentáře popisující, co jednotlivé možnosti konfigurace dělají. V tomto příkladu změníme základní nastavení.
Seznam povolených IP adres #
IP adresy, rozsahy IP adres nebo hostitelé, které chcete vyloučit ze zákazu, lze přidat do ignorovat
směrnice. Zde byste měli přidat místní IP adresu vašeho PC a všechny ostatní počítače, které chcete přidat na seznam povolených.
Odkomentujte řádek začínající na ignorovat
a přidejte své IP adresy oddělené mezerou:
ignoreip = 127.0.0.1/8 :: 1123.123.123.123 192.168.1.0/24
Nastavení zákazu #
bantime
, najít čas
, a maxretry
možnosti nastavit čas zákazu a podmínky zákazu.
bantime
je doba, po kterou je IP zakázána. Pokud není zadána žádná přípona, použije se výchozí hodnota sekund. Ve výchozím nastavení je bantime
hodnota je nastavena na 10 minut. Většina uživatelů dává přednost nastavení delší doby zákazu. Změňte hodnotu podle svých představ:
bantime = 1d
Chcete-li trvale zakázat IP, použijte záporné číslo.
najít čas
je doba mezi počtem poruch před nastavením zákazu. Například pokud je Fail2ban nastaven na zákaz IP po pěti poruchách (maxretry
, viz níže), tyto poruchy musí nastat v rámci najít čas
doba trvání.
findtime = 10 m
maxretry
je počet selhání před zakázáním IP. Výchozí hodnota je nastavena na pět, což by pro většinu uživatelů mělo být v pořádku.
maxretry = 5
E-mailová oznámení #
Fail2ban může posílat e-mailová upozornění, když byla IP zakázána. Chcete-li přijímat e-maily, musíte mít na serveru nainstalován SMTP a změnit výchozí akci, která zakazuje pouze IP na % (action_mw) s
, Jak je ukázáno níže:
action =% (action_mw) s
% (action_mw) s
zakáže problematickou IP adresu a odešle e-mail s hlášením whois. Pokud chcete do e-mailu zahrnout příslušné protokoly, nastavte akci na % (action_mwl) s
.
Můžete také změnit odesílací a přijímající e-mailové adresy:
/ etc / fail2ban / vězení.místnídestemail = admin @ linuxize.com sender = root @ linuxize.com
Fail2ban Jails #
Fail2ban používá koncept vězení. Vězení popisuje službu a zahrnuje filtry a akce. Počítají se položky protokolu odpovídající vzoru hledání a po splnění předem definované podmínky se provedou odpovídající akce.
Fail2ban je dodáván s řadou vězení za různé služby. Můžete také vytvořit vlastní konfigurace vězení. Ve výchozím nastavení je povoleno pouze vězení ssh.
Chcete-li povolit vězení, musíte přidat enabled = true
po titulu vězení. Následující příklad ukazuje, jak povolit vězení postfix:
[postfix] enabled = true port = smtp, ssmtp filter = postfix logpath = / var / log / mail.log
Nastavení, o kterém jsme hovořili v předchozí části, lze nastavit pro každé vězení. Zde je příklad:
/ etc / fail2ban / vězení.místní[sshd] enabled = true maxretry = 3 findtime = 1d bantime = 4w ignoreip = 127.0.0.1/8 11.22.33.44
Filtry jsou umístěny v / etc / fail2ban / filter.d
adresář uložený v souboru se stejným názvem jako vězení. Pokud máte vlastní nastavení a zkušenosti s regulárními výrazy, můžete filtry doladit.
Při každé změně konfiguračního souboru je nutné restartovat službu Fail2ban, aby se změny projevily:
sudo systemctl restart fail2ban
Fail2ban Client #
Fail2ban se dodává s názvem nástroje příkazového řádku fail2ban-client
které můžete použít k interakci se službou Fail2ban.
Chcete-li zobrazit všechny dostupné možnosti, vyvolajte příkaz pomocí -h
volba:
fail2ban-client -h
Tento nástroj lze použít k zákazu / odblokování adres IP, ke změně nastavení, restartování služby atd. Zde je několik příkladů:
Zjistěte aktuální stav serveru:
sudo fail2ban-status klienta
Zkontrolujte stav vězení:
sudo fail2ban-client status sshd
Zrušit zákaz IP:
sudo fail2ban-client set sshd unbanip 11.22.33.44
Zakázat IP:
sudo fail2ban-client set sshd banip 11.22.33.44
Závěr #
Ukázali jsme vám, jak nainstalovat a nakonfigurovat Fail2ban na Debian 10.
Další informace o tomto tématu najdete v dokumentaci Fail2ban .
Pokud máte dotazy, můžete zanechat komentář níže.