Integracja Fail2ban z nftables w systemie Linux – pełny poradnik
Linux

Integracja Fail2ban z nftables w systemie Linux – pełny poradnik

Integracja Fail2ban z nftables w systemie Linux – pełny poradnik

🛡️ Dlaczego to ważne?

  • Fail2ban wykrywa ataki (np. brute-force na SSH) w logach
  • nftables blokuje IP na poziomie pakietów
  • Razem tworzą dynamiczny, samouczący się firewall

🧱 Wymagania wstępne

  • Zainstalowany i działający:
    • fail2ban
    • nftables (z aktywnym zestawem reguł)
  • Uprawnienia roota lub sudo

🔧 Krok 1: Sprawdź, czy nftables działa

Upewnij się, że masz aktywną konfigurację firewalla:

sudo systemctl status nftables
sudo nft list ruleset

🔧 Krok 2: Dodaj własny łańcuch dla fail2ban

Utwórz łańcuch f2b-input w tablicy inet:

sudo nft add chain inet filter f2b-input { type filter hook input priority 10\; }

Dodaj przekierowanie z głównego łańcucha input do f2b-input:

sudo nft insert rule inet filter input jump f2b-input

💡 Teraz wszystkie reguły dodawane przez Fail2ban będą trafiać do własnego łańcucha.

Integracja Fail2ban z nftables w systemie Linux – pełny poradnik
Integracja Fail2ban z nftables w systemie Linux – pełny poradnik

🔧 Krok 3: Skonfiguruj Fail2ban do używania nftables

Otwórz (lub utwórz) plik action.d/nftables.conf:

sudo nano /etc/fail2ban/action.d/nftables.conf

Wklej konfigurację:

[Definition]
actionstart = nft add set inet filter f2b-<name> { type ipv4_addr\; flags timeout\; }
              nft insert rule inet filter f2b-input ip saddr @f2b-<name> drop

actionstop = nft delete rule inet filter input jump f2b-input
             nft delete chain inet filter f2b-input
             nft delete set inet filter f2b-<name>

actioncheck = nft list set inet filter f2b-<name>

actionban = nft add element inet filter f2b-<name> { <ip> }

actionunban = nft delete element inet filter f2b-<name> { <ip> }

[Init]
name = default

🔧 Krok 4: Ustaw Fail2ban do używania akcji nftables

W pliku /etc/fail2ban/jail.local lub /etc/fail2ban/jail.d/defaults-debian.conf, dodaj/zmień regułę SSH:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
bantime = 3600
findtime = 600
backend = auto
action = nftables[name=sshd]

Zrestartuj usługę:

sudo systemctl restart fail2ban

✅ Krok 5: Sprawdź, czy działa

  • Sprawdź aktywne jail’e:
sudo fail2ban-client status
  • Sprawdź konkretny jail:
sudo fail2ban-client status sshd
  • Zobacz reguły nftables:
sudo nft list set inet filter f2b-sshd

🔐 Dodatkowe uwagi

  • Możesz utworzyć różne zbiory (sets) dla różnych usług (np. f2b-postfix, f2b-nginx)
  • Fail2ban automatycznie usuwa IP po czasie (np. 3600 sekund)
  • nftables jest szybszy i bardziej odporny na flood niż iptables

✅ Podsumowanie

Integracja fail2ban z nftables to idealne połączenie:

  • dynamiczna analiza logów
  • natychmiastowe blokowanie adresów IP
  • nowoczesny i bezpieczny firewall
Czytaj  Konfiguracja serwera WWW (Apache/Nginx) w Debianie: Instalacja i konfiguracja serwera Apache lub Nginx

To rozwiązanie polecane dla administratorów, którzy dbają o stabilność i bezpieczeństwo swoich serwerów.

 

Polecane wpisy
Jak rozpoznać fałszywy plik PDF zawierający malware
Jak rozpoznać fałszywy plik PDF zawierający malware

Jak rozpoznać fałszywy plik PDF zawierający malware W dobie cyfrowej komunikacji pliki PDF stały się jednym z najpopularniejszych formatów do Czytaj dalej

Zarządzanie uprawnieniami dostępu do zasobów w Debianie
Zarządzanie uprawnieniami dostępu do zasobów w Debianie

Zarządzanie uprawnieniami dostępu do zasobów w Debianie Wprowadzenie Bezpieczeństwo systemu Linux, w tym Debiana, opiera się na precyzyjnym zarządzaniu uprawnieniami Czytaj dalej

Marek "Netbe" Lampart Inżynier informatyki Marek Lampart to doświadczony inżynier informatyki z ponad 25-letnim stażem w zawodzie. Specjalizuje się w systemach Windows i Linux, bezpieczeństwie IT, cyberbezpieczeństwie, administracji serwerami oraz diagnostyce i optymalizacji systemów. Na netbe.pl publikuje praktyczne poradniki, analizy i instrukcje krok po kroku, pomagając administratorom, specjalistom IT oraz zaawansowanym użytkownikom rozwiązywać realne problemy techniczne.