Script php Anti aspirateur

Nouveau WRInaute
Hello les webmasters,

J'ai un petit script php anti aspirateur pour ceux que ca interessent éventuellement:

C'est léger:
- 30 lignes de codes
- 3 requetes Mysql.

Ca fait quoi:
- Ca bloque les adresses IP qui demandent des pages php a un trop grand ryhtme (beaucoup plus qu'un visiteur normal).

- ce n'est en rien basé sur les user agent/robots.txt car tous les aspirateurs permettent de faire n'importe quoi.

Ca ne bloque pas les robots:
- google est passé hier chez moi sans problème, deepindex aussi, scooter aussi.... bon je les connais pas tous mais aucun robot n'a été arrété, car les robots ne font pas des accès bourrins sur les sites (au contraire des aspirateurs qui sont hyperviolents dans le genre)..

Ca marche:
- jusqu'a maintenant il a bloqué: Téléport pro/ Httrack / Memoweb / Webreaper / Offline Explorer. Ca marche logiquement avec les autres aussi.

(je mettrais l'adresse s'il y a de demande, ou 1 mp et je vous envoie l'url).

Vos commentaires sur le sujet (pour ceux que ca interessent bien sur) sont les rudement bienvenus pour l'améliorer encore.
:D

EDIT du 18/7: je mets l'url ca m'évite de répondre en privé au mp qui me le demande toujours de temps à autre: http://www.1001bd.com/stop_aspirateurs
Pour infos: Des liens commencent à aparaitre sur les sites de ressources pour webmaster, il est présent sur 01.net, sur le support d'amen.fr et il devrait être reppris sur le CD dans quelques magazines spécialisés. Si vous le voyez envoyez moi un scan du mag, ca me fera toujours plaisir. :wink:
 
WRInaute passionné
Bonsoir,

Suis-je naïve... :? en quoi un aspirateur peut-il être une plaie ?

Avant d'avoir l'ADSL, je me demande comment j'aurais pu faire sans pour utiliser les sites avec des cours, dossiers...
 
WRInaute impliqué
Et bien les aspirateurs comme leur nom l'indique, aspire le site web, pas seulement une page, le plus souvent, le site complet, et parfois le site peut faire beaucoup de mégas-octets, imaginez que tout le monde aspire votre site... l'hebergeur qui souvent limite le transfert de données fait payer le surplus... voila en quoi c'est génant.
 
WRInaute passionné
Les aspirateurs consomment de la bande passante, ou des hits mais n'apportent rien en terme de visite, surtout si c'est pour aspirer des adresses mails dans le but de faire du spam (envoil d'emails non désirés)

Un script php c'est bien, mais celà peut aussi être fait avec un fichier .htaccess (Voir la réponse de Dan)
Ce script serait donc bien pour ceux qui n'ont pas acces au fichier .htaccess (hergement gratuit ou mutualisés généralement, free, lycos; ifrance, wanadoo ...)
 
WRInaute passionné
Nitou a dit:
Et bien les aspirateurs comme leur nom l'indique, aspire le site web, pas seulement une page, le plus souvent, le site complet
Evidemment... il ne me serait jamais venu à l'idée d'aspirer un site complet, mais si certains le font, effectivement ce doit être pénalisant.
 
WRInaute occasionnel
Bonjour,
je viens de voter. J'ai coché "Les aspirateurs de sites sont très pratiques", cependant je voulais complèter ma réponse.
Je pense que c'est très pratique pour un utilisateur, ça évite de faire "Enregistrer" sur chaque page.
Cependant, pour le webmaster et celui qui gère le serveur, ça peut créer plein de problèmes :
- gaspillage de bande passante
- vol de contenu grandement facilité
...
Comme le dit Monique, j'utilisais régulièrement un aspirateur de sites lorsque je n'avais qu'une connexion modem. Evidemment, je l'utilisais intelligemment, de façon à disposer offline des quelques pages qui m'intéressaient. Surtout pas pour "pomper" tout un site comme un "bourrin".

Il y a quelques temps, j'avais posté un message sur les aspirateurs d'adresses email. J'ai installé sur mon site un script qui génère un nombre infini de pages web aléatoires remplies avec plein d'adresses email inexistantes. La page qui exécute ce script est interdite d'accès (robots.txt), et n'est accessible que par un lien invisible (il n'y a pas de texte au milieu de la balise A).
Donc les seuls visiteurs sur ces pages sont les aspirateurs très indélicats d'emails ou de pages web. J'ai essayé moi-même d'aspirer mon site, je me suis retrouvé avec des centaines de pages web parasites en quelques minutes. Exactement ce que je voulais :twisted:

Personnellement, je n'utilise presque plus les aspirateurs de sites, maintenant que j'ai une connexion permanente à Internet. Mieux vaut revisiter la page web pour trouver des informations à jour.

Jocelyn
 
WRInaute passionné
Kmacleod a dit:
Un script php c'est bien, mais celà peut aussi être fait avec un fichier .htaccess (Voir la réponse de Dan)
Ce script serait donc bien pour ceux qui n'ont pas acces au fichier .htaccess (hergement gratuit ou mutualisés généralement, free, lycos; ifrance, wanadoo ...)
Kmacleod,
C'est cool de faire ma promo :wink:

Il faut reconnaître que la méthode .htaccess a une restriction: de plus en plus de logiciels aspirateurs permettent de définir le USER_AGENT ou de le masquer. Dans ce cas, les règles de réécriture ne fonctionnent pas, sauf pour ceux qui utilisent le logiciel "tel quel".

Peu de méthodes permettent d'arrêter les collecteurs de sites/email "pros" .
Il est aussi relativement facile de temporiser la collecte (selon l'outil utilisé) pour éviter de se faire bloquer par un script tel que celui proposé ici.
Je ne dis pas que les 2 méthodes sont inefficaces, je dis simplement qu'il est quasi impossible de bloquer quelqu'un de déterminé et compétent... mais ces deux qualités ne sont pas représentatives de la majorité :wink:

Dan
 
Nouveau WRInaute
hetzeld a dit:
Il est aussi relativement facile de temporiser la collecte (selon l'outil utilisé) pour éviter de se faire bloquer par un script tel que celui proposé ici.

Ben celui là tu as du boulot tout de même. Il est basé sur le nombre de page aspirées dans la dernière minute.
:mrgreen:

Même avec un très bon aspirateur, configuré au minimum sur 1 seul thread, l'IP se fait vérouiller, et il ne récupère plus que des pages blanches par la suite, le temps qu'il vide sa liste dURL. Je ne dis pas que c'est ultime, mais dans ces conditions aspirer un site important prendra des heures et des heures, ce qui perdra de son intérêt largement.
(et de toute manière comme il aura essayé comme un bourrin le 1er coup, il sera coincé).
8)

Les robots.txt sont complètement inutiles face à eux maintenant, tous les aspi proposent de passer par dessus.

Pareil pour les .htaccess, l'user agent est totalement configurable et se fait passer pour un navigateur classique (quand le gars de mets pas un petit message sympa à la place) :roll:
 
WRInaute accro
Au risque de passer pour un malappris...

Pour mon site, les aspirateurs ne peuvent charger que les deux liens de la page d'accueil, car toutes les autres pages nécéssitent des paramètres, qui sont fournis manuellement par le visiteur avec une FORM adaptée.

Sur mon site, un gaspirateur peut quasiment rien faire...

Jean Francois Ortolo
 
Nouveau WRInaute
ortolojf a dit:
Sur mon site, un gaspirateur peut quasiment rien faire...

Effectivement c'est peut-être un peu plus difficile (quoique j'en suis pas certains), mais on ne peut pas contruire tous les sites sur ton modèle de site.

De plus tu as assez peu de page au final, les aspirateurs feront donc pas de gros dégats chez toi.

Quand on utilise un site nuke* et des pages identiques qu'on peut charger avec des paramètres légèrement différents, ou des sessions, c'est la catastrophe. Le truc relit sans arrêt les même pages car il pense que ce ne sont pas les même.
 
WRInaute passionné
Renardrouge a dit:
J'ai un petit script php anti aspirateur pour ceux que ca interessent
Ca ne gêne pas le google full crawl ( beaucoup plus de requête que le daily crawl ) ? Si non, ton script m'interresse
Jocelyn a dit:
Il y a quelques temps, j'avais posté un message sur les aspirateurs d'adresses email. J'ai installé sur mon site un script qui génère un nombre infini de pages web aléatoires remplies avec plein d'adresses email inexistantes. La page qui exécute ce script est interdite d'accès (robots.txt), et n'est accessible que par un lien invisible (il n'y a pas de texte au milieu de la balise A).
Donc les seuls visiteurs sur ces pages sont les aspirateurs très indélicats d'emails ou de pages web. J'ai essayé moi-même d'aspirer mon site, je me suis retrouvé avec des centaines de pages web parasites en quelques minutes. Exactement ce que je voulais :twisted:
:lol: excellent pour saturer les bases des spammeurs :lol:
As-tu eu des visites sur ces trap pages ?
 
Olivier Duffez (admin)
Membre du personnel
ortolojf a dit:
Au risque de passer pour un malappris...

Pour mon site, les aspirateurs ne peuvent charger que les deux liens de la page d'accueil, car toutes les autres pages nécéssitent des paramètres, qui sont fournis manuellement par le visiteur avec une FORM adaptée.

Sur mon site, un gaspirateur peut quasiment rien faire...

Jean Francois Ortolo
Alors comment font les robots des moteurs pour indexer ton site ?
 
WRInaute passionné
Renardrouge a dit:
Pareil pour les .htaccess, l'user agent est totalement configurable et se fait passer pour un navigateur classique (quand le gars de mets pas un petit message sympa à la place) :roll:
Tout à fait d'accord, c'est ce que j'ai dit plus haut en répondant à Kmacleod.
C'est clair que ton script "anti-aspi" semble intéressant ! Tu peux m'inscrire sur ta liste si tu veux bien.

As-tu des infos telles que la charge CPU et le délai d'exécution du script?
J'imagine qu'il vaut mieux lui réserver sa propre base mySQL, non ?

A+

Dan
 
Nouveau WRInaute
Eservice a dit:
Renardrouge a dit:
J'ai un petit script php anti aspirateur pour ceux que ca interessent
Ca ne gêne pas le google full crawl ( beaucoup plus de requête que le daily crawl ) ? Si non, ton script m'interresse

Ca ne gêne pas car google et les robots indexeurs ne sont pas des "ratisseurs" de site. Ils font de nombreux acces mais largement repartis sur des journées entières. En plus ils ont plusieurs IP différentes. Donc ca déclenche pas le blackilistage. Au pire tu peux ajouter un controle sur l'IP avant de la blacklister si tu as un doute (mais pas sur le user agent hein). :wink:

Je t'envoie l'url en mp.

Jocelyn a dit:
J'ai installé sur mon site un script qui génère un nombre infini de pages web aléatoires remplies avec plein d'adresses email inexistantes.

je préfère qu'il arrête l'aspiration le + vite possible plutot que de monopoliser des ressources pour ce genre de trucs. Au mieux le gars a perdu du temps (mais il s'en fout a mon avis, il effacera tout et poursuivra son chemin), au pire c'est ton serveur qui perd du temps avec lui.

Mais bon, chacun ses gouts.
:D
 
Nouveau WRInaute
hetzeld a dit:
As-tu des infos telles que la charge CPU et le délai d'exécution du script?
J'imagine qu'il vaut mieux lui réserver sa propre base mySQL, non ?

Pour la base de données tu fais comme tu veux. Je ne sais pas vraiment si tu y gagneras quelque chose, j'utilise la meme que pour le restant du site.

J'ai pas vu de différence sur la charge SQL.
C'est 3 requetes en plus par page.
Il y a envrion 15 000 pages/jour chez moi.

A toi d'évaluer si ca vaut le coup par rapport aux ressources consommées.
Je vais refaire une version avec des tables MySQL en HEAP (en mémoire). Donc là ce sera encore moins gourmand. Il me faut quelques jours pour trouver le temps de le faire.

Ca reste moins gourmand, qu'un script comme les visiteurs ou un *nuke*bien sur

Ca ne prend quasiment pas de place, puisque tu as seulement 2 tables. Celle des IP bloquées, et celle des IP qui parcourt ton site dans la dernière minute (et qui se vide au fur et à mesure, il n'y a pas de log), pas de fioritures.

Tout tient en 30 lignes de codes php (en encore avec les accolades des if).
Il y a surement des améliorations possibles, mais je ne vois plus trop.
J'ai vraiment essayé de faire le plus simple possible.
:D
 
WRInaute accro
Ben...

Les robots n'indexent que la page d'accueil, et aussi les 2 pages sur lesquelles cette page d'accueil a des liens.

De toute manière, le contenu de mon site dépend principalement des manipulations du visiteur, à savoir ce qu'il cherche, donc le contenu est très variable suivant les visites...

En gros, les statistiques sur les courses passées ( premier lien ), et les statistiques sur les courses du lendemain/après-midi (deuxième lien ).

C'est sûr qu'une fois qu'on est sur la page résultante, faut choisir la date des courses ( 1 ), ou la course à visualiser dans le cas ( 2 ).

Mon site est une pure merveille javascript:emoticon(':oops:') , tout en PHP et HTML fait main sous l'éditeur vi sous Linux RedHat7.3, ce fut un très gros travail, mais maintenant c'est terminé, ouf!...

Malheureusement, mes back-links viennent de chuter un petit peu, car le GoogleBot est passé entre 13h et 14h, heure à laquelle aucune course du lendemain n'est encore disponible, donc il a eu un message d'avertissement, qui ne comportait pas de lien vers la page d'accueil...

Dernier truc: Cà ne sert à rien d'aller sur mon site pour l'instant, je n'ai pas encore l'autorisation du PMU d'utiliser leurs résultats pour mettre à jour ma Base de Données, ce qui fait que celle-ci s'arrête au 31 décembre 2001. Les statistiques ne sont pas viables pour le moment... javascript:emoticon(':cry:')

Maiiisss, si vous voulez me visiter et me donner vos impressions, vous êtes les bienvenus! javascript:emoticon(':roll:')

Voilà, enfin, bien à vous.

Jean Francois Ortolo
 
Nouveau WRInaute
Bon pas plus d'entousiasme ou de retour que ca ?
Je pensais que ca interesserait plus de monde la lutte anti aspi pour etre franc.

Mais bon, je me trompe peut-être. :?
 
WRInaute occasionnel
Renardrouge> Si si moi cela m'intéresse mais là je suis surcharger de travail. Je pense avoir plus de temps libre d'ici 1-2 semaines, donc je te recontacterai à ce moment là !
 
WRInaute passionné
Bonjour RenardRouge,

ton logiciel anti-aspi marche sans doute correctement.

J'ai décortiqué tes scripts et je t'envoie en MP des idées pour l'amélioration des performances ( une base de données plus petite, moins de requêtes sur le serveur MySQL, moins d'instructions sur le serveur PHP ), d'autant plus sensible que le traffic est élevé. Ceci dit je n'ai pas testé leur efficacité, je me fie à mon expérience.
 
Nouveau WRInaute
Hello,

Je viens de lire ton message, un grand merci pour les commentaires.
Comme j'ai retrouvé du boulot je garanti pas que je fais ca dans la soirée,
mais des que possible je m'y remet.

Je pense que tu as oublié les tables en heap pour les perf (mais sincèrement je ne sais pas si le script y gagnera enormément car il sera un peu plus complexe dans certains cas).

En tout cas merci encore. Je repasse dans quelques heures quand j'ai relu ton message et que je l'ai décortiqué un peu plus.
:mrgreen:
 
Nouveau WRInaute
heuuu intéressant, il fait ca comment ?

A priori il n'y a rien a voir avec autre chose (a moins d'avoir des tables avec le meme nom ou des variables communes peut-etre).

Ou alors tu des des pages qui se rechargent tres tres vite ? (dans ce cas augmente la limite).

Sincerement je ne vois pas comment il peut empecher un autre script de fonctionner correctement désolé. 8O
 
WRInaute passionné
Il s'agit peut-être d'une tentative (extérieure) de flooding de ton activation de compte ... si si ça existe, mais ça n'est qu'une hypothèse
 
WRInaute impliqué
Le phénomène est assez bizarre, je n'arrive pas à trouver l'erreur, je ne comprends d'ailleur pas pourquoi cela fait ça car le script est tout à fait différent de celui de l'activation.
 
WRInaute passionné
Les tables HEAP améliorent les performances mais elles ont des inconvénients : entre autres elles ne suportent pas les colonnes AUTO_INCREMENT.
Ensuite il n'est pas sûr que tous les hébergeurs les acceptent.
 
Nouveau WRInaute
Elles ont aussi l'inconvénient de ne plus être là quand le serveur mysql redémarre, sur chaque instruction il faut tester l'existance de la table et faire une recreation au cas ou, ca complique, ca augmente la charge cpu... J'ai vu un bench que les perfs etaient 15% meilleures. Je ne sais pas si ca vaut le coup au final.

Le champ auto, c'est pas grave, il est perrissable je pense
(comme d'autres j'ai bien noté merci de tes mp tres interessants).
:D
 
WRInaute passionné
Bonsoir, après plusieurs discussions avec Renardrouge, les améliorations du script SQL sont les suivantes :
Code:
CREATE TABLE ip (
  ip char(15) NOT NULL,
  heure smallint(4) UNSIGNED NOT NULL,
  cpt tinyint(2) UNSIGNED NOT NULL,
  PRIMARY KEY  (ip)
) TYPE=MyISAM;

CREATE TABLE ip_bl (
  ip char(15) NOT NULL,
  date date NOT NULL,
  PRIMARY KEY  (ip)
) TYPE=MyISAM;
L'heure est au format hhmm et les valeurs par défaut sont inutiles dans ce schéma (adapté à MySQL).

Je laisse le soin à Renardrouge de modifier le script PHP de son oeuvre intéressante.
 
Nouveau WRInaute
Quelqu'un a réalisé une version sans base de données (fichiers à la place).
(pour les perf globales d'une machine je ne sais pas si c'est meilleur).

Et une version utilisant des tables en mémoire.

URL sur demande, ou je vais finir par les poster ici, au choix.
 
WRInaute passionné
Renardrouge a dit:
Quelqu'un a réalisé une version sans base de données (fichiers à la place).
(pour les perf globales d'une machine je ne sais pas si c'est meilleur).
Le problème d'un fichier est que sur des accès simultanés il y a un risque de corruption ou de perte de données, d'autant plus que les accès sont en lecture/écriture/suppression.
 
WRInaute passionné
Comme dit précédement, la page est interdite d'acces aux robots, seul les aspirateurs y entrent et tombent dans la trappe.
Comme le lien est caché pour les visiteurs, il ne tombe pas non plus dedans.
Certains mettent un lien non caché avec une image explicite et une information sur la barre status pour les visiteurs
 
WRInaute occasionnel
Le problème d'un fichier est que sur des accès simultanés il y a un risque de corruption ou de perte de données, d'autant plus que les accès sont en lecture/écriture/suppression.

Exact !
Mais on peut tout de même utiliser les fichiers si on prend soin de correctement vérouiller et dévérouiller leur accès. Voir la fonction flock() pour plus de précisions.
http://php.net/flock

Jocelyn
 
WRInaute passionné
Jocelyn a dit:
Mais on peut tout de même utiliser les fichiers si on prend soin de correctement vérouiller et dévérouiller leur accès. Voir la fonction flock()
Certes cette fonction améliore la fiabilité, même si il s'applique à la totalité du fichier.
Mais il s'ensuit une attente en cas de verrouillages concurentiels, qui peut s'avérer rédhibitoire à partir d'un certain traffic, d'autant plus qu'ici, un seul fichier texte est géré pour toutes les pages du site et qu'un aspirateur "hit" à fond la caisse.

A partir d'un certain seuil de volume d'informations ou de fréquence de modifications, la seule solution viable est un SGBD, notamment grâce à un verrouillage plus fin et à une recherche plus rapide d'un sous-ensemble de lignes.
 
Nouveau WRInaute
moi j'ai une solution toutes simple, ce pas efficace à 100% mais permet deja de ien limites les choses :

Code:
<?
$killUser=0;
$userAgent = eregi_replace("/", "", $_SERVER["HTTP_USER_AGENT"]);

// ---------------- Liste d'Aspi ----------------
$NameAspi = Array ("Anonymous", "Wget","WebStripper",
                   "MSIECrawler","HTTPConnect","WebZIP",
                   "Teleport","Downloader","AdNetTrack",
                   "WebCopier","LinkWalker","Indy","HTTrack", "eCatch",
                   "Hébergement","guillaume","larbin");

// ---------------- Verification ----------------
for ($i = 0; $i <= count($NameAspi)-1; $i++) {
 if(eregi($NameAspi[$i],$userAgent,$a)) {
  $KillUser = 1; // pour killer à la fin du scripts
 }
}

if($KillUser){
// ---------------- Refuse l'IP dy mec ----------------
// ajouter un crontab qui enleve les ban toutes les x mn
 $htaccess="\nDeny from ".$_SERVER["REMOTE_ADDR"];
 $fp = fopen("/home/folder/www/.htaccess","a");
 fputs($fp,$htaccess);
 fclose($fp);
 exit;
}
?>
 
WRInaute passionné
La gestion par .htaccess est bien mais permet tout de même de laisser generer 1.000 hits en erreur 403 certes, mais 1.000 hits. (la BP est protégée, mais pas les hits)

Je suis en train de tester la porte ouverte sur le .htacces mais blocage dans la navigation ensuite si exces selon le script de renardrouge
 
Nouveau WRInaute
Le pb c'est que se baser sur l'user agent ser pas a arrêter bcp de monde.

Juste le 1er acces de ton aspi.

Le 2eme coup le gars aura changé l'user agent.

Efficacité entre 0 et 5% je dirais.
:wink:
 
WRInaute discret
Et c'est le type même de l'aspirateur de site camouflé ! Puisque qu'il "recherche le web", enfin le site qu'on lui a demandé de chercher !

Franchement Renard Rouge, ton script est vraiment très puissant, j'ai déjà arrêté 4 IP qui ne m'ont pas demandé d'être réautorisé sur mon site. Je les ai supprimé de la blacklist, et elles ne sont toujours pas repassées. Parfait !

A plus,

Yvan.
 
WRInaute discret
ca m'interesse ton script
c'est plus pour l'apprentissage que pour bloquer d'eventuel aspi
mais c'est toujour bon d'avoir sous la main

merci
 
WRInaute passionné
Bonsoir, une autre solution pour réduire au maximum le nombre de hits des aspirateurs, moins efficace que le script de renardrouge mais quand même valable : proposer le téléchargement de son site dans un fichier compressé ( 1 seul hit 8) )
 
WRInaute discret
Le script de RenardRouge est idéal je pense d'autant plus on peut trés facilement le coupler avec celui de googlestats pour eviter qu'il bloque les "bons" robots en utilisant la table gs_robots par exemple.
 
WRInaute passionné
BDgest, si tu as fait l'integration de GS et du SAA (Script Anti Aspi), je suis preneur.
Peut-être qu'olivier aussi dans une fonctionnalité de GS qui soit de tracer plusieurs robots comme d'en limiter l'acces
(en considérant qu'un aspirateur est une derivée d'un robot, dans son comportement et effet, pas dans sa fonctionnalité d'origine differente).
 
WRInaute discret
Pour l'instant j'ai juste ajouté en dur les IPs des robots que je veux laisser passer (les principaux quoi). C'est pour être sur de ne pas blacklister google par exemple :D
 
Nouveau WRInaute
Bonjour,

Moi je voit ca du coté hebergeur personnellement, et voila le script que j'ai ajouter dans mon httpd.conf

Code:
# Robots known or highly suspected of collecting email addresses for spam
RewriteCond %{HTTP_USER_AGENT} ^(autoemailspider|Bullseye|CherryPicker|Crescent|ecollector|EmailCollector|EmailSiphon|EmailWolf|ExtractorPro|fastlwspider|.*LWP|Digger|Microsoft.URL|Mozilla/3.Mozilla/2.01|Mozilla.*NEWT|NICErsPRO|SurfWalker|Telesoft|WebBandit|WebEMailExtrac|Zeus.*Webster) [NC,OR]

# Robots (sometimes called spiders) which regularly violate robots.txt
RewriteCond %{HTTP_USER_AGENT} ^(ADSARobot|.*almaden\.ibm|ASSORT|big.brother|bumblebee|Digimarc|FavOrg|FAST|.*fluffy|.*Girafabot|HomePageSearch|IncyWincy|NPBot|Openfind|OpenTextSiteCrawler|OrangeBot|Robozilla|ScoutAbout|.*searchhippo|searchterms\.it|sitecheck|UIowaCrawler|.*webcraft@bea\.com|WEBMASTERS|WhosTalking|WISEbot|Yandex) [NC,OR]

# Agents used for both good and bad purposes, such as sucking up bandwidth
# by downloading entire sites, or probing servers for security exploits.
RewriteCond %{HTTP_USER_AGENT} ^(ASPSeek|Deweb|Fetch|FlashGet|Teleport|TeleportPro|Getleft|GetURL|GetWebPage|.*HTTrack|KWebGet|libwww-perl|Mirror|NetAnts|NetCarta|netprospector|Net.Vampire|pavuk|PSurf|PushSite|reget|Rsync|Shai|SpiderBot|SuperBot|tarspider|Templeton|w3mir|web.by.mail|WebCopier|WebCopy|WebMiner|WebReaper|WebSnake|WebStripper|webvac|webwalk|WebZIP|Wget|XGET) [NC,OR]

# Miscellaneous (suspicious -- more information would be appreciated)
RewriteCond %{HTTP_USER_AGENT} ^(ah-ha|aktuelles|ATHENS|attache|bew|disco|.*DTS.Agent|Favorites.Sweeper|FEZhead|GetRight|go-ahead-got-it|.*Harvest|IBM_Planetwide|leech|MCspider|NetResearchServer|nost\.info|OpaL|PackRat|RepoMonkey|.*Rover|Spegla|SqWorm|.*TrueRobot|UtilMind|vspider|.*WUMPUS) [NC,OR]


# A host which tries to hide itself in reverse DNS lookup
RewriteCond %{REMOTE_HOST} ^private$                               [NC,OR]

# Web surveying sites (may require using ipchains)
RewriteCond %{HTTP_REFERER} (traffixer|netfactual|netcraft)\.com   [NC,OR]
RewriteCond %{REMOTE_HOST} \.netcraft\.com$                        [NC,OR]

# A fake referrer that's often used -- use this unless your pages are related
# in some way to atomic energy and could really be linked to from www.iaea.org
RewriteCond %{HTTP_REFERER} ^[^?]*iaea\.org                        [NC,OR]

# A fake referrer that's used in conjuncting with formmail exploits
RewriteCond %{HTTP_REFERER} ^[^?]*\.ideography\.co\.uk             [NC]

# The rule which blocks out further access from the host
RewriteRule .* - [F,L]

C'est sur ca n'arrete QUE les aspirateurs de sites qui ne triche pas sur leur USERS AGENTS. Mais pour l'instant ca marche plutot pas mal.
Normalement on doit pouvoir incorporé cela dans le .htaccess
A vérifié.
Autre chose, il y a aussi le module apache mod_throttle pour limiter la bande passante consommé par IP.

Car à vrai dire les seuls qui consomme de la bande passante anormalement ce sont les aspirateur de site.

Mais j'ai peur de bloquer google et les autres moteurs de recherche avec ca...... genre limité 15 Mb par IP par jour....


Bruno
Administrateur systeme de
http://www.hebergementx-gratuit.com
 
WRInaute passionné
Il y a arreter et arreter

Au debut j'essayer d'arreter les aspis avec mon .htaccess
Celà n'empeche pas un aspis de faire 1.500 hits sur le serveur et c'est là ma problèmatique au delà de la BP
Le script de renad rouge est radical, je laisse rentre au niveau du .htaccess et si il y a exces de vitesse, dehors.
Et j'ai droit à un IP bannie par jour :cry:
 
Nouveau WRInaute
Salut à tous,

J'ai moi aussi depuis peu qqs aspirateurs pas trés sympa qui parcourent les pages de mon site en y aspirant tout ce qui s'y trouve... Ca me bouffe pas mal de bande passante. C'est pourquoi je suis interessé par tes scripts pour bloquer ces aspirateurs de malheur...
 
Nouveau WRInaute
Je suis interessé par ce script car les .htacess avec rewritecond soit bloquent des visiteurs qu'ils ne devraient pas soit laissent passer des aspi camouflés
 
Nouveau WRInaute
peux tu me l'envoyer, je suis interréssé pour ejecter les aspirateurs et les piqueurs d'adresses.

Merci
Andy
PS Au fait je sais pas comment tu récupére mon adresse ? :roll:
thk
 
WRInaute passionné
Bonjour,
Comme le suggère WRI, accède au profil de RenardRouge à partir d'un de ces messages et envoie-lui un mail
 
Nouveau WRInaute
On me rapporte que Kapere serait passé au travers.

Quelqu'un aurait-il Kapere pour un test ? (sur l'url de mon site quand vous le souhaitez)
 
Nouveau WRInaute
J'ai pas vu de blocage encore, bizarre...

Cela dit l'alerte de loupé avec Kapere était une fausse alerte a cause du MP3 de 70 Mo en page principale. N'aspirez pas les .MP3 si vous testez svp.
 
Nouveau WRInaute
Au passage apres plusieurs mois d'utilisation je n'ai toujours pas bloqué google ou autre grand moteur de recherche.

Deepindex s'est fait avoir il y a plusieurs mois mais pas récemment.

NPBot qui est une vraie brute est maintenant en permance bloqué chez moi, de même que
"Art-Online.com 0.9(Beta)" sur 3 IP
"Exalead NG/MimeLive Client (convert/http/0.147)" celui est aussi très agressif
"IDA" (je ne sais pas ce que c'est).

plus des sites de proxy permettant l'aspiration à distance et le rapatriement via ftp (qu'est ce qu'on invente pas de nos jours) comme:
"Webgate/1.0 libwww-perl/0.40"

et pour BDgest ADBD.com est régulièrement bloqué chez moi, j'ai mailé Thomas pour qu'il réduise "l'agressivité" du deep.
:)
 
WRInaute accro
je suis pas doué en php (en train apprendre) mais pour la version fichier, on ne pourrait pas utiliser un fichier en lecture écriture qui aurait pour nom l'ip du visiteur ? et le fichier des ip bloquées serait en lecture seulement.
Il y a quand même le pb des visiteurs utilisant AOL car il leur arrive de changer d'ip a chaque page.
 
Nouveau WRInaute
Ca me semble moins simple ton histoire.
Tu vas faire tourner à fond le système de fichier du serveur.

Pourquoi tu veux te compliquer la vie comme ca ?
:mrgreen:
 
WRInaute accro
Renardrouge a dit:
Ca me semble moins simple ton histoire.
Tu vas faire tourner à fond le système de fichier du serveur.

Pourquoi tu veux te compliquer la vie comme ca ?
:mrgreen:
ben j'ai lu plus haut qu'avec les fichiers il y avait le probleme des acces concurrents.... mais j'y connais rien en php.... c'était juste une idée comme ça... :oops:

Et après avoir regardé la version utilisant les fichiers et non les tables, c'est pourtant ce qu'elle fait en créant des fichiers qui ont pour nom l'ip.

J'ai essayé de l'installer mais ça voulait pas marcher et le script n'est pas du tout documenté. En bidouillant j'ai finalement réussi à le faire fonctionner mais c'est vrai qu'avec un serveur lent comme free on risque de passer au travers.

Concernant les utilisateurs AOL, ça donne quoi le script anti-aspi ? J'ai bien peur qu'on ne puisse pas les arrêter ceux là......

Et pour des sites avec des pages en html, il n'y a pas de solution ?
 
Nouveau WRInaute
Avec des pages en html quelqu'un avait tenté des solutions passant par apache qui faisait 'une pause' quand 50 ou 60 hits etaient trop rapprochés (évidement les sites a grosse interface graphique se font avoir à tous les coups).

Pour le script passant pas les fichiers tu peux demander à son auteur des explications (ce n'est pas moi mais Janfy pour cette version).

Pour AOL j'y réfléchi. Ca consiterait à repérer tous les proxy d'AOL et en cas de pompage massif d'aol en général (qui aurait une limite plus haute qu'un seul utilisateur faire des mini interdictions de quelques secondes a 1 ou 2 minutes...)

Pour l'instant j'en suis là avec aol.
(quelqu'un a les IP des proxy d'aol ?)
 
WRInaute accro
Renardrouge a dit:
Pour AOL j'y réfléchi. Ca consiterait à repérer tous les proxy d'AOL et en cas de pompage massif d'aol en général (qui aurait une limite plus haute qu'un seul utilisateur faire des mini interdictions de quelques secondes a 1 ou 2 minutes...)

Pour l'instant j'en suis là avec aol.
(quelqu'un a les IP des proxy d'aol ?)

En voila quelques unes


Code:
195.93.72.9     cache-frr-aa04.proxy.aol.com
195.93.65.14     cache-frr-ae11.proxy.aol.com
172.181.249.166     ACB5F9A6.ipt.aol.com
195.93.34.12     cache-loh-ac06.proxy.aol.com
195.93.72.8     cache-frr-aa03.proxy.aol.com
195.93.72.11     cache-frr-aa06.proxy.aol.com
195.93.64.6     cache-frr-ad03.proxy.aol.com
195.93.65.12     cache-frr-ae09.proxy.aol.com
195.93.32.8     cache-loh-aa02.proxy.aol.com
195.93.34.13     cache-loh-ac07.proxy.aol.com
195.93.73.11     cache-frr-ab06.proxy.aol.com
195.93.32.11     cache-loh-aa05.proxy.aol.com
195.93.65.11     cache-frr-ae08.proxy.aol.com
172.180.21.188     ACB415BC.ipt.aol.com
195.93.34.7     cache-loh-ac01.proxy.aol.com
172.185.195.217     ACB9C3D9.ipt.aol.com
195.93.66.7     cache-frr-af04.proxy.aol.com
195.93.64.8     cache-frr-ad05.proxy.aol.com
195.93.34.11     cache-loh-ac05.proxy.aol.com
172.188.109.251     ACBC6DFB.ipt.aol.com
172.183.1.152     ACB70198.ipt.aol.com

Le plus simple serait de blacklister tous les serveurs aol. Il y aurait moins de monde qui utiliseraient cette daube si tout le monde faisait cela
 
WRInaute impliqué
Merci pour ton script,

Je viens d'installer le script que tu proposes sur le 1er post!

Je me demande si l'on pourrait pas mettre un lien dans le message vers un site de lutte contre les aspirations , scan de site?? si ca existe, comme ca les aspirateurs irait s'inscrire sur un organisme qui lutte contre ces abus !
 
WRInaute impliqué
Bonjour,


J'ai eu une petite idée que je vous soumets pour renforcer le script;

if
Bloquer une ip qui fait des requetes qui ne viendrait pas du "$HTTP_HOST"
si elle se repete 10 fois en une minute par exemple.
else
25 repetitiion= blocage. commedans le scrip actuel.

L'idée c'est donc de raccourcir le nombre de requetes a la minute si elle ne vient pas du site, ce le ferait?? ca paserait sur pour les Bots des moteurs??
 
WRInaute occasionnel
Je m'apprêtais justement à poser une question sur les aspirateurs et je tombe sur ce fil... je me permets donc de rebondir sur celui-ci...
Hier j'ai eu un gros pic de traffic... environ 350 mo au lieu des 100 habituels..
Après analyse des logs j'ai trouvé ça:
Code:
[16/Jan/2004:09:07:09 +0100] "GET / HTTP/1.1" 200 233572972 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr-FR; rv:1.4) Gecko/20030624"
Si je comprends bien, cette requête a généré 233mo de traffic non? Comment cela est-il possible sur un site qui n'a que 15mo de fichier au grand maximum? Je propose bien des gros fichiers en téléchargment mais ils ne sont pas sur cet hébergeur...
Bref ça m'intrigue beaucoup.
Conséquence d'un aspirateur?

@+

Glouf
 
WRInaute impliqué
petites idées pour ce script!

1: déclarer une liste d'ip qui ne sont pas filtré

2: sur la page qui affiche le message en cas de blocage faire un ramdom sur des question simple genre quel est le nom du moteur(le top ce serait un code qui s'affiche comme sur certains sites) le plus utilisé sur internet avec un form tu mets la réponse "google" et tu valides cela permettrait à un surfeur humain de se reconnecter sur le site.


3: voir le referrer si les pages sont appelé depuis le site ou si elles sont appelle d'un autres serveurs, je suppose que les requetes sont produites depuis ou la page a été aspiré? ca pourrait etre couplé au ip "voir 1" on pourrait rduire un max le nombre de requete avant blocage


Florent , des idées mais je suis pas codeur hélas!
 
WRInaute discret
Renardrouge a dit:
Au passage apres plusieurs mois d'utilisation je n'ai toujours pas bloqué google ou autre grand moteur de recherche.

Deepindex s'est fait avoir il y a plusieurs mois mais pas récemment.

NPBot qui est une vraie brute est maintenant en permance bloqué chez moi, de même que
"Art-Online.com 0.9(Beta)" sur 3 IP
"Exalead NG/MimeLive Client (convert/http/0.147)" celui est aussi très agressif
"IDA" (je ne sais pas ce que c'est).

plus des sites de proxy permettant l'aspiration à distance et le rapatriement via ftp (qu'est ce qu'on invente pas de nos jours) comme:
"Webgate/1.0 libwww-perl/0.40"

et pour BDgest ADBD.com est régulièrement bloqué chez moi, j'ai mailé Thomas pour qu'il réduise "l'agressivité" du deep.
:)

Ayant quelques soucis avec des aspirateurs, je viens d'installer le script trouvé sur http://www.1001bd.com/stop_aspirateurs
Après avoir lancé moi-même HTTrack pour voir si celà fonctionnait, mon aspirateur ne s'est pas arrêté après 25 pages et a continué comme si de rien était
Pas de mail non plus bien que j'ai renseigné le script à ce sujet
Est-ce normal ou ai-je oublié qqchose
merci pour ceux qui pourront me renseigner
 
WRInaute passionné
Bien installé, le script marche bien, le mail aussi
la table sql est bien vide
Elle devrait contenir les IP des visiteurs du moment
 
Nouveau WRInaute
Renardrouge : Même problème que Nitou

Bonjour à tous

J'ai le même problème que Nitou concernant une interférence entre trace_ip.php et mes requettes d'accès MySql sur certain éléments de mes membres.

Ce qu'il y a de bizarre, c'est que par exemple la récuperation du username et du pws fonctionne très bien, mais l'exécution de la commande :
list ($crtyp)=@mysql_fetch_row(
@mysql_query("select kop from " . $mysql_prefix . "kopting where username='$HTTP_SESSION_VARS[username]' and type='crtyp' and description='#SELF-CRTYP#' limit 1"));
ne fonctionne pas du tout !!!

J'ai créer une bd spéciale pour trace_ip, mais rien y fait... Et là je suis perdu car je ne vois pas ce qui déconne :(

Pouvez-vous m'aider :?:

Merci d'avance
 
WRInaute impliqué
bonjour

j'ai installé le script de Renardrouge voici 48 heues

- un ip blacklisté correspondant à un serveur de chez ovh . Cet ip ressemble à un chiffre pret à l'ip de mon site. J'ai bien reçu le mail d'avertissement et il n'y a que cet ip dans la base

alors comment expliquer qu'une personne vient de m'ecrire en me disant qu'il y avait ceci dans le coin de son écran " ip interdite pour abus " alors que son ip ne correspond pas du tout et que apparemment le systeme ne l'a pas mis en quarantaine ?
 
WRInaute impliqué
pour completer ce que je disais, le probleme n'a rien a voir avec l'ip de la personne qui m'a prévenu
le message " banni pour abus" apparaissait pour tout le monde ( y compris pour google qui a indexé les pages avec ce messaage en haut de page) dès lors que l'ip en question etait blacklisté
en fait cet ip correspond au serveur qui héberge le site
en regardant les logs , je me suis aperçu que cet ip apparaissait devant tous les fichiers que j'appelais avec un include ou un require
pour l'instant , j'ai "résolu" le problème en supprimant le message, en attendant mieux
 
Nouveau WRInaute
ok, j'ai compris (enfin je pense),

Il ne faut mettre le fichier de l'anti aspirateur qu'une fois pour une page globale à afficher. Si dans chaque include tu as le code de l'anti aspi, le compteur va monter tres vite...

Une fois dans la page principale, une fois dans le 1er include, 1 fois dans le 2nd... suivant l'architecture de tes pages ca va monter tres tres vite.
(se méfier des frames aussi).

Si tu ne peux pas faire autrement, tu peux augmenter la valeur du compteur.
 
WRInaute impliqué
voici ce que j'ai fait pour mettre le fichier trace.php dans un maximum de page sans les reprendre une par une

par construction, j'ai mis une partie de mon head dans un fichier shtml pour me permettre de pouvoir faire des modifications sans tout reprendre
le head de chaque page contient donc un contenudehead.shtml que j'appelle avec un require
ensuite, j'appelle le fichier trace_ip.php par un include contenu dans contenudehead.shtml

normalement çà ne devrait pas faire ce que çà fait
il n'y aurait pas un autre moyen ?
par exemple, d'exclure la possiblite de bannir une adresse ip precise
 
WRInaute discret
Juste une petite remarque...

J'ai installé ce script sur mon site, ça semble bien fonctionner d'après mes tests.
Je voulais juste dire qu'après l'installation j'avais des soucis pour les pages du type :

h**p://www.monsite.com/page.php?id=123456

En fait, cela est du à cette ligne qui fait partie du code anti-aspi et que j'ai ajouté dans mon header.php :
while(list($id, $ip, $date, $cpt) = @mysql_fetch_row($res)) $Vcpt = $cpt;

Forcément, cela écrase la valeur de $id passé par GET (j'utilise encore le register_global, je sais : c'est mal :oops:).
J'ai donc remplacé par :

while(list($_id, $_ip, $_date, $_cpt) = @mysql_fetch_row($res)) $Vcpt = $_cpt;

et là, plus de souci.

Voilà ma contribution, si quelqu'un d'autre rencontre un souci avec certains de ses scripts après l'install de cet outil, pensez à la collision des noms de variables.


Merci enfin à l'auteur de ce script :)
 
WRInaute discret
Moi mes problèmes sont les suivants :

1) Je liste moi-même blacklisté !
2) Il n'empêche pas l'aspiration des adresses email
3) L'aspiration ne s'arrête pas et ça bouffe quand même la bande passante

J'ai aussi une question :
Faut-il faire quelque chose avec la liste de la blackliste de la base (genre un truc dans le .htaccess) ?
 
WRInaute discret
Je me permet d'essayer de te répondre :) :

1) Je pas comprendre. ;)

2) En fait, j'ai fait le test avec un aspirateur :
le comportement est qu'il "empile" tous les liens qu'il trouve dans les premières pages.
puis il dépile en aspirant chaque page, ce faisant, il réempile les liens vers les pages non encore trouvées qu'il aspirera plus tard.

Ce qui fait que lorsque le script bannit l'IP seul est renvoyé le message :
"IP bannie pour abus"

A partir de ce moment là, plus rien n'est empilé.
Mais l'aspirateur va encore dépiler toutes les urls qu'il a en mémoire.
Mais ca économise tout de meme la bande passante et le nombre de hits, vu qu'à chaque fois il récupère seulement la page "IP bannie..."

Ensuite, je pense que suivant comment ton site est architecturé (plan du site sur la page d'accueil, présence d'un forum...) le nombre d'URLs que le robot aspirateur aura eu le temps de mémoriser avant d'être banni peut être très variable.

3°)
Pour l'aspiration des @ mails, c'est le meme principe... le robot doit être arrêté après avoir déjà fait un peu de dégats :(

Moi, j'ai fais une fonction toute bête en PHP + javascript pour crypter les mailto:

function CryptMail($email,$pseudo){

global $rep;
$clearMail=$email;
if (eregi ('([^?]+)([?].*)', $email,$temp))
$email = $temp [1];

$tout = AddSlashes ($temp[2]);
$email = preg_replace( '|@|',"'+'@'+'" ,$email);
$email = "var e='$email';" ;

if ($tout)
$email .= "var f='$tout';";

$email .= "document.write('<a href=\"mailto:'+e";

if ($tout)
$email .= "+f";

$email .= "+'\" title=\"'+e+'\">";
$email .= $pseudo;
$email .= "</a>')";
$email = chunk_split (bin2hex($email ),2, '%');
$email = '%'. substr($email ,0, strlen($email )-1);
$email = chunk_split ($email, 54,"'+\n'" );
$email = substr($email ,0, strlen($email )-4);
$email = "<script type=\"text/javascript\" language=\"Javascript\">\n<!--\neval(unescape( \n'$email'));\n//-->\n</script>";

return $email;
}


il te suffit de l'appeler comme ceci par exemple :
<?
CryptMail("monmail@monsite.ext","monmail@monsite.ext");
?>
ou
<?
CryptMail("monmail@monsite.ext","cliquez pour m'écrire");
?>

Je ne sais pas si c'est totalement imparable, mais ça arrête une très grande majorité des robots aspirateurs d'adresses mails que j'ai pu tester :)
 
WRInaute discret
tom_pascal a dit:
Oups, j'ai inversé la question 2 et 3. :?
Pas grave, tu auras rectifié toi-même :)

Merci beaucoup... Je vais tester les adresses emails...
Pour ma question 1) mon doigt a fourché... :? En fait je voulais dire que je me retrouve moi-même blacklisté (probablement parce que je connais parfaitement mon site et que je vais trop vite de pages en pages... Que faire dans ces cas-là ? Je ne peux tout de même pas ralentir mon propre rythme de navigation dans mon site ...?!
 
WRInaute discret
Ah ?

Cela semble étonnant que tu arrives à voir 25 pages web de ton site par minute.
Il faut vraiment aller très vite pour cela ?

Si vraiment c'est cela, tu peux jouer sur le paramètre du nombre de pages autorisées par minute par ip avant banissement :

dans le script de RenardRouge :
// si limite atteinte (25 pages php/min) ajouter dans la table des ip interdites.
if ($Vcpt >= 25 )

Tu peux mettre 30 par exemple (sachant qu'un robot aura alors le temps de voir plus de page avant d'être black-listé...)
 
WRInaute discret
C'est bizarre... ça m'étonne aussi que je puisse faire plus de 25 pages / minute...
Je reverrai tout ça très bientôt car tout le site va être prochainement changé...

J'ai refait tout le site pour virer toutes les frames :wink:

Pour les petites annonces, je n'ai rien utilisé, j'ai tout développé en PHP et MySQL...
 
WRInaute discret
Qu'en pensez-vous :

Code:
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^DISCo\Pump.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Drip.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^EirGrabber.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^EyeNetIE.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^FlashGet.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Gets.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Go-Ahead-Got-It.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Grafula.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^IBrowse.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^InterGET.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Internet\Ninja.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^JetCar.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^JustView.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^LeechGet.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^MIDown\tool.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Mister\PiX.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^NearSite.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^NetSpider.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Offline\Explorer.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^PageGrabber.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Papa\Foto.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Pockey.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^ReGet.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Slurp.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^SpaceBison.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Teleport.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebAuto.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebCopier.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebFetch.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebReaper.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebSauger.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebStripper.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebWhacker.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebZIP.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Web\Image\Collector.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Web\Sucker.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Webster.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Wget.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^iwantmy.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^wantmy.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^PlantyNet_WebRo.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^eCatch.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^ia_archiver.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Website\Quester.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^MSProxy.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Offline\Explorer.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^iwantmyxxx.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^MIIxpc.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^InternetLinkAgent.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WFARC.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Internet\Ninja.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^FairAd\Client.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^SilentSurf.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^ia_archiver.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^ia_archiver.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^lftp.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^tAkeOut.*
ReWriteRule .*$ https://www.google.com [R,L]


ca rebalance un gros paquets d'aspirateurs de site connus vers google

Je cherchais un script anti-aspirateur non pas pour protéger le contenu mais pour protéger ma bande passante.

J'ai donc fait des recherche sur google et j'ai trouvé ce script à cette adresse : http://www.bizadulte.com/printthread.php?threadid=954
 
WRInaute discret
ce script est vraiment très efficace mais un question subsiste:

comment pouvons-nous modifier ce script avec seulement des simples quotes ou des doubles quotes?

En fait je voudrais le mettre dans une variable mais ca marche pas :cry:
 
Nouveau WRInaute
ATTENTION : MONSTRE DE NULLITE EN VUE !!!!! :oops: :oops:

Bien le bonjour !
Bon, comme je vous l'ai dit, je suis un monstre de nullité en informatique, je suis meilleur en guitare, voici mon site :

http://teewoof.org

d'abord, mes excuses si des demandes similaires ont été faites, mais c'est tellement abstrait pour moi !

avertissements faits, voici mon problème, sur mon petit site ci-dessus, j'ai régulièrement des dépassements de bande passante, ainsi je voudrais "mettre ce script" (rien que ça déjà, je dis peut-être une sottise !) mais alors, j'ai téléchargé, dézippé, eu deux fichiers, dont un que j'ai commençé à lire.

Puis j'ai pris 4 aspro, 5 dolipranes, et je me suis jeté sur ma gratte, foutu l'ampli à fond et il y a eu trois crises cardiaques dans la montée.

Bien, voilà, je suis NUL !!

si vous pouviez m'aider, cela ferait un tutoriel de l'enfer, parceque plus mauvais vous ne trouverez pas !!!

d'avance merci !!
 
WRInaute occasionnel
SuN a dit:
ce script est vraiment très efficace mais un question subsiste:

comment pouvons-nous modifier ce script avec seulement des simples quotes ou des doubles quotes?

En fait je voudrais le mettre dans une variable mais ca marche pas :cry:

Pourquoi mettre ce script dans une variable ? je ne comprends pas...
Tu peux utiliser les instructions include ou require du langage PHP, ce sera plus pratique. :wink:
 
Nouveau WRInaute
Hello,

de retour sur le net après une bonne hibernation.
Content de voir que mon script a encore ses adeptes.
8)

Heu, je ne comprends pas la question non plus pour "le mettre en variable"
 
WRInaute discret
teewoof a dit:
ATTENTION : MONSTRE DE NULLITE EN VUE !!!!! :oops: :oops:

Bien le bonjour !
Bon, comme je vous l'ai dit, je suis un monstre de nullité en informatique, je suis meilleur en guitare, voici mon site :

http://teewoof.org

Désolé mais je ne trouve pas ton site !

Sinon le code il faut le mettre dans le .htaccess ;-)
 
WRInaute discret
Attention à OmniExplorer_Bot

Je viens de me faire aspirer par OmniExplorer_Bot


Voici les adresses ip correspondantes à ce moteur de recherche ( aspirateur de site )

65.19.150.193 -> 65.19.150.254.

Il vient de me bouffer 8 Go de bande passante en 1 heure, un vrai bourrin !
 
WRInaute discret
gorgu a dit :

et comment gere tu les proxys d'aol (entre autre)

Tiens c'est vrai est ce que le script arrive a bloquer les utilisateurs d'aol ?

papayou a dit :
Il vient de me bouffer 8 Go de bande passante en 1 heure, un vrai bourrin !

8O ca tue :?

Mais papayou je suppose que tu n'as pas le scrit anti-aspirateur sur ton site non ??

Ou le robot est passé a traver ? 8O
 
WRInaute discret
Pourtant oui, j'avais posté ce message --> https://www.webrankinfo.com/forum/viewt ... 370#112370

Mais avec le .htaccess je ne gère pas les IP mais les UA (User Agent)

Je sais qu'il existe aussi des solution qui limite le nombre de page vue par seconde ou par minute, mais c'est une solution à double tranchant

Disons qu'à l'époque, mon hébergeur me proposait 1Go de trafic mensuel, maintenant je suis à 80Go pour 6€ de + par an !
 
Nouveau WRInaute
Bonjour

Je suis nouveau sur ce forum.J'ai pas mal fait le tour du sujet mais j'ai pas tout compris donc j'éspère que vous m'eclaircirez plus pour un débutant.

J'ai pense avoir compris que pour empecher les anti aspirateurs il fallait :

- un .htaccess
- Un script ( robots.txt )


Si c'est cela je continue.

Pour le - un .htaccess il faut mettre :

Code:
# ATTENTION LISTE DES USER_AGENT NON VERIFIEE
# Voir http://www.toulouse-renaissance.net/c_outils.htm
# Version compacte
#
RewriteCond %{HTTP_USER_AGENT} ADSARobot|Anarchie|ASPSeek|Atomz|BackWeb|Bandit|BatchFTP|BlackWidow|Boston\ Project|BravoBrian\ SpiderEngine\ MarcoPolo|capture|ChinaClaw|CICC|Crescent\ Internet\ ToolPak|Custo|cyberalert|Digger|Digimarc|DIIbot|DISCoFinder|Download\ Demon|Download\ Wonder|Downloader|Drip|DSurf15a|EasyDL|efp@gmx\.net|Email\ Extractor|EirGrabber|EmailSiphon|Express\ WebPictures|EyeNetIE|FavOrg|FileHound|FlashGet\ WebWasher|FlickBot|GalaxyBot|GetRight|GetSmart|GetWeb!|gigabaz|GornKer|GrabNet|Grafula|Green\ Research|hloader|HMView|HomePageSearch|httpdown|http\ generic|IBM_Planetwide|Image\ Stripper|Image\ Sucker|imagefetch|InterGET|Internet\ Ninja|InternetLinkAgent|InternetSeer\.com|Iria|Irvine|JBH*Agent|JetCar|JOC|JOC\ Web\ Spider|JustView|Lachesis|LeechFTP|LexiBot|lftp|libwww|Link*Sleuth|LINKS\ ARoMATIZED|LinkWalker|lwp-trivial|Magnet|Mac\ Finder|Mag-Net|Mass\ Downloader|MIDown\ tool|Missigua\ Locator|MMMtoCrawl\/UrlDispatcherLLL|^Mozilla$|MSProxy [OR]
RewriteCond %{HTTP_USER_AGENT} Navroad|NearSite|Net\ Vampire|NetAnts|NetMechanic|NetSpider|NetZIP|NetZip\ Downloader|NetZippy|NPBot|Octopus|Openfind|PageGrabber|Papa\ Foto|PersonaPilot|pcBrowser|PingALink|Pockey|Proxy|psbot|Pump|QRVA|RealDownload|Reaper|Recorder|ReGet|RPT-HTTPClient|SearchExpress|Second\ Street\ Research|Seeker|SiteSnagger|SlySearch|SmartDownload|SpaceBison|SqWorm|Stripper|Sucker|SuperBot|SuperHTTP|Surfbot|Szukacz|tAkeOut|TV33_Mercator|URL_Spider_Pro|Vacuum|VoidEYE|Web\ Downloader|Web\ Image\ Collector|Web\ Sucker|WebAuto|Webclipping|Webdup|WebFetch|WebGo\ IS|WebHook|Webinator|WebLeacher|WebMirror|WebReaper|WebSauger|Website\ eXtractor|Website\ Quester|Webster|WebStripper|WebWhacker|WebZIP|Wget|Widow|Wweb|WWWOFFLE|Xaldon\ WebSpider|x-Tractor|Yandex [OR]
RewriteCond %{HTTP_USER_AGENT} ah-ha|aktuelles|amzn_assoc|ASSORT|ATHENS|attach|attache|autoemailspider|bdfetch|big.brother|bmclient|Bullseye|bumblebee|clipping|Crescent|Deweb|diagem|disco|DTS.Agent|ecollector|fastlwspider|Favorites\ Sweeper|Fetch|FEZhead|fluffy|Generic|Getleft|GetWebPage|Girafabot|go-ahead-got-it|Grabber|Harvest|hhjhj@yahoo|IncyWincy|informant|Ingelin|KWebGet|larbin|likse|LWP|MCspider|Mirror|Mister\ PiX|multithreaddb|nationaldirectory|NetCarta|netprospector|NetResearchServer|NEWT|nicerspro|OpaL|OpenTextSiteCrawler|OrangeBot|PackRat|pavuk|PSurf|puf|PushSite|replacer|RepoMonkey|Robozilla|Rover|Rsync|searchhippo|searchterms\.it|Shai|sitecheck|snagger|Spegla|SpiderBot|SurfWalker|tarspider|Templeton|TrueRobot|UIowaCrawler|UtilMind|vagabondo|vayala|visibilitygap|vspider [NC,OR]
RewriteCond %{HTTP_USER_AGENT} w3mir|web\.by\.mail|Web\ Data\ Extractor|webcollector|webcraft@bea|webdevil|webdownloader|WEBMASTERS|WebMiner|webmole|WebSnake|websucker|webvac|webwalk|webweasel|whizbang|WhosTalking|WISEbot|WUMPUS|XGET [NC,OR]
#
# FIN DE LA LISTE COMPACTE DES USER_AGENT NON VERIFIEE


Ensuite pour le script / robots j'ai pas tout compris. Qu'est ce qui faut mettre. Moi je voudrais un script qui bloque au mieux les aspirateurs de site car je suis une " victime " de ces attaques...

J'aurais donc besoin de votre aide svp ( Merci de ne pas oublier que je suis débutant et que les réponses ne seront peut être pas aussi compréhensibles que vous donc soyez indulgent )

Je vous remercie par avance des réponses :D
 
Discussions similaires
Haut