Jak nainstalovat a nakonfigurovat službu Fail2Ban v systému Linux
9 min čtení - 14. května 2026

Průvodce krok za krokem instalací, konfigurací a testováním systému Fail2Ban na serverech s operačními systémy Linux založenými na Ubuntu, Debian a RHEL.
Jak nainstalovat a nakonfigurovat službu Fail2Ban v systému Linux
Služba Fail2Ban sleduje protokoly serveru a hledá podezřelé aktivity a automaticky zakazuje IP adresy, které porušují pravidla, aktualizací pravidel brány firewall. Zabraňuje útokům hrubou silou, snižuje šum v protokolech a po konfiguraci běží tiše na pozadí. Tento průvodce se zabývá instalací v Ubuntu/Debianu, konfigurací jádra, nastavením vězení a několika pokročilými možnostmi, o kterých stojí za to vědět.
Předpoklady
Fail2Ban běží na většině distribucí Linuxu: Ubuntu, Debian, AlmaLinux, CentOS, RHEL, Rocky Linux a Fedora. Budete potřebovat:
- Python 3 nainstalovaný v systému
- Přístup roota nebo sudo pro instalaci balíčků a změny brány firewall
- Aktivní firewall (iptables, nftables, ufw nebo firewalld)
- Soubory protokolu, které zachycují neúspěšné pokusy o přihlášení
(/var/log/auth.logv systémech založených na Debianu,/var/log/securev systémech založených na RHEL)
V systémech založených na RHEL nejprve povolte úložiště EPEL. Před instalací nástroje Fail2Ban ověřte, zda je váš firewall spuštěn pomocí příkazu ufw status nebo systemctl status firewalld.
Instalace systému Fail2Ban v Ubuntu/Debianu
Aktualizujte své balíčky a nainstalujte Fail2Ban:
sudo apt update && sudo apt upgrade -y
sudo apt install fail2banSlužbu povolte, aby se spouštěla při startu systému, a poté ji spusťte:
sudo systemctl enable fail2ban
sudo systemctl start fail2banZkopírujte výchozí konfiguraci do místního přepisovacího souboru. Vždy upravujte soubor jail.local, nikoli jail.conf, aby aktualizace balíčků nepřepsaly vaše nastavení:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.localOvěřte, zda je vše spuštěno:
sudo systemctl status fail2ban
sudo fail2ban-client statusPrvní příkaz by měl zobrazit "Active: active (running)". Druhý příkaz obsahuje seznam vašich aktivních jailů. Potvrďte, že Fail2Ban je při spuštění systému povolen, pomocí sudo systemctl is-enabled fail2ban.
Konfigurace vězení
Výchozí nastavení
Otevřete soubor /etc/fail2ban/jail.local a upravte část [DEFAULT]. Tato nastavení platí pro všechny jaily, pokud nejsou přepsána:
| Parametr | Doporučená hodnota | Co to dělá |
|---|---|---|
bantime | 3600 | Zablokuje IP adresu na 1 hodinu |
findtime | 600 | Počítá selhání v rámci 10minutového okna |
maxretry | 3 až 5 | Selhání před spuštěním zákazu |
ignoreip | 127.0.0.1/8 ::1 | IP adresy, které nejsou nikdy zakázány |
Přidejte do ignoreip vlastní IP adresu pro správu, abyste se nezablokovali. Příklad: ignoreip = 127.0.0.1/8 ::1 203.0.113.50.
Ochrana SSH
V souboru jail.local povolte vězení SSH:
[sshd]
enabled = trueZkontrolujte, zda logpath ukazuje na správný soubor protokolu pro vaši distribuci. Pokud jste SSH přesunuli na nestandardní port (např. 2222), aktualizujte parametr portu tak, aby odpovídal.
Ochrana webového serveru
Povolte vězení, které odpovídá vašemu webovému serveru:
- Nginx:
[nginx-http-auth]pro selhání ověřování,[nginx-botsearch]pro škodlivé boty - Apache:
[apache-auth]pro ověřování,[apache-badbots]pro boty
Recidivní vězení
Vězení [recidive] zachycuje IP adresy, které jsou stále zakazovány v jiných vězeních, a uplatňuje delší trest, obvykle jeden týden (604 800 sekund). Je užitečná pro vytrvalé útočníky, kteří střídají své přístupy.
Po provedení změn proveďte opětovné načtení:
sudo systemctl restart fail2ban
sudo fail2ban-client statusTestování a monitorování
Zákazy testování
Než se na Fail2Ban začnete spoléhat ve výrobě, otestujte jej. Ze vzdáleného počítače (nikoli z IP adresy správce) se pokoušejte o přihlášení SSH, dokud nepřekročíte maxretry. Měli byste být zablokováni. Potvrďte pomocí:
sudo fail2ban-client status sshdSledujte zákazy v reálném čase:
tail -f /var/log/fail2ban.logPokud omylem zabanujete legitimní IP adresu, zrušte její ban:
sudo fail2ban-client set sshd unbanip 203.0.113.50Sledování den po dni
Prohlédněte si historii banů procházením protokolu:
grep "Ban\|Unban" /var/log/fail2ban.logUžitečné příkazy pro správu:
| Příkazy | Účel |
|---|---|
fail2ban-client status | Vypíše všechny aktivní žaláře |
fail2ban-client banned | Zobrazí všechny aktuálně zakázané IP adresy |
fail2ban-client set <jail> unbanip <IP> | Zruší zákaz konkrétní IP adresy |
fail2ban-client unban --all | Vymaže všechny zákazy |
fail2ban-client set <jail> banip <IP> | Ruční zákaz IP adresy |
Zákazy přetrvávají i po restartech. Fail2Ban je ukládá do databáze SQLite na adrese /var/lib/fail2ban/fail2ban.sqlite3.
Pokročilá konfigurace
Přechod na nftables
nftables je moderní náhrada za iptables. Zvládá protokoly IPv4 a IPv6 v jediném rámci, lépe škáluje velké seznamy zákazů a má zabudované omezování rychlosti. Pokud používáte Ubuntu 22.04+, Debian 11+ nebo jakoukoli novější distribuci, je to lepší volba.
Nastavte jej v souboru jail.local:
[DEFAULT]
banaction = nftables-multiportRestartujte Fail2Ban a ověřte pomocí sudo nft list ruleset. Ve výstupu byste měli vidět f2b-table a f2b-chain. Zůstaňte u iptables pouze v případě, že používáte starší systém nebo máte požadavky na kompatibilitu.
E-mailová oznámení
Ve výchozím nastavení Fail2Ban zakazuje v tichosti. Chcete-li dostávat e-mailová upozornění, přidejte do sekce [DEFAULT] souboru jail.local následující text:
[DEFAULT]
destemail = [email protected]
sender = [email protected]
mta = sendmail
action = %(action_mwl)sAkce action_mwl odešle e-mail s podrobnostmi o zákazu, údaji WHOIS a řádky protokolu, které zákaz spustily. Pokud chcete pouze údaje WHOIS, použijte action_mw. Budete potřebovat nainstalovaný agent pro přenos pošty, jako je sendmail, nebo relé SMTP nakonfigurované prostřednictvím něčeho, jako je msmtp.
Pro upozornění na Slack nebo Discord vytvořte skript, který odešle webový háček, a propojte jej prostřednictvím vlastního souboru akcí v /etc/fail2ban/action.d/.
Pokud hledáte server s plným root přístupem a neměřenou šířkou pásma pro provoz Fail2Ban, podívejte se na dedikované servery FDC.

Máte už dost pomalého nasazování nebo omezení šířky pásma? Společnost FDC Servers nabízí okamžitý vyhrazený výkon, globální dosah a flexibilní plány vytvořené pro libovolný rozsah. Jste připraveni na upgrade?
Odemkněte výkon nyní
Kontrolní seznam zabezpečení linuxových serverů
Kontrolní seznam krok za krokem pro zabezpečení linuxového serveru. Zahrnuje SSH, firewally, záplatování, oprávnění k souborům, SELinux/AppArmor a auditní protokolování
15 min čtení - 8. května 2026
výukový program iperf3: Testování rychlosti sítě v systémech Linux a Windows
10 min čtení - 7. května 2026

Máte dotazy nebo potřebujete vlastní řešení?
Flexibilní možnosti
Globální dosah
Okamžité nasazení
Flexibilní možnosti
Globální dosah
Okamžité nasazení