Hur man installerar Fail2ban på en Linux VPS

Fail2ban övervakar loggar och blockerar tillfälligt IP-adresser efter upprepade misslyckade inloggningsförsök. Det används ofta för att minska SSH-brute-force på offentliga Linux-servrar.

Fail2ban fungerar genom att läsa loggfiler, matcha misslyckade inloggningsmönster med filter och tillämpa tillfälliga blockeringar genom en jail-konfiguration.

 

Ubuntu eller Debian

sudo apt update
sudo apt install fail2ban
sudo systemctl enable --now fail2ban

 

AlmaLinux, Rocky Linux, Oracle Linux, eller CentOS

sudo dnf install fail2ban
sudo systemctl enable --now fail2ban

Om paketet inte är tillgängligt, aktivera lämpligt extra repository för din distribution först.

 

Skapa en lokal jail-konfiguration

Redigera inte jail.conf direkt. Skapa eller redigera jail.local så att paketuppdateringar inte skriver över dina ändringar.

sudo nano /etc/fail2ban/jail.local

En grundläggande SSH-jail ser ut så här:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
findtime = 10m
bantime = 1h

På AlmaLinux, Rocky Linux, Oracle Linux, eller CentOS kan SSH-loggar finnas i /var/log/secure istället:

logpath = /var/log/secure

 

Vanliga inställningar

InställningVad den styr
enabledAktiverar eller inaktiverar jail.
portTjänsteporten som Fail2ban ska skydda.
filterFail2ban-filtret som används för att upptäcka misslyckade försök.
logpathLoggfilen som Fail2ban läser.
maxretryHur många misslyckanden som tillåts innan en blockering.
findtimeTidsfönstret som Fail2ban räknar misslyckanden inom.
bantimeHur länge IP-adressen är blockerad.
ignoreipIP-adresser som aldrig ska blockeras.

 

Vitlista din egen IP

Om du har en fast hem- eller kontors-IP, lägg till den i ignoreip så att du inte låser dig ute medan du testar:

[DEFAULT]
ignoreip = 127.0.0.1/8 YOUR_IP_ADDRESS

Lägg endast till IP-adresser du litar på. Vitlista inte breda offentliga områden om du inte förstår säkerhetskonsekvenserna.

 

Starta om och kontrollera Fail2ban

  1. Starta om Fail2ban efter att ha ändrat jail-konfigurationen:
    sudo systemctl restart fail2ban
  2. Kontrollera Fail2ban-tjänsten och jail-status:
    sudo systemctl status fail2ban --no-pager
    sudo fail2ban-client status
    sudo fail2ban-client status sshd

    Linux VPS terminal som visar Fail2ban-tjänstens status och sshd jail-status

 

Avblockera en IP-adress

sudo fail2ban-client set sshd unbanip IP_ADDRESS

 

Visa Fail2ban-loggar

sudo journalctl -u fail2ban --since "1 hour ago"
sudo tail -100 /var/log/fail2ban.log

Fail2ban är hjälpsamt, men det är inte en ersättning för SSH-nycklar, starka lösenord, uppdateringar och en vettig brandvägg.

  • 0 användare blev hjälpta av detta svar
Hjälpte svaret dig?

Relaterade artiklar

Hur man ansluter till en Linux VPS med SSH

SSH är det vanliga sättet att hantera en Linux VPS. Det ger dig en terminal på servern så att du...

Hur man uppdaterar paket på en Linux VPS

Att hålla paketen uppdaterade hjälper till att åtgärda säkerhetsproblem och håller serververktyg...

Hur man skapar en sudo-användare på en Linux VPS

En sudo-användare låter dig hantera en Linux VPS utan att logga in som root för varje uppgift....

Hur man säkrar SSH på en Linux VPS

SSH är det huvudsakliga sättet att hantera en Linux VPS, så det bör säkras innan servern används...

Hur man kontrollerar diskutrymme på en Linux VPS

Problem med diskutrymme kan stoppa uppdateringar, säkerhetskopior, loggar, databaser och...