GNU/Linux >> Znalost Linux >  >> Debian

Nainstalujte a nakonfigurujte Fail2ban na Debian 10

Všechny servery, které jsou dostupné z internetu, jsou ohroženy útoky malwaru. Pokud máte například aplikaci, která je přístupná z veřejné sítě, útočníci mohou k získání přístupu k aplikaci použít hrubou sílu.

Fail2ban je nástroj, který pomáhá chránit váš počítač se systémem Linux před hrubou silou a dalšími automatizovanými útoky tím, že monitoruje protokoly služeb, zda neobsahují škodlivou aktivitu. Ke skenování souborů protokolu používá regulární výrazy. Započítávají se všechny položky odpovídající vzorům, a když jejich počet dosáhne určité předem definované prahové hodnoty, Fail2ban zakáže porušovanou IP pomocí systémového firewallu na určitou dobu. Po uplynutí doby zákazu bude IP adresa odstraněna ze seznamu zákazů.

Tento článek vysvětluje, jak nainstalovat a nakonfigurovat Fail2ban na Debianu 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 právy sudo:

sudo apt updatesudo apt install fail2ban

Po dokončení se služba Fail2ban automaticky spustí. 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.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2021-03-10 18:57:32 UTC; 47s ago
...

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/jail.conf a /etc/fail2ban/jail.d/defaults-debian.conf . Tyto soubory byste neměli upravovat, protože mohou být při aktualizaci balíčku přepsány.

Fail2ban čte konfigurační soubory v následujícím pořadí. Každý .local soubor přepíše nastavení z .conf soubor:

  • /etc/fail2ban/jail.conf
  • /etc/fail2ban/jail.d/*.conf
  • /etc/fail2ban/jail.local
  • /etc/fail2ban/jail.d/*.local

Nejjednodušší způsob, jak nakonfigurovat Fail2ban, je zkopírovat jail.conf na jail.local a upravte .local soubor. Pokročilejší uživatelé mohou vytvořit .local konfigurační soubor od začátku. .local soubor nemusí obsahovat všechna nastavení z odpovídajícího .conf pouze ty, které chcete přepsat.

Vytvořte .local konfigurační soubor zkopírováním výchozího jail.conf soubor:

sudo cp /etc/fail2ban/jail.{conf,local}

Chcete-li zahájit konfiguraci serveru Fail2ban, otevřete jail.local soubor pomocí vašeho textového editoru:

sudo nano /etc/fail2ban/jail.local

Soubor obsahuje komentáře popisující, co každá možnost konfigurace dělá. V tomto příkladu změníme základní nastavení.

Adresy IP na seznam povolených #

IP adresy, rozsahy IP nebo hostitele, které chcete vyloučit ze zákazu, lze přidat do ignoreip směrnice. Zde byste měli přidat IP adresu vašeho místního počítače a všechny ostatní počítače, které chcete přidat na seznam povolených.

Odkomentujte řádek začínající ignoreip a přidejte své IP adresy oddělené mezerou:

/etc/fail2ban/jail.local
ignoreip = 127.0.0.1/8 ::1 123.123.123.123 192.168.1.0/24

Nastavení zákazu #

bantime , findtime a maxretry možnosti nastavují dobu zákazu a podmínky zákazu.

bantime je doba, po kterou je IP zakázána. Pokud není zadána žádná přípona, výchozí hodnota je sekund. Ve výchozím nastavení 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ého:

/etc/fail2ban/jail.local
bantime  = 1d

Chcete-li IP adresu trvale zakázat, použijte záporné číslo.

findtime je doba mezi počtem selhání před nastavením zákazu. Pokud je například Fail2ban nastaven tak, aby zakázal IP adresu po pěti selháních (maxretry , viz níže), k těmto selháním musí dojít během findtime trvání.

/etc/fail2ban/jail.local
findtime  = 10m

maxretry je počet selhání před zakázáním IP. Výchozí hodnota je nastavena na pět, což by mělo být pro většinu uživatelů v pořádku.

/etc/fail2ban/jail.local
maxretry = 5

E-mailová upozornění #

Fail2ban může odesílat e-mailová upozornění, když byla IP zakázána. Abyste mohli přijímat e-maily, musíte mít na svém serveru nainstalovaný SMTP a změnit výchozí akci, která zakáže IP pouze na %(action_mw)s , jak je uvedeno níže:

/etc/fail2ban/jail.local
action = %(action_mw)s

%(action_mw)s zabanuje urážlivou IP 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ímací e-mailové adresy:

/etc/fail2ban/jail.local
destemail = [email protected]

sender = [email protected]

Vězení Fail2ban #

Fail2ban používá koncept vězení. Vězení popisuje službu a zahrnuje filtry a akce. Záznamy protokolu odpovídající vyhledávacímu vzoru se počítají, a když je splněna předem definovaná podmínka, jsou provedeny odpovídající akce.

Fail2ban se dodává s řadou vězení pro různé služby. Můžete si 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 postfixové vězení:

/etc/fail2ban/jail.local
[postfix]
enabled  = true
port     = smtp,ssmtp
filter   = postfix
logpath  = /var/log/mail.log

Nastavení, o kterých jsme hovořili v předchozí části, lze nastavit pro každé vězení. Zde je příklad:

/etc/fail2ban/jail.local
[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 jail. Pokud máte vlastní nastavení a zkušenosti s regulárními výrazy, můžete filtry doladit.

Při každé úpravě konfiguračního souboru je nutné restartovat službu Fail2ban, aby se změny projevily:

sudo systemctl restart fail2ban

Klient Fail2ban #

Fail2ban se dodává s nástrojem příkazového řádku s názvem fail2ban-client které můžete použít k interakci se službou Fail2ban.

Chcete-li zobrazit všechny dostupné možnosti, vyvolejte příkaz pomocí -h možnost:

fail2ban-client -h

Tento nástroj lze použít k zablokování/odbanování IP adres, změně nastavení, restartování služby a dalším. Zde je několik příkladů:

  • Získejte aktuální stav serveru:

    sudo fail2ban-client status
  • Zkontrolujte stav vězení:

    sudo fail2ban-client status sshd
  • Zrušení zákazu IP:

    sudo fail2ban-client set sshd unbanip 11.22.33.44
  • Zakázat IP:

    sudo fail2ban-client set sshd banip 11.22.33.44

Debian
  1. Jak nainstalovat a nakonfigurovat docker na Debian 11

  2. Jak nainstalovat a nakonfigurovat Mariadb 10 v Debianu 11

  3. Jak nainstalovat a nakonfigurovat MongoDB 5 na Debian 11

  1. Jak nainstalovat a nakonfigurovat Fail2ban na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat Fail2ban na CentOS 8

  3. Jak nainstalovat a nakonfigurovat Redis 6 na Debian 11

  1. Jak nainstalovat a nakonfigurovat VNC na Debian 9

  2. Jak nainstalovat a nakonfigurovat Redis na Debian 9

  3. Jak nainstalovat a nakonfigurovat Nagios na Debian 9