Sicherheit

So richten Sie ein IPS (Fail2ban) zum Schutz vor verschiedenen Angriffen ein

So richten Sie ein IPS (Fail2ban) zum Schutz vor verschiedenen Angriffen ein

IPS oder Intrusion Prevention System ist eine Technologie, die in der Netzwerksicherheit verwendet wird, um den Netzwerkverkehr zu untersuchen und verschiedene Angriffe zu verhindern, indem böswillige Eingaben erkannt werden. Abgesehen davon, dass es nur bösartige Eingaben wie das Intrusion Detection System erkennt, verhindert es auch das Netzwerk vor böswilligen Angriffen. Es kann das Netzwerk vor Brute-Force, DoS (Denial of Service), DDoS (Distributed Denial of Service), Exploits, Würmern, Viren und anderen gängigen Angriffen schützen. IPS werden direkt hinter der Firewall platziert und können Alarme senden, bösartige Pakete verwerfen und anstößige IP-Adressen blockieren. In diesem Tutorial verwenden wir Fail2ban, ein Intrusion Prevention Software-Paket, um eine Sicherheitsebene gegen verschiedene Brute-Force-Angriffe hinzuzufügen.

So funktioniert Fail2ban

Fail2ban liest die Log-Dateien (z.G. /var/log/apache/error_log) und ruft die anstößigen IPs ab, die zu viele fehlgeschlagene Passwörter versuchen oder nach Exploits suchen. Grundsätzlich aktualisiert Fail2ban Firewall-Regeln, um verschiedene IPs auf dem Server zu blockieren. Fail2ban bietet auch Filter, mit denen wir für einen bestimmten Dienst (z.G., Apache, SSH usw.).

Fail2ban installieren

Fail2ban ist auf Ubuntu nicht vorinstalliert, also müssen wir es vor der Verwendung installieren.

[email protected]:~$ sudo apt-get update -y
[email protected]:~$ sudo apt-get install fail2ban

Nach der Installation von Fail2ban starten und aktivieren Sie den Fail2ban-Dienst über die Befehlszeile.

[email protected]:~$ sudo systemctl start fail2ban
[email protected]:~$ sudo systemctl enable fail2ban


Überprüfen Sie nun den Status des fail2ban-Dienstes, um zu bestätigen, ob er gestartet wurde oder nicht.

[email protected]:~$ sudo systemctl status fail2ban

Fail2ban für SSH konfigurieren

Wir können Fail2ban konfigurieren, indem wir /etc/fail2ban/jail . ändern.conf-Datei. Machen Sie vor dem Ändern eine Sicherungskopie dieser Datei.

[email protected]:~$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.lokal

Jetzt werden wir Fail2ban konfigurieren, um den sshd-Dienst vor bösartigen Eingaben zu schützen. Öffne /etc/fail2ban/jail.lokale Datei in Ihrem bevorzugten Editor.

[email protected]:~$ sudo nano /etc/fail2ban/jail.lokal

Gehe zum [Standard] Abschnitt und geben Sie Konfigurationsparameter unter [Standard] Sektion.

[STANDARD]
Ignorieren = 127.0.0.1/8 192.168.18.10/32
Bantime = 300
maxretry = 2
Findzeit = 600

ignorieren ist die Liste der cidr-Maske, der IP-Adresse oder des DNS-Hosts, getrennt durch ein Leerzeichen separated. Fügen Sie Ihre vertrauenswürdigen IPs zu dieser Liste hinzu, und diese IPs werden auf die Whitelist gesetzt und nicht von fail2ban blockiert, selbst wenn sie einen Brute-Force-Angriff auf den Server ausführen.

bantime ist die Zeit, in der eine IP blockiert wird, nachdem eine bestimmte Anzahl von fehlgeschlagenen Versuchen zum Server unternommen wurde.

maxretry ist die maximale Anzahl fehlgeschlagener Versuche, nach denen eine IP durch fail2ban für eine bestimmte Zeit gesperrt wird.

finde Zeit ist die Zeit, in der ein Gastgeber maxretry Fehlversuche, wird gesperrt.

Nachdem wir die obigen Parameter konfiguriert haben, konfigurieren wir nun den Dienst, für den die obigen Regeln gelten rules. Fail2ban hat standardmäßig vordefinierte Filter für verschiedene Dienste, sodass wir keine spezifischen Einträge für Dienste eingeben müssen. Wir aktivieren oder deaktivieren nur verschiedene Dienste in der Konfigurationsdatei. Öffne /etc/fail2ban/jail.lokale Datei in Ihrem bevorzugten Editor.

[email protected]:~$ sudo nano /etc/fail2ban/jail.lokal

Finden Sie die [sshd] Abschnitt in der Datei und geben Sie die folgenden Parameter in den Abschnitt ein.

[sshd]
aktivieren = wahr
port = ssh
filter = sshd
logpath = /var/log/auth.Log
maxretry = 3

aktiviert legt fest, ob dieser Dienst durch fail2ban geschützt ist oder nicht. Wenn aktiviert true ist, wird der Dienst geschützt; andernfalls ist es nicht geschützt.

Hafen definiert Serviceport.

Filter bezieht sich auf die Konfigurationsdatei, die fail2ban verwenden wird. Standardmäßig wird /etc/fail2ban/filter verwendet use.d/sshd.conf-Datei für den SSH-Dienst.

Protokollpfad definiert den Pfad zu den Protokollen, fail2ban überwacht, um den Dienst vor verschiedenen Angriffen zu schützen. Für den SSH-Dienst finden Sie Authentifizierungsprotokolle unter /var/log/auth.log, also überwacht fail2ban diese Protokolldatei und aktualisiert die Firewall, indem es fehlgeschlagene Anmeldeversuche erkennt.

maxretry definiert die Anzahl der fehlgeschlagenen Login-Versuche, bevor sie vom fail2ban blockiert werden.

Nachdem Sie die obige Konfiguration für fail2ban angewendet haben, starten Sie den Dienst neu, um die Änderungen zu speichern.

[email protected]:~$ sudo systemctl restart fail2ban.Bedienung
[email protected]:~$ sudo systemctl status fail2ban.Bedienung

Testen von Fail2ban

Wir haben fail2ban konfiguriert, um unser System vor Brute-Force-Angriffen auf den SSH-Dienst zu schützen. Jetzt werden wir von einem anderen System aus fehlgeschlagene Anmeldeversuche auf unserem System durchführen, um zu überprüfen, ob fail2ban funktioniert oder nicht. Nachdem wir jetzt einige fehlgeschlagene Anmeldeversuche unternommen haben, werden wir die fail2ban-Protokolle überprüfen.

[email protected]:~$ cat /var/log/fail2ban.Log

Wir können sehen, dass nach fehlgeschlagenen Anmeldeversuchen die IP von fail2ban blockiert wurde.

Wir können eine Liste aller Dienste erhalten, für die fail2ban aktiviert ist, indem wir den folgenden Befehl verwenden.

[email protected]:~$ sudo fail2ban-client status


Die obige Abbildung zeigt, dass wir fail2ban nur für den sshd-Dienst aktiviert haben. Wir können weitere Informationen über den sshd-Dienst erhalten, indem wir den Dienstnamen im obigen Befehl angeben.

[email protected]:~$ sudo fail2ban-client status sshd

Fail2ban entsperrt die gesperrte IP-Adresse nach der Bantime automatisch, aber wir können jede IP jederzeit über die Befehlszeile aufheben. Dies gibt mehr Kontrolle über fail2ban. Verwenden Sie den folgenden Befehl, um die Sperrung der IP-Adresse aufzuheben.

[email protected]:~$ sudo fail2ban-client set sshd unbanip 192.168.43.35

Wenn Sie versuchen, eine IP-Adresse zu entsperren, die nicht durch fail2ban blockiert ist, wird Ihnen nur mitgeteilt, dass die IP nicht blockiert ist.

[email protected]:~$ sudo fail2ban-client set sshd unbanip 192.168.43.35

Fazit

Für einen Systemadministrator oder Sicherheitsingenieur ist es eine große Herausforderung, die Sicherheit der Server aufrechtzuerhalten. Wenn Ihr Server durch das Passwort und nicht durch ein öffentliches und privates Schlüsselpaar geschützt ist, ist Ihr Server anfälliger für Brute-Force-Angreifer. Sie können in Ihr System gelangen, indem sie verschiedene Passwortkombinationen anwenden. Fail2ban ist ein Tool, das Angreifer daran hindern kann, verschiedene Arten von Angriffen zu starten, einschließlich Brute-Force-Angriffe und DDoS-Angriffe auf Ihren Server. In diesem Tutorial haben wir besprochen, wie wir unseren Server mit Fail2ban vor verschiedenen Angriffen schützen können. Wir können Fail2ban auch verwenden, um andere Dienste wie Apache, Nginx usw. zu schützen.

So verwenden Sie AutoKey zur Automatisierung von Linux-Spielen
AutoKey ist ein Desktop-Automatisierungsdienstprogramm für Linux und X11, programmiert in Python 3, GTK und Qt. Mithilfe der Skript- und MACRO-Funktio...
So zeigen Sie den FPS-Zähler in Linux-Spielen an
Linux-Gaming bekam einen großen Schub, als Valve 2012 die Linux-Unterstützung für den Steam-Client und seine Spiele ankündigte. Seitdem haben viele AA...
Herunterladen und Spielen von Sid Meier's Civilization VI unter Linux and
Einführung in das Spiel Civilization 6 ist eine moderne Version des klassischen Konzepts, das in der Reihe der Age of Empires-Spiele eingeführt wurde....