Question Comment annuler une adresse IP correctement avec Fail2Ban


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 est indiqué quelque chose comme: fail2ban-client get ssh actionunban <IP>. Mais ça ne marche pas.

Aussi, je ne veux pas /etc/init.d/fail2ban restart car cela ferait perdre toutes les interdictions de la liste.


160
2018-06-29 11:43


origine




Réponses:


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. Utilisation iptables -L -n pour trouver le nom de la règle ...
  2. ... puis utiliser fail2ban-client status pour 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é à quel.

227
2017-11-29 21:59



Si vous avez l'erreur suivante 'Invalid Action name', lis cette réponse - Morgan Courbet
Avec les versions récentes de fail2ban vous devriez utiliser fail2ban-client set JAIL_NAME unbanip 1.2.3.4. - tftd
Quel est le nom de la prison par défaut? /etc/fail2ban/jail.conf ça ne marche pas pour moi. - Alex W
Vous pouvez trouver le nom de la prison dans le journal fail2ban si vous recherchez votre adresse IP. - fred727
sshd était le nom de la prison pour moi. - agustaf


Depuis la v0.8.8, il y a le unbanip option (actionunban n'est pas dans ce but) Il peut être déclenché par le set Si vous regardez la liste des options, vous verrez que la syntaxe est la suivante: 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


81
2018-02-04 08:25



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
La question liée à ceci dans le tracker fail2ban est la suivante: github.com/fail2ban/fail2ban/issues/132 - Aseques
c'est la bonne réponse pour les versions actuelles. Je vous remercie! - billynoah
getting "Commande invalide (pas d'action définie ou pas encore implémentée)" - Tom
vous devez indiquer le nom de jail correct (par exemple, sshd ou sshd-dos, consultez votre journal fail2ban) - mirage


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.162 dans la liste d'interdiction.


40
2018-02-28 13:55



Pour moi, le nom de la prison était sshd (Ubuntu 16) - scipilot
Sur le mien, il est indiqué que le total est interdit: 6, mais la liste sous IP interdit est tout simplement vide :( doit suivre les journaux. - William Hilsum


La réponse de ukoda est fausse:

Appel fail2ban-client sans paramètres et vous voyez une liste de commandes possibles:

get JAIL actionunban ACT             

Cela 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.


21
2018-01-13 15:13



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


Si 192.168.2.1 est banni

sudo iptables -L

Vérifiez quelle chaîne est interdite, par exemple.

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

8
2018-01-24 14:04





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

4
2017-09-30 12:18



Cela suppose que hosts.deny était l'action utilisée .... Mais c'est toujours plus utile que les choses qui tentent de changer la méthode de suppression de la propriété intellectuelle sur les anciennes versions en utilisant actionunban... - Gert van den Berg


Vous devez d'abord obtenir le nom de la prison. Vous pouvez obtenir la liste (dans la plupart des cas, ce sera uniquement 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

4
2017-09-09 11:20



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


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 consiste à mettre à niveau fail2ban vers la dernière version et à utiliser la nouvelle option:

unbanip

2
2018-06-21 18:35





Si une adresse IP est dans plusieurs prisons, cela devient une douleur.

one-liner pour supprimer 192.168.1.2 de toutes les prisons:

 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

un script pour faire la même chose https://gist.github.com/yolabingo/c810db6fe7f8bfcb9eb4f6ffc531e474


0
2017-11-02 20:59