Frage Gewusst wie: Entsperren einer IP-Adresse mit Fail2Ban


Ich benutze Fail2Ban auf einem Server und frage mich, wie ich eine IP-Adresse richtig entsperren kann.

Ich weiß, dass ich direkt mit IPTables arbeiten kann: iptables -D fail2ban-ssh <number>

Aber gibt es keinen Weg, es mit dem zu tun? fail2ban-client?

In den Handbüchern heißt es etwa so: fail2ban-client get ssh actionunban <IP>. Aber das funktioniert nicht.

Außerdem will ich nicht /etc/init.d/fail2ban restart weil das alle Verbote in der Liste verlieren würde.


160
2018-06-29 11:43


Ursprung




Antworten:


Mit Fail2Ban vor v0.8.8:

fail2ban-client get YOURJAILNAMEHERE actionunban IPADDRESSHERE

Mit Fail2Ban v0.8.8 und höher:

fail2ban-client set YOURJAILNAMEHERE unbanip IPADDRESSHERE

Der schwierige Teil ist das richtige Gefängnis zu finden:

  1. Benutzen iptables -L -n um den Regelnamen zu finden ...
  2. ...dann benutze fail2ban-client status um die tatsächlichen Gefängnisnamen zu erhalten. Der Name der Regel und der Name des Gefängnisses dürfen nicht identisch sein, aber es sollte klar sein, auf welches verwiesen wird.

227
2017-11-29 21:59



Wenn Sie den folgenden Fehler haben 'Invalid Action name', lesen diese Antwort - Morgan Courbet
Mit den neuesten Versionen von fail2ban du solltest verwenden fail2ban-client set JAIL_NAME unbanip 1.2.3.4. - tftd
Was ist der Standardname für den Jail? /etc/fail2ban/jail.conf funktioniert nicht für mich. - Alex W
Sie können den Namen des Knotens im fail2ban-Protokoll finden, wenn Sie nach Ihrer IP suchen - fred727
Sshd war der Name des Gefängnisses für mich. - agustaf


Seit v0.8.8 gibt es die unbanip Möglichkeit (actionunban ist nicht für diesen Zweck) Es kann durch die ausgelöst werden set Wenn Sie sich die Liste der Optionen anschauen, sehen Sie die Syntax. Es wird also (auswendig, bitte nachsehen):

fail2ban-client set ssh-iptables unbanip IPADDRESSHERE 

mehr allgemein:

fail2ban-client set JAILNAMEHERE unbanip IPADDRESSHERE

funktioniert bei mir


81
2018-02-04 08:25



Der Befehl unbanip wurde in Version 0.8.8 hinzugefügt. Die beste Lösung, wenn Sie 0.8.8 oder höher ausführen. - Alexander Garden
Das Problem in fail2ban tracker ist dies: github.com/fail2ban/fail2ban/issues/132 - Aseques
Dies ist die richtige Antwort für aktuelle Versionen. Danke dir! - billynoah
"Ungültiger Befehl (keine festgelegte Aktion oder noch nicht implementiert)" - Tom
Sie müssen den korrekten Jail-Namen angeben (zum Beispiel sshd oder sshd-dos, siehe Ihr fail2ban-Protokoll) - mirage


Beispiel für SSH im interaktiven Modus.

Bash eingeben:

fail2ban-client -i

dann im interaktiven Modus Typ den Status eines Gefängnisses lesen:

status sshd

Du wirst kriegen:

Status for the jail: ssh
|- Filter
|  |- Currently failed: 0
|  |- Total failed: 6
|  `- File list:    /var/log/auth.log
`- Actions
   |- Currently banned: 1
   |- Total banned: 2
   `- Banned IP list:   203.113.167.162

dann fail2ban interaktiv eingeben:

set sshd unbanip 203.113.167.162

Du wirst kriegen:

203.113.167.162

es bedeutet nicht mehr 203.113.167.162 in der Sperrliste.


40
2018-02-28 13:55



Für mich war der Gefängnisname sshd (Ubuntu 16) - scipilot
Auf meiner, sagt es total verboten: 6, aber die Liste unter der gesperrten IP ist nur leer :( müssen durch Protokolle gehen - William Hilsum


Die Antwort von ukoda ist falsch:

Anruf fail2ban-client ohne Parameter und Sie sehen eine Liste der möglichen Befehle:

get JAIL actionunban ACT             

Dies ruft den Befehl unban für die Aktion ACT for JAIL ab.

Schauen Sie in den Aktionsparameter des von Ihnen definierten Gefängnisses, Sie haben wahrscheinlich eine iptables-Aktion und vielleicht noch mehr wie sendmail, whois oder was auch immer. Wenn Ihre Aktion iptables war, wird es so aussehen:

fail2ban-client get JAIL actionunban iptables

und die Antwort wird sein:

iptables -D fail2ban-NAME -s IP -j DROP

Es zeigt Ihnen nur, was Sie für ein Unban schreiben müssten. Es gibt keinen Unban-Befehl selbst.


21
2018-01-13 15:13



Ja, das hat für mich geklappt, um aus SSH ins Gefängnis zu kommen iptables -D fail2ban-ssh -s <IP> -j DROP. Danke ingo! - Deele


Wenn 192.168.2.1 verboten ist

sudo iptables -L

Überprüfen Sie, welche Kette in z.

Kette fail2ban-sasl (1 Referenzen)

DROP alle - 192.168.2.1 überall

Dann:

# to view the proper command for un-banning
sudo fail2ban-client get sasl actionunban
# actual command
iptables -D fail2ban-sasl -s 192.168.2.1 -j DROP

8
2018-01-24 14:04





Verwenden von fail2ban v.0.8.6:

$ sudo fail2ban-client status # to reveal your JAIL name (mine is ssh)
$ sudo fail2ban-client set ssh delignoreip your_ip_address
$ sudo nano /etc/hosts.deny # delete your ip address
$ sudo fail2ban-client reload

4
2017-09-30 12:18



Dies setzt voraus, dass hosts.deny die Aktion war, die verwendet wird .... Aber es ist immer noch nützlicher als Dinge, die versuchen, die Methode zum Entsperren von IPs auf älteren Versionen zu ändern actionunban... - Gert van den Berg


Sie müssen zuerst den Namen des Gefängnisses erhalten. Sie können die Liste bekommen (in den meisten Fällen wird es nur SSH-Jail):

fail2ban-client status

Nachdem Sie den Namen des Gefängnisses erhalten haben, können Sie überprüfen, welche IPs ignoriert werden.

fail2ban-client get ssh ignoreip

Wenn sich Ihre IP in der Liste "Ignorieren" befindet, können Sie sie löschen über:

fail2ban-client set ssh delignoreip your_ip_address
vi /etc/hosts.deny

Entfernen Sie Ihren Host-Eintrag:

fail2ban-client reload

4
2017-09-09 11:20



Die Ignorierliste ist eine Liste von IPs, die niemals gesperrt werden. Das hat nichts mit der Liste der derzeit gesperrten IPs zu tun, also der Liste, aus der OP eine IP entfernen möchte. - jlh


leider mit der Version 0.8.2 von fail2ban-client der Befehl:

fail2ban-client get jail actionunban ipaddress

läuft nicht. Um das Problem zu lösen, sollten Sie fail2ban auf die neueste Version aktualisieren und eine neue Option verwenden:

unbanip

2
2018-06-21 18:35





Wenn eine IP in mehreren Gefängnissen ist, wird dies zu einem Schmerz.

Einzeiler zum Entfernen von 192.168.1.2 aus allen Gefängnissen:

 for jail in $(fail2ban-client status | grep 'Jail list:' | sed 's/.*Jail list://' | sed 's/,//g'); do fail2ban-client set $jail unbanip 192.168.1.2; done

ein Skript, um das Gleiche zu tun https://gist.github.com/yolabingo/c810db6fe7f8bfcb9eb4f6ffc531e474


0
2017-11-02 20:59