Efficacité de mod-evasive pour apache2 ?

Salut,
A l’instalation de mon serveur (ou se trouve le Wiki) j’avais installé mod-evasive - Sans trop penser que ça serait une réelle sécurité…

/var/lock/mod_evasive# ls -1 | wc -l 201

201 ip bloquées pour la semaine en cours… :smiling_imp:
J’aimerais votre avis sur la possibilité que ces 201 ip aient eu des comportements inamicaux, ou si mon réglage est un peu trop “serré” ?

<IfModule mod_evasive20.c> DOSHashTableSize 3097 DOSPageCount 2 DOSSiteCount 50 DOSPageInterval 1 DOSSiteInterval 1 DOSBlockingPeriod 10 DOSEmailNotify root@domaine.tld DOSSystemCommand "/sbin/iptables -I INPUT -p tcp --dport 80 -s %s -j DROP" DOSLogDir "/var/lock/mod_evasive" DOSWhitelist 127.0.0.1 DOSWhitelist 127.0.1.1 DOSWhitelist xxx.xxx.xxx.xxx </IfModule>

Et je viens de me rendre compte d’ailleurs que je ne reçois pas les alertes emails, et que je vois pas les ip dans iptables… :017

Salut,
J’ai un peu avancé et compris certaines choses qui m’avaient échappées…

Le module fonctionne bien, mais…

  1. Pour les mails, le module cherche /bin/mail, alors que l’exécutable se trouve dans /usr/sbin/mail
  1. Le blacklistage fonctionne bien, mais pour que www-data ait accès à iptables, il faut lui en donner le droit… Pas question!
  2. Pour pallier ce problème, il faut se servir de fail2ban; Ajouter un module qui permette de blacklister temporairement les ip dans iptables.

J’ai besoin d’un volontaire pour tester mes réglages… En effet, j’ai trois possibilités pour tester:

  • 2 serveurs distants pour qui les ip sont déjà en ACCEPT dans iptables
  • Une toute petite connexion en edge qui ne suffit pas pour simuler une attaque dos sur apache2… :005

Merci d’avance!

À quelqu’un qui, et c’est rare, utilise correctement le verbe transitif direct pallier (avec deux l), on ne peut rien refuser. Je suis ton homme. Que faut-il faire?

edit
Entretemps, je t’ai «floodé». Dans les log de isalo.org tu devrais trouver 10 séries de 15 requêtes. Chaque série est temporisée (3 secondes d’écart). J’ai reçu des 200 OK pour toute la série de 150 requêtes.

User agent: ripat TEST FLOOD.
Date: 2012-05-28 09:39:30

[quote=“ripat”]À quelqu’un qui, et c’est rare, utilise correctement le verbe transitif direct pallier (avec deux l), on ne peut rien refuser. Je suis ton homme. Que faut-il faire?

edit
Entretemps, je t’ai «floodé». Dans les log de isalo.org tu devrais trouver 10 séries de 15 requêtes. Chaque série est temporisée (3 secondes d’écart). J’ai reçu des 200 OK pour toute la série de 150 requêtes.

User agent: ripat TEST FLOOD.
Date: 2012-05-28 09:39:30[/quote]

Salut,
Merci beaucoup pour le test. J’ai corrigé “pallier”… j’étais trop pris dans mes logs, je ne me suis pas relu…

Je regarde mes logs et efface ton ip de la liste noire! :wink:

Vu.
Je pense que ce n’était pas assez “méchant” pour que tu sois bloqué. :wink:

J’ai refait 10 séries de 150 requêtes et je suis banni.

Si tu veux, il y a moyen de bloquer des floods de manière simple. J’ai fait ça pour des tentatives de connexions ssh non autorisées. Ce script fait 30 lignes et peut bannir des ip qui font plus de x tentatives par minute ou par heure. Simple script qui utilise (m|g)awk pour analyser les fréquences des connexions. Pas de daemon, pas de module apache.

Je remets ça à la sauce apache et te l’envoie si intéressé.

Bien sur, avec plaisir.

Content de voir que tu t’es enfin fait jeter pas mon serveur… :laughing:

Re,
Et j’ai confirmation que ma règle fail2ban fonctionne:

2012-05-28 11:02:10,347 fail2ban.actions: WARNING [apache-dosevasive] Ban xxx.xx.xx.xxx

Merci! :006

ok. J’ai un peu de travail à faire pour le mettre au format apache. Demain soir au plus tard.

Merci!

Pour le sujet, je passe en résolu.

Explications sur le Wiki:
Libapache2-mod-evasive
Remarque sur la fonction DOSEmailNotify
Fail2ban avec mod-evasive

Hello , désolé de m’incruster mais ton script pour ssh m’intéresse ripat :slightly_smiling: . Est ce j’abuse si je te demande un exemplaire ?

J’étais pile poil en train de chercher un moyen pour bannir automatiquement ces IP qui font X centaines de tentatives sur mon port 22 :083 et qui font gonfler mes logs en pure perte.

[quote=“sorodje”]Hello , désolé de m’incruster mais ton script pour ssh m’intéresse ripat :slightly_smiling: . Est ce j’abuse si je te demande un exemplaire ?

J’étais pile poil en train de chercher un moyen pour bannir automatiquement ces IP qui font X centaines de tentatives sur mon port 22 :083 et qui font gonfler mes logs en pure perte.[/quote]

Pas de problème mais pas avant demain soir. Et peut-être pourrais-tu créer un nouveau fil ou demander gentiment à un modo de le scinder…

@ripat : je t’ai fait un MP . lol jugera de la nécessité de scinder ou non :wink:

Sur les conseils de lol et, pour ne pas polluer son fil, je mets le script pour ssh dans T&A
bannir-les-tentatives-d-acces-ssh-t39009.html#p393555