Comment annuler une adresse IP correctement avec Fail2Ban


200

J'utilise Fail2Ban sur un serveur et je me demande comment libérer une adresse IP correctement.

Je sais que je peux travailler directement avec IPTables: iptables -D fail2ban-ssh <number>

Mais n'y a-t-il pas moyen de le faire avec le fail2ban-client?

Dans les manuels , il dit quelque chose comme: fail2ban-client get ssh actionunban <IP>. Mais ça ne marche pas.

En outre, je ne veux pas, /etc/init.d/fail2ban restartcar cela ferait perdre toutes les interdictions de la liste.

Réponses:


278

Avec Fail2Ban avant la v0.8.8:

fail2ban-client get YOURJAILNAMEHERE actionunban IPADDRESSHERE

Avec Fail2Ban version 0.8.8 et ultérieure:

fail2ban-client set YOURJAILNAMEHERE unbanip IPADDRESSHERE

Le plus difficile est de trouver la bonne prison:

  1. Utilisez iptables -L -npour trouver le nom de la règle ...
  2. ... puis utilisez fail2ban-client statuspour obtenir les noms de prison réels. Le nom de la règle et le nom de la prison ne sont peut-être pas les mêmes, mais vous devez savoir lequel est lié à qui.

2
Si vous avez l'erreur suivante 'Invalid Action name', lisez cette réponse
Morgan Courbet Le

32
Avec les versions récentes de fail2banvous devriez utiliser fail2ban-client set JAIL_NAME unbanip 1.2.3.4.
mardi

1
Quel est le nom de la prison par défaut? /etc/fail2ban/jail.confça ne marche pas pour moi.
Alex W

1
Vous pouvez trouver le nom de la prison dans le journal fail2ban si vous recherchez votre adresse IP
fred727

7
sshd était le nom de la prison pour moi.
Agustaf

82

Depuis la version 0.8.8, il y a l' unbanipoption (ce actionunbann'est pas pour cela). Elle peut être déclenchée par la setcommande. Si vous regardez la liste des options, vous verrez que la syntaxe est. Donc ce sera (par coeur, s'il vous plaît vérifier):

fail2ban-client set ssh-iptables unbanip IPADDRESSHERE 

plus générique:

fail2ban-client set JAILNAMEHERE unbanip IPADDRESSHERE

travaille pour moi


3
La commande unbanip a été ajoutée à la version 0.8.8. La meilleure solution si vous utilisez 0.8.8 ou une version ultérieure.
Alexander Garden

1
La question liée à cela dans le tracker fail2ban est la suivante: github.com/fail2ban/fail2ban/issues/132
aseques le

c'est la bonne réponse pour les versions actuelles. Merci!
Billynoah

"Commande invalide (aucune action définie ou encore non implémentée)"
Tom

vous devez indiquer le nom de jail correct (par exemple, sshd ou sshd-dos, consultez votre journal fail2ban)
mirage

53

Exemple pour SSH en mode interactif.

tapez bash:

fail2ban-client -i

puis en mode interactif, lisez le statut d'une prison:

status sshd

tu auras:

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

puis tapez en mode interactif fail2ban:

set sshd unbanip 203.113.167.162

tu auras:

203.113.167.162

cela ne signifie plus 203.113.167.162dans la liste d'interdiction.


3
Pour moi, le nom de la prison était sshd(Ubuntu 16)
scipilot

Sur le mien, il dit interdit au total: 6, mais la liste sous IP interdite est tout simplement vide :( doivent chemin à travers les journaux
William Hilsum

21

La réponse de ukoda est fausse:

Appelez fail2ban-clientsans paramètres et vous verrez une liste de commandes possibles:

get JAIL actionunban ACT             

Ceci obtient la commande unban pour l'action ACT pour JAIL.

Examinez le paramètre d'action de la prison que vous avez définie. Vous avez probablement une action iptables et peut-être une autre comme sendmail, whois ou autre. Donc, si votre action était iptables, elle ressemblera à ceci:

fail2ban-client get JAIL actionunban iptables

et la réponse sera:

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

Cela ne vous montrera que ce que vous auriez à écrire pour unban. Il n'y a pas de commande unban elle-même.


3
Ouais, ça a marché pour moi, sortir de la prison de SSH iptables -D fail2ban-ssh -s <IP> -j DROP. Merci ingo!
Deele

8

Si 192.168.2.1 est banni

sudo iptables -L

Vérifiez par exemple quelle chaîne est interdite

Chain fail2ban-sasl (1 références)

DROP all - 192.168.2.1 n'importe où

Ensuite:

# 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

4

Vous devez d'abord obtenir le nom de la prison. Vous pouvez obtenir la liste (dans la plupart des cas, ce sera seulement la prison ssh):

fail2ban-client status

Après avoir obtenu le nom de la prison, vous pouvez vérifier quelles adresses IP sont ignorées.

fail2ban-client get ssh ignoreip

Si votre adresse IP est dans la liste des ignorés, vous pouvez la supprimer via:

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

Supprimez votre entrée d'hôte:

fail2ban-client reload

2
La liste Ignorer est une liste d'adresses IP à ne jamais bannir. Cela n'a absolument aucun rapport avec la liste des adresses IP actuellement interdites, c'est-à-dire la liste pour laquelle OP souhaite supprimer une adresse IP.
jlh

3

Utilisation de 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

Cela suppose que l'action a été hosts.deny utilisé .... Mais il est encore plus utile que les choses qui tentent de changer la méthode des adresses IP unbanning sur les anciennes versions en utilisant actionunban...
den Berg Gert van

L' delignoreipaction ne supprime pas une adresse IP d'une interdiction, elle supprime une adresse IP de la liste des adresses IP ignorées (autrement dit, une adresse IP qui ne sera jamais bannie).
Tonin le

2

malheureusement avec la version 0.8.2 de fail2ban-client, la commande:

fail2ban-client get jail actionunban ipaddress

ne court pas. Pour résoudre le problème, le meilleur choix est de mettre à niveau fail2ban vers la dernière version et d'utiliser la nouvelle option:

unbanip



0

Si vous utilisez la version v0.10.2:

sudo fail2ban-client unban YOUR_IP_ADDRESS

C'est de l'aide:

unban <IP> ... <IP> unbans <IP> (in all jails and database)

Confirmé de travailler dans mon cas quand je suis probablement banni en raison de la connexion répétée du client SSH avec un mot de passe incorrect.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.