Non, je ne l'ai pas encore fait, mais j'ai une idée de comment le faire.
NB : j'ai édité ce post pour inclure les corrections suggérées par Qaghan
c'est le script de renardrouge qui m'a donner cette idée, j'ai fait mes recherches et je pense qu'en améliorant l'idée développée ici : http://five2one.org/djc/articles/Stoppi ... ts_II.html
on peut faire un truc sympa.
Voici comment ça pourrait marcher :
pour le filtre anti spamBots, je n'ai pas réinventer la roue, je pense utiliser la technique du honey-pot décrite dans l'article ci-dessus (en légèrement mieux) :
Dans le robots.txt j'insère la ligne suivante :
User-agent: *
Disallow: /email-addresses/
c'est mon apât...
ensuite dans mon httpd.conf j'insère une condition du genre :
et hop tous les curieux qui vont voir dans le répertoire email-addresses lancent le script de ban :twisted:
c'est la qu'est l'amélioration car dans l'exemple le script n'est pas lancé au moment de la requête mais à intervalle fixe (donc un robot à le temps de faire du dégat avant d'être bannit)
évidemment on peut utiliser d'autres appâts du style un lien invisible sur la home page :
<a href="email-addresses/our_mails.htm">write to us</a>
(et comme le répertoire est interdit aux robots, aucun risque de bannir google et les robots honnêtes)
et que fait ban.pl (ou ban.php)? et Bien il update le fichier .htaccess qui se trouve à la racine du site et dans lequel les adresses IP sont bloquées grâce à la directive Deny...
résultat : cette ip est bloquée directement(reste à voir les modalités pour la débloquer, au bout de n minutes par exemple)
La même méthode s'applique pour les pirates (les plus cons il est vrai).
j'ai remarqué dans mes stats que j'avais beaucoup d'erreur 404 sur des fichiers du type :
/scripts/..%255c../winnt/system32/cmd.exe
/MSADC/root.exe
/MSOffice/cltreq.asp
ou encore...
/_vti_bin/owssvr.dll
des failles de windows donc...
et hop en ajoutant quelques conditions dans le genre :
hop à dégagé aussi :evil:
evidemment l'idéal c'est d'entrer dès le début une liste d'IP de robots indélicats, comme ça cette méthode ne sert qu'à la compléter et dans ces conditions il ne devrait pas y avoir de problème de perfs
z'en pensé quoi?
NB : j'ai édité ce post pour inclure les corrections suggérées par Qaghan
c'est le script de renardrouge qui m'a donner cette idée, j'ai fait mes recherches et je pense qu'en améliorant l'idée développée ici : http://five2one.org/djc/articles/Stoppi ... ts_II.html
on peut faire un truc sympa.
Voici comment ça pourrait marcher :
pour le filtre anti spamBots, je n'ai pas réinventer la roue, je pense utiliser la technique du honey-pot décrite dans l'article ci-dessus (en légèrement mieux) :
Dans le robots.txt j'insère la ligne suivante :
User-agent: *
Disallow: /email-addresses/
c'est mon apât...
ensuite dans mon httpd.conf j'insère une condition du genre :
Code:
RewriteCond /var/www/myroot/web/%{REQUEST_FILENAME} !-d
RewriteCond /var/www/myroot/web/%{REQUEST_FILENAME} /email-addresses/
# la syntaxe de la regex est sans doute fauuse, j'suis pas un cador, c'est juste pour donner l'idée
RewriteRule ^(.+) /usr/lib/cgi-bin/ban.pl [L]
# là j'ai choisis le nom d'un cgi mais le script peut-être fait dans un autre langage
et hop tous les curieux qui vont voir dans le répertoire email-addresses lancent le script de ban :twisted:
c'est la qu'est l'amélioration car dans l'exemple le script n'est pas lancé au moment de la requête mais à intervalle fixe (donc un robot à le temps de faire du dégat avant d'être bannit)
évidemment on peut utiliser d'autres appâts du style un lien invisible sur la home page :
<a href="email-addresses/our_mails.htm">write to us</a>
(et comme le répertoire est interdit aux robots, aucun risque de bannir google et les robots honnêtes)
et que fait ban.pl (ou ban.php)? et Bien il update le fichier .htaccess qui se trouve à la racine du site et dans lequel les adresses IP sont bloquées grâce à la directive Deny...
résultat : cette ip est bloquée directement(reste à voir les modalités pour la débloquer, au bout de n minutes par exemple)
La même méthode s'applique pour les pirates (les plus cons il est vrai).
j'ai remarqué dans mes stats que j'avais beaucoup d'erreur 404 sur des fichiers du type :
/scripts/..%255c../winnt/system32/cmd.exe
/MSADC/root.exe
/MSOffice/cltreq.asp
ou encore...
/_vti_bin/owssvr.dll
des failles de windows donc...
et hop en ajoutant quelques conditions dans le genre :
Code:
RewriteCond /var/www/myroot/web/%{REQUEST_FILENAME} !-f
RewriteCond /var/www/myroot/web/%{REQUEST_FILENAME} .root\.exe. [OR]
RewriteCond /var/www/myroot/web/%{REQUEST_FILENAME} .cltreq\.asp. [OR]
RewriteRule ^(.+) /usr/lib/cgi-bin/ban.pl [L] #
hop à dégagé aussi :evil:
evidemment l'idéal c'est d'entrer dès le début une liste d'IP de robots indélicats, comme ça cette méthode ne sert qu'à la compléter et dans ces conditions il ne devrait pas y avoir de problème de perfs
z'en pensé quoi?