So schützen Sie SSH mit fail2ban in CentOS

Fail2Ban2.jpg

Server existieren nicht isoliert und die meisten werden installiert und angepasst, wobei nur die grundlegendste Konfiguration von SSH für Brute-Force-Angriffe anfällig sein kann.
Das fail2ban-Tool bietet eine Möglichkeit, den Server automatisch vor verdächtigen Angriffen und schädlicher Software zu schützen.

Das Programm scannt die Protokolldateien und hilft, auf Aktionen wie wiederholte fehlgeschlagene Verbindungsversuche zu reagieren.

Wir werden mit der Installation von fail2ban beginnen

Da fail2ban in CentOS nicht verfügbar ist, müssen wir zunächst das Repository herunterladen:

 rpm- Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm 

Dann installieren wir fail2ban von der Kommandozeile mit dem folgenden Befehl

 yum install fail2ban 

Kopieren Sie die Konfigurationsdatei

Die fail2ban-Konfigurationsdatei ist standardmäßig der Speicherort in /etc/fail2ban/jail.conf. Die Konfigurationsarbeit sollte jedoch nicht in dieser Datei ausgeführt werden, sondern es sollte eine lokale Kopie erstellt werden, um eine Sicherung zu erhalten.

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

Sobald die Datei kopiert ist, können wir alle Änderungen in der neuen Datei jail.local vornehmen. Viele der möglichen Dienste, die möglicherweise geschützt werden müssen, sind in dieser Datei bereits vorkonfiguriert. Jeder befindet sich in einem eigenen Bereich, ist konfiguriert und deaktiviert.

Konfigurieren Sie die Standardwerte in Jail.Local

Öffnen Sie die neue Konfigurationsdatei des fail2ban:

 vi / etc / fail2ban / jail.local 

Der erste Abschnitt der Standardeinstellungen behandelt die grundlegenden Regeln, denen fail2ban folgen wird. Wenn Sie den individuelleren Schutz Ihres virtuellen privaten Servers konfigurieren möchten, können Sie die Details der einzelnen Abschnitte anpassen.

Sie können im Standardabschnitt einige Details wie die folgenden sehen.

 [STANDARD] # "Ignoreip" kann eine IP-Adresse, eine CIDR-Maske oder ein DNS-Host sein. Fail2ban wird nicht # Verbieten Sie eine Serie, die mit einer Adresse in dieser Liste übereinstimmt. Mehrere Richtungen können sein # Durch Leerzeichen definieren. ignoreip = 127.0.0.1 # "Bantime" ist die Anzahl der Sekunden, die ein Host vom Zugriff ausgeschlossen oder gesperrt hat. Bantime = 3600 # Die Zeit in Sekunden, die ein Host blockiert wird, wenn er maximal erfolglose Abfragen durchführt findtime = 600 # "Maxretry" ist die Anzahl der zulässigen Fehler, bevor sie gesperrt werden. Maxretry = 3 

Geben Sie Ihre IP-Adresse in die Ignoreip-Personalzeile ein. Sie können jede Adresse durch ein Leerzeichen trennen. IgnoreIP listet bestimmte IP-Adressen auf und stellt sicher, dass sie nicht von Ihrem VPS ausgeschlossen werden. Durch die Angabe Ihrer Adresse wird sichergestellt, dass Sie sich nicht versehentlich von Ihrem eigenen virtuellen privaten Server verbannen.

See also  So konfigurieren Sie DHCP-Failover in Windows Server 2016

Der nächste Schritt besteht darin, eine Sperrzeit festzulegen, dh die Anzahl der Sekunden, die ein Host vom Server blockiert wird, wenn er gegen eine der Regeln verstößt. Dies ist besonders nützlich bei Robotern, die den Zugriff verboten haben und einfach zum nächsten Ziel gelangen. Der Standardwert ist 10 Minuten. Sie können diesen Wert auf eine Stunde erhöhen, wenn Sie möchten.

Maxretry ist die Anzahl der falschen Zugriffsversuche, die ein Host möglicherweise hat, bevor seine Zugriffsversuche für die Dauer der Sperrzeit verboten sind.

Die Suchzeit bezieht sich auf die Zeitspanne, die ein Host benötigt, um den Standardwert einzugeben. Sie beträgt 10 Minuten. Wenn also versucht wird, auf einen Host zuzugreifen, schlägt die Anmeldung fehl und die maximale Zeitspanne wird überschritten 3 mal in den angegebenen 10 minuten wird deine ip gesperrt und du kannst nicht darauf zugreifen.

Konfigurieren Sie den Abschnitt ssh – iptables in Jail.Local
Der Detailbereich von SSH ist in der Konfiguration nur ein wenig niedriger und bereits installiert und aktiviert. Obwohl Sie nicht gezwungen sein sollten, Änderungen in diesem Abschnitt vorzunehmen, finden Sie unten Details zu jeder Zeile.

 [ssh - iptables] enabled = true filter = sshd action = iptables [Name = SSH, Port = SSH, Protokoll = TCP] sendmail-whois [name = SSH, dest = root, sender = [email protected]] logpath = / var / log / secure Maxretry = 5 

Aktiviert bezieht sich einfach auf die Tatsache, dass der SSH-Schutz aktiviert ist. Sie können es mit dem Wort false ausschalten.

Filter, das standardmäßig für sshd verwendet wird, bezieht sich auf die Konfigurationsdatei, die die Regeln enthält, die fail2banuses verwendet, um Übereinstimmungen zu finden. Der Name ist eine abgekürzte Version der Dateierweiterung. Beispielsweise verweist es auf die Datei sshd /etc/fail2ban/filter.d/sshd.conf

See also  Entfernen Sie die Warnung, wenn wir SSH auf einem ESXI-Host aktivieren

Aktion, beschreibt die Schritte, die fail2ban ausführen, um eine übereinstimmende IP-Adresse zu verhindern. Wie der Filtereintrag verweist jede Aktion auf eine Datei im Verzeichnis action.d. Die standardmäßige Verbotsaktion iptable befindet sich in /etc/fail2ban/action.d/iptables.conf

In iptables können Sie noch mehr fail2ban anpassen. Wenn Sie beispielsweise einen nicht standardmäßigen Anschluss verwenden, können Sie die Anschlussnummer in den Klammern auf die Höhe einstellen und so die Sichtlinie derselben Familie festlegen:
zum beispiel. iptables [Name = SSH, Port = 30000, Protokoll = TCP]

Sie können das Protokoll auch in dieser Zeile von TCP auf UDP ändern, je nachdem, welches Sie fail2ban überwachen möchten.

Wenn auf dem virtuellen privaten Server ein Mailserver konfiguriert ist, kann fail2ban Sie per E-Mail benachrichtigen, wenn eine IP-Adresse nicht zulässig ist. Im Falle einer Unterlassung verweist sendmail-whois auf die Aktionen in /etc/fail2ban/action.d/sendmail-whois.conf.

Protokollpfad bezieht sich auf den Speicherort des Protokolls, das fail2ban nachverfolgen wird.

Die maximale Anzahl von Wiederholungsversuchen im SSH-Abschnitt hat dieselbe Definition wie die Standardoption. Wenn jedoch ein Dienst aktiviert wurde und Sie für jeden Dienst bestimmte Werte festlegen möchten, können Sie hier die neue maximale Anzahl von Wiederholungsversuchen für SSH festlegen.

Starten Sie fail2ban neu
Stellen Sie nach Änderungen an der fail2ban-Konfiguration immer sicher, dass fail2ban neu gestartet wird:

 Sudo-Neustart-Dienst fail2ban 

Sie können die Regeln, die fail2ban in Kraft setzt, in der IP-Tabelle sehen:

 Iptables- L 

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *