So installieren und konfigurieren Sie Fail2ban auf CentOS 8

So installieren und konfigurieren Sie Fail2ban auf CentOS 8

Dieses Tutorial hilft Ihnen bei der Installation und Konfiguration von Fail2ban in Ihren CentOS- und RHEL 8- und Fedora -Systemen. In diesem Artikel erfahren Sie auch, wie Sie einen bestimmten Dienst zur Überwachung unter fail2ban hinzufügen können.

Schritt 1 - Installieren Sie Fail2ban auf CentOS 8

Erstens installieren Sie sich Epel-Release Paket zum Konfigurieren von Epel Yum -Repository in Ihrem CentOS 8 -System. Installieren Sie danach das Fail2ban RPM -Paket mit den folgenden Befehlen.

sudo dnf install epel-release sudo dnf install install fail2ban 

Schritt 2 - Fail2ban konfigurieren

Fail2ban hält Konfigurationsdateien unter /etc/fail2ban Verzeichnis. Wir müssen jedoch eine Kopie dieser Datei erstellen als Gefängnis.lokal.

sudo cp/etc/fail2ban/jail.conf/etc/fail2ban/jail.Lokale sudo vi/etc/fail2ban/jail.lokal 

Jetzt müssen wir die notwendigen Änderungen vornehmen Gefängnis.lokal Datei zum Erstellen von Verbotregeln. Bearbeiten Sie diese Datei in Ihrem bevorzugten Editor und nehmen Sie Änderungen in vor [STANDARD] Abschnitt.

[Standard] # "Ignoreip" kann eine Liste von IP -Adressen, CIDR -Masken oder DNS -Hosts sein. Fail2ban # verbietet keinen Host, der einer Adresse in dieser Liste entspricht. Mehrere Adressen # können mit dem Speicherscheider (und/oder dem Komma) definiert werden. Ignoreip = 127.0.0.1/8 192.168.1.0/24 # "Bantime" ist die Anzahl der Sekunden, die ein Host verboten ist. Bantime = 60m # Ein Host ist verboten, wenn er während der letzten "FindTime" -Steckungen "maxretry" generiert hat. Gemäß den folgenden # Einstellungen ist 2 Minuten FindTime = 5m # "MaxRetry" die Anzahl der Fehler, bevor ein Host verboten wird. maxretry = 5
12345678910111213141516[Standard] # "Ignoreip" kann eine Liste von IP -Adressen, CIDR -Masken oder DNS -Hosts sein. Fail2ban# verbietet keinen Host, der einer Adresse in dieser Liste entspricht. Mehrere Adressen# können mit dem Speicherscheider (und/oder dem Komma) definiert werden.Ignoreip = 127.0.0.1/8 192.168.1.0/24 # "Bantime" ist die Anzahl der Sekunden, die ein Host verboten ist.Bantime = 60m # Ein Host ist verboten, wenn er während der letzten "FindTime" -Steckungen "maxretry" generiert hat. Gemäß den folgenden # Einstellungen ist 2 Minuten findzeit = 5m # "MaxRetry" ist die Anzahl der Fehler, bevor ein Host verboten wird.maxretry = 5

Schritt 3 - SSH/SFTP schützen

Gehen Sie nach Abschluss der Standardkonfiguration im selben Dateigefängnis unter.Lokal und Update [ssh-sptables] Abschnitt wie unten.

[ssh-exptables] enabled = true filter = sshd action = iptables [name = ssh, port = 22, protocol = tcp] sendmail-whois [name = ssh, dest = root, [E-Mail geschützt], sendername = "fail2ban"] logpath =/var/log/sichern maxretry = 3 

Schritt 4 - FTP schützen

Lassen Sie uns Ihren FTP (VSFTPD) -Server (FTP) schützen, finden Sie den folgenden Eintrag von [vsftpd-exptables] Abschnitt und Änderungen wie unten vornehmen. Wenn Sie VSFTPD nicht verwenden, können Sie diesen Abschnitt überspringen.

[vsftpd-exptables] enabled = true filter = vsftpd action = iptables [name = vsftpd, port = 21, protocol = tcp] sendmail-whois [name = vsftpd, [E-Mail geschützt]] logpath =/var/log/vsftpd.log maxretry = 5 bantime = 1800 

Schritt 5 - Starten Sie Service und Test neu

Nachdem alle Änderungen vorgenommen haben, speichern Sie Ihre Datei und starten Sie den Fail2ban -Dienst mit dem folgenden Befehl neu starten.

sudo systemctl start fail2ban.Service sudo systemctl aktivieren fail2ban.Service 

Zu Testzwecken habe ich SSH mit den falschen Anmeldeinformationen einer anderen Maschine ausprobiert. Nach drei falschen Versuchen blockierte Fail2ban diese IP über Iptables mit ICMP aus dem Ablehnen. Sie können die Regeln in iptables sehen, nachdem Sie die IP -Adresse wie unten blockiert haben. Stellen Sie bei nur SSH -Systemen sicher, dass Sie SSH -Zugriff von einer anderen IP von einer anderen IP haben.