Integracja Fail2ban z NGINX, Postfix i Dovecot – krok po kroku
Linux

Integracja Fail2ban z NGINX, Postfix i Dovecot – krok po kroku

Integracja Fail2ban z usługami Nginx, Postfix i Dovecot w systemie Linux

Fail2ban potrafi monitorować logi dowolnej usługi, jeśli tylko wiadomo, gdzie zapisywane są logi i jak rozpoznać podejrzane wpisy.


🔧 Krok 1: Konfiguracja dla NGINX

📂 Gdzie Nginx zapisuje logi?

Domyślnie:

/var/log/nginx/access.log  
/var/log/nginx/error.log

📜 Konfiguracja jail dla Nginx

Utwórz nowy plik jail lub dodaj do jail.local:

[nginx-http-auth]
enabled  = true
filter   = nginx-http-auth
port     = http,https
logpath  = /var/log/nginx/error.log
maxretry = 5

📂 Filtr nginx-http-auth

Plik: /etc/fail2ban/filter.d/nginx-http-auth.conf

[Definition]
failregex = no user/password was provided for basic authentication.*client: <HOST>

✉️ Krok 2: Konfiguracja dla Postfix

📂 Logi Postfixa

Domyślnie w:

/var/log/mail.log

📜 Konfiguracja jail

[postfix]
enabled  = true
port     = smtp,ssmtp,submission
filter   = postfix
logpath  = /var/log/mail.log
maxretry = 5

📂 Filtr postfix (standardowy)

Fail2ban ma już wbudowany filtr postfix.conf w /etc/fail2ban/filter.d/.
Można go użyć bez zmian.

Integracja Fail2ban z NGINX, Postfix i Dovecot – krok po kroku
Integracja Fail2ban z NGINX, Postfix i Dovecot – krok po kroku

📬 Krok 3: Konfiguracja dla Dovecot

📂 Logi Dovecot

Domyślnie w tym samym pliku co Postfix:

/var/log/mail.log

📜 Konfiguracja jail

[dovecot]
enabled  = true
port     = pop3,pop3s,imap,imaps,submission,465
filter   = dovecot
logpath  = /var/log/mail.log
maxretry = 5

📂 Filtr dovecot (również dostępny domyślnie)

Znajduje się w /etc/fail2ban/filter.d/dovecot.conf.


✅ Wspólne kroki po konfiguracji

🔄 Restart fail2ban:

sudo systemctl restart fail2ban

📋 Sprawdź status jail’i:

sudo fail2ban-client status
sudo fail2ban-client status nginx-http-auth
sudo fail2ban-client status postfix
sudo fail2ban-client status dovecot

🛡️ Dobre praktyki

  • Ustaw różne bantime, findtime, maxretry w zależności od usługi
  • Możesz wysyłać powiadomienia e-mail o banie – wystarczy dodać action = %(action_mwl)s
  • Użyj nftables jako backend (opisaliśmy to wcześniej), zamiast iptables
  • Regularnie sprawdzaj logi fail2ban: /var/log/fail2ban.log

✅ Podsumowanie

Fail2ban to nie tylko ochrona SSH! Dzięki gotowym filtrom i elastycznej konfiguracji możesz w prosty sposób zabezpieczyć najważniejsze usługi sieciowe:

Czytaj  Hardening Windows 11: Kompletny przewodnik po konfiguracji bezpieczeństwa
Usługa Co zabezpieczasz Najczęstszy atak
Nginx Logowanie przez HTTP auth Brute-force login
Postfix Serwer pocztowy SMTP Nieautoryzowane wysyłki, relay
Dovecot Logowanie IMAP/POP3 Brute-force e-mail login

 

Polecane wpisy
Instalacja i konfiguracja narzędzi do monitorowania systemu Linux: Nagios i Zabbix
Instalacja i konfiguracja narzędzi do monitorowania systemu Linux: Nagios i Zabbix

Instalacja i konfiguracja narzędzi do monitorowania systemu Linux: Nagios i Zabbix Monitorowanie systemów Linux jest kluczowym elementem zarządzania infrastrukturą IT, Czytaj dalej

Lekki Linux na stary komputer
Lekki Linux na stary komputer

Lekki Linux na stary komputer Stary komputer może nadal być przydatny, ale może nie być w stanie uruchomić nowoczesnego systemu 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.