Fail2ban: philosophie de mise en œuvre bantime

Créé le 11 févr. 2018  ·  3Commentaires  ·  Source: fail2ban/fail2ban

Il s'agit d'une demande de fonctionnalité / d'un changement dans la philosophie de conception de bantime (?).

J'ai récemment utilisé wail2ban sur mon VPS Windows et il m'a semblé que la façon dont l'auteur a implémenté le bantime était plutôt inspirée.

L'auteur utilise un temps d'interdiction à la puissance du nombre de fois que l'IP a été interdite. Cela annule le besoin d'une prison fail2ban ou récidiviste car les bantimes deviennent progressivement plus longs.

c'est-à-dire Bantime fixé à 5 (minutes)
Le premier ban est 5^1 = 5 min
Le deuxième ban est 5^2 = 25 min
Le troisième ban est 5^3 = 125 min
Quatrième ban est 5^4 = 625 min
etc.

Le seul problème avec cette méthodologie est qu'elle nécessite un fichier "bannedips" avec un compteur par opposition à l'analyse actuelle des journaux pour déterminer qui est banni.

implemented-in-newer-version

Commentaire le plus utile

Ceci est déjà implémenté en 0.11 (à partir de #1460), voir jail.conf par exemple https://github.com/fail2ban/fail2ban/blob/681bc2ef07ebdf749ccef624d8d598de42b0c6b6/config/jail.conf#L47 -L49

Veuillez noter que parce que les botnets relativement faciles pourraient déterminer vos paramètres d'interdiction, cela affecte également les compteurs d'échecs (ce qui signifie maxretry ) également (si bantime.increment autorisé) :

  • avant la première interdiction, l'IP doit faire 5 maxretry tentatives infructueuses dans findtime , pour être bannie ;
  • après unban, il est dit "mauvais", donc pour le prochain ban, 3 tentatives suffisent ;
  • la prochaine fois 2 tentatives seulement ;
  • chaque prochaine fois sera banni immédiatement (déjà par 1 tentative)

L'indicateur « mauvais » est réinitialisé si l'IP sera supprimée de la base de données (unban manuel ou après le triple du dernier ban, s'il n'y a plus d'échec), exemple :

  • ip a été banni pendant 1 jour. Il sera retiré au plus tôt dans 3 jours ;
  • ip a été banni le 1er mai 00:00:00 pendant 12 heures. Il sera supprimé après le 02 mai 12:00:00.

Pour un exemple de configuration, voir https://github.com/fail2ban/fail2ban/issues/1791#issuecomment-303343075

Tous les 3 commentaires

Ceci est déjà implémenté en 0.11 (à partir de #1460), voir jail.conf par exemple https://github.com/fail2ban/fail2ban/blob/681bc2ef07ebdf749ccef624d8d598de42b0c6b6/config/jail.conf#L47 -L49

Veuillez noter que parce que les botnets relativement faciles pourraient déterminer vos paramètres d'interdiction, cela affecte également les compteurs d'échecs (ce qui signifie maxretry ) également (si bantime.increment autorisé) :

  • avant la première interdiction, l'IP doit faire 5 maxretry tentatives infructueuses dans findtime , pour être bannie ;
  • après unban, il est dit "mauvais", donc pour le prochain ban, 3 tentatives suffisent ;
  • la prochaine fois 2 tentatives seulement ;
  • chaque prochaine fois sera banni immédiatement (déjà par 1 tentative)

L'indicateur « mauvais » est réinitialisé si l'IP sera supprimée de la base de données (unban manuel ou après le triple du dernier ban, s'il n'y a plus d'échec), exemple :

  • ip a été banni pendant 1 jour. Il sera retiré au plus tôt dans 3 jours ;
  • ip a été banni le 1er mai 00:00:00 pendant 12 heures. Il sera supprimé après le 02 mai 12:00:00.

Pour un exemple de configuration, voir https://github.com/fail2ban/fail2ban/issues/1791#issuecomment-303343075

@sebres puisque 0.11 n'est pas encore officiellement sorti, est-ce aussi disponible sur 0.10.x ?

Non. Malheureusement.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

mvastola picture mvastola  ·  7Commentaires

thereporter42 picture thereporter42  ·  7Commentaires

xtrmbuster picture xtrmbuster  ·  3Commentaires

AleksCee picture AleksCee  ·  5Commentaires

Skyridr picture Skyridr  ·  3Commentaires