So installieren und verwenden Sie Fail2ban für die Linux-Serversicherheit

In allen Arten von Organisationen, unabhängig von der Art der verwendeten Informationen oder der Anzahl der zugehörigen Benutzer, müssen wir immer als Mitarbeiter im System- oder IT-Bereich sicherstellen, dass die Sicherheit ein Hauptfaktor darin ist, aber wenn einer oder mehrere verwaltet werden . mehr Server.

Wenn wir von Servern mit Linux-Distributionen sprechen, denken wir oft, dass sie von Angriffen ausgenommen sind, aber in einer sich ständig ändernden Online-Welt gibt es kein sicheres System mehr und jede Distribution ist Angriffen durch Malware, Viren, DDOS-Angriffe und vielem mehr ausgesetzt mehr. Als Administratoren oder Benutzer mit Zugriff auf Ereignisse und Serverprotokolle ist es normal, Brute-Force-Anmeldeversuche, Web-Floods, Exploiter-Suche und andere Bedrohungen zu erkennen, die auf die eine oder andere Weise die Integrität und Verfügbarkeit von Informationen beeinträchtigen können.

Daher ist es notwendig, Tools zu verwenden, die uns die besten Sicherheitsoptionen und -alternativen bieten; Und wenn man darüber nachdenkt, wird Solvetic erklären, wie man Fail2ban verwendet, um unsere Linux-Betriebssysteme zu erkennen und zu sichern.

Was ist Fail2ban?Fail2ban wurde als Intrusion-Prevention-Software entwickelt, die Server-Log-Dateien wie /var/log/apache/error_log analysiert und somit IP-Adressen, die bösartige Zeichen enthalten, unter Berücksichtigung von Aspekten wie zu vielen Fehlern bei Passwörtern, Schwachstellensuche etc .

In der Regel wird Fail2Ban verwendet, um die Firewall-Regeln so zu aktualisieren, dass es IP-Adressen in einem bestimmten Zeitraum ablehnt, Sie können jedoch auch eine andere Regel konfigurieren, die die Sicherheit des Systems gefährden könnte. Obwohl Fail2Ban die Rate erfolgloser Authentifizierungsversuche innerhalb des Systems reduzieren kann, ist es ideal, dass die Authentifizierungsmethoden nicht schwach sind. Dazu können wir die Dienste so konfigurieren, dass sie nur zwei Faktoren oder öffentliche / private Authentifizierungsmechanismen verwenden, um die Dienste in Linux zu schützen.

Voraussetzungen für die Verwendung von Fail2ban
Die einzige Abhängigkeit, die wir für die Verwendung von Fail2ban benötigen, ist Python, je nach gewünschter Version ist dies die folgende:

  • Fail2ban-Zweig 0.9.x: Python> = 2.6 oder Python> = 3.2
  • Fail2ban-Zweig 0.8.x: Python> = 2.4
Optional kann Fail2ban die folgenden Elemente erfordern:
  • Netzfilter / Iptables
  • Ufermauer
  • TCP-Wrapper
  • Mail-Skript
  • Ipset

Fail2ban-Funktionen
Die aktuelle Version von Fail2ban ist 0.9.x und bietet uns Funktionen wie:

  • Python-basierte Aktionen.
  • Datenbankunterstützung.
  • Mehrlinienanalyse in Filtern.
  • Benutzerdefinierte Datums- und Uhrzeitunterstützung für Filter.
  • Zeitzonenerkennung standardmäßig.
  • Timeout in Verbotsbefehlen.
  • Erkennungszeichensatz in Protokolldateien.
  • Python3 + Unterstützung
  • Client/Server-Architektur.
  • Multi Thread.
  • Hochgradig konfigurierbar durch die Verwendung von geteilten Konfigurationsdateien.
  • Es verwendet standardmäßig Netfilter / Iptables, aber es wird auch möglich sein, TCP Wrapper und viele andere verfügbare Firewalls zu verwenden.
  • Es ermöglicht die gleichzeitige Handhabung mehrerer Dienste wie sshd, Apache, vsftp und mehr.
  • Führen Sie Befehle aus, wenn ein Muster für dieselbe IP-Adresse mehr als X-mal erkannt wird, um diese Adresse zu sperren.

1. So installieren Sie Fail2ban unter Linux

NotizFür diesen Fall verwenden wir CentOS 7

Schritt 1
Um Fail2ban zu installieren, führen wir die folgenden Befehle in ihrer Reihenfolge aus:

Aktualisieren Sie das System

 leckeres Update

Installieren Sie die EPEL-Repositorys
 yum installiere epel-release

Wir geben den Buchstaben y ein, um den Download und die Installation des EPEL-Repositorys zu bestätigen.

Schritt 2
Dann installieren wir Fail2ban, indem wir Folgendes ausführen:

 yum installiere fail2ban 

Schritt 3
Nach dieser Analyse werden wir sehen, dass alle Abhängigkeiten von Fail2ban installiert werden. Wir akzeptieren den Download und die Installation von Fail2ban.

Schritt 4
Bei Verwendung von Debian oder Ubuntu müssen wir Folgendes ausführen:

 apt-get update && apt-get upgrade -y apt-get install fail2ban
Optional können wir die E-Mail-Unterstützung für E-Mail-Benachrichtigungen aktivieren, indem wir sendmail wie folgt installieren:

CentOS / RHEL

 yum installiere sendmail

Debian / Ubuntu

 apt-get install sendmail-bin sendmail

Schritt 5
Danach werden wir Fail2ban und Sendmail mit den folgenden Befehlen aktivieren:

 systemctl start fail2ban systemctl enable fail2ban systemctl start sendmail systemctl enable sendmail

2. So konfigurieren Sie Fail2ban unter Linux


Standardmäßig verwendet Fail2ban die .conf-Dateien, die sich im Verzeichnis /etc/fail2ban/ befinden; auf die Sie zuerst zugreifen, diese können jedoch durch .local-Dateien ersetzt werden, die sich im selben Verzeichnis befinden.

Daher muss die .local-Datei nicht alle Einstellungen in der .conf-Datei enthalten, sondern nur diejenigen, die wir für die Systemsicherheit implementieren möchten. Jede Änderung muss an den .local-Dateien vorgenommen werden, die nicht in der .conf enthalten sind, um zu vermeiden, dass die Änderungen beim Aktualisieren des fail2ban-Pakets überschrieben werden.

Schritt 1
Dazu kopieren wir die vorhandene Datei fail2ban.conf in fail2ban.local wie folgt:

 cp /etc/fail2ban/fail2ban.conf /etc/fail2ban/fail2ban.local

Schritt 2
Jetzt ist es möglich, die Änderungen in der mit einem Texteditor erstellten .local-Datei vorzunehmen. Die Werte, die wir bearbeiten können, sind:

LoglevelDies ist die Ebene, auf der die Datensätze gespeichert werden. Dort haben wir Optionen wie:

  • KRITISCH
  • ERROR
  • WARNUNG
  • NOTIZ
  • DIE INFO
  • DEBUGGEN

ProtokollzielDort werden die Aktionen in einer bestimmten Datei aufgezeichnet, der Standardwert ist /var/log/fail2ban.log und die zu verwendenden Optionen sind:

  • STDOUT: Ausgabe beliebiger Daten.
  • STDERR: Erzeugt alle Fehler.
  • SYSLOG: Nachrichtenbasiertes Protokoll.
  • Datei: Ausgabe in eine Datei

SteckdoseEs ist das Verzeichnis, in dem sich die Socket-Datei befindet.

PidfileEs ist der Speicherort der pid-Datei.

3. So konfigurieren Sie Fail2ban jail.local unter Linux


In Fail2ban ist eine der wichtigsten Dateien jail.conf, die die Jails oder Schutzmaßnahmen definiert. Dort müssen Sie die Dienste definieren, für die Fail2ban aktiviert werden muss.

Schritt 1
Wir werden eine jail.local-Datei erstellen, um die Änderungen anwenden zu können, dafür führen wir Folgendes aus:

 cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Wir greifen auf diese lokale Datei mit der folgenden Syntax zu:
 nano /etc/fail2ban/jail.local
Dort suchen wir die Backend-Zeile und bearbeiten den Standardwert Auto in systemd:

NotizBei Ubuntu oder Debian ist diese Änderung nicht erforderlich.

Schritt 2
Die Datei jail.local aktiviert SSH standardmäßig für Debian und Ubuntu, aber nicht für CentOS. Wenn wir also SSH aktivieren möchten, fügen wir die Zeile enabled = true unter [sshd] hinzu:

4. So konfigurieren Sie Sperr- und Wiederholungszeiten in Fail2ban Linux


Mit Fail2ban können wir konfigurieren, wie eine IP-Adresse blockiert wird. Zu diesem Zweck; Dazu nutzt Fail2ban Bantime, Findtime und Maxretry.

bantimeGibt die Anzahl der Sekunden an, in denen eine IP-Adresse gesperrt bleibt (standardmäßig 10 Minuten).

Finde ZeitDies ist die Zeitspanne zwischen Anmeldeversuchen, bevor der Host entfernt wird. (Standard 10 Minuten)

maxretryBezieht sich auf die Anzahl der Versuche, die unternommen werden müssen, bevor eine Sperre verhängt wird. (standardmäßig 3 Versuche).

5. So konfigurieren Sie IP-Adressen auf der Whitelist in Fail2ban Linux


Es ist möglich, IP-Adressen zur Fail2ban-Whitelist hinzuzufügen (erlaubt). Dazu müssen wir in der Datei jail.local die folgende Zeile auskommentieren:
 ignorieren = 127.0.0.1/8 :: 1
Dort können wir die IP-Adressen eintragen, die ignoriert werden sollen. IP-Adressen müssen durch Leerzeichen oder Kommas getrennt werden.

6. So erstellen Sie E-Mail-Benachrichtigungen in Fail2ban Linux


Diese Option ist ideal, wenn wir Benachrichtigungen über Änderungen oder Neuigkeiten in den Datensätzen erhalten möchten. Dazu müssen wir die Datei /etc/fail2ban/jail.local bearbeiten, die Optionen sind:

entstemailDies ist die E-Mail-Adresse, unter der die Benachrichtigung empfangen wird.

AbsenderEs ist der Absender, den wir sehen, wenn die Nachricht empfangen wird.

AbsenderGibt die E-Mail-Adresse an, von der Fail2ban die E-Mails versendet.

Der Standardmta (Mail Transfer Agent) wird mit sendmail konfiguriert.

Um eine Benachrichtigung per E-Mail zu erhalten, ist es auch erforderlich, die Einstellung "Aktion" in der folgenden Zeile zu ändern:

 Aktion =% (Aktion_) s
Durch folgende Konfiguration:
 Aktion =% (action_mw) s Aktion =% (action_mwl) s
Sperren Sie den Host und senden Sie eine E-Mail mit einem Whois-Bericht
 % (action_mw) s

Es wird den Host sperren, Whois-Informationen und alle relevanten Informationen aus der Protokolldatei generieren

 % (action_mwl) s

7. Zusätzliche Fail2ban Linux-Konfigurationen


Wenn Sie eine Jail konfigurieren möchten, muss sie in der Datei jail.local aktiviert werden. Die Syntax lautet wie folgt:
 [Gefängnis]… aktiviert = wahr
Wir können die Gefängnisstruktur für SSHD sehen. Fail2ban fügt die zusätzlichen Parameter automatisch hinzu.

Es wird auch möglich sein, den Filter zu aktivieren, durch den erkannt wird, ob eine Zeile im Register einen Fehler aufweist. Der Filterwert ist ein Verweis auf eine Datei mit dem Namen des Dienstes gefolgt von .conf. Zum Beispiel können wir verwenden

 /etc/fail2ban/filter.d/sshd.conf.
Die zu verwendende Syntax lautet:
 Filter = Service
Wenn wir Jails hinzufügen, können wir den Fail2ban-Client verwenden, um zu sehen, welche auf dem Server aktiv sind. Dazu führen wir Folgendes aus:
 fail2ban-Client-Status
Dort werden sie bereitgestellt, wenn wir diese Einschränkungen erstellen.

Wir können sehen, wie Fail2ban ein praktisches Dienstprogramm ist, um die Sicherheit in Linux-Distributionen zu erhöhen, indem es unbefugten Zugriff und alles, was mit schlechten Praktiken in der Organisation zusammenhängt, vermeidet.

wave wave wave wave wave