|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
SCRIPT ANTI ASPIRATEUR SANS BDD
Information sur la source
Description
salut tout le monde mon premier script php poster sur phpsc.com je me suis inspirer de plusieur script. Voici un script anti aspirateur en php ce script empeche les aspirateur de site indesirable en cree un fichier .htaccess a la racine de votre site qui bannira les ip indesirable avec la commande deny from $REMOTE_ADDR //$REMOTE_ADDR = adresse ip se script vous avertie par mail d'une attaque avec plus de precision heure, adresse ip, nom du dns, methode utiliser, navigateur utiliser ce script cree aussi un journal devenement apeller ip.txt
Source
- /*code html liens invisible a METRE TOUT EN HAUT DE LA PAGE (ses le premier lien que vera l'aspirateur)*/
-
- <a href="nolink.php"></a>
- <a href="nolink.php"></a>
- <a href="nolink.php"></a>
- <a href="nolink.php"></a>
- <a href="nolink.php"></a>
- <a href="nolink.php"></a>
-
- //nolink.php
-
- <?php
-
-
-
- //Definie les variables dans une array
- //TODO mettre dans un fichier..
-
-
-
- $bots = array("Googlebot/2.1 (+http://www.google.com/bot.html)","msnbot-media/1.0 (+http://search.msn.com/msnbot.htm)",
-
- "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)",
-
- "Googlebot/2.1","msnbot/1.0","msnbot/0.3",
-
- "Yahoo! Slurp",
-
- "VoilaBot BETA 1.2",
-
- "ZyBorg/1.0","Mozilla/4.0 compatible ZyBorg/1.0 (wn.zyborg@looksmart.net; http://www.WISEnutbot.com)",
-
- "Mozilla/4.0 compatible ZyBorg/1.0 (wn.zyborg@looksmart.net http://www.WISEnutbot.com)",
-
- "FAST-WebCrawler/3.6 ","FAST-WebCrawler/3.7/FirstPage",
-
- " FAST-WebCrawler/3.8",
-
- "DeepIndex"," Mozilla/2.0 (compatible; Ask Jeeves/Teoma)
-
- ","Ask Jeeves/Teoma",
-
- "appie 1.1 ","Gigabot/1.0","HenriLeRobotMirago
-
- ","psbot","Szukacz/1.5 ",
-
- "Openbot/3.0","Openfind data gatherer","dloader(NaverRobot)/1.0","
-
- Googlebot/2.1","msnbot/1.0 (+http://search.msn.com/msnbot.htm)",
-
- "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)",
-
- "Mozilla/5.0 (compatible; Yahoo! DE Slurp; http://help.yahoo.com/help/us/ysearch/slurp)","
-
- Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)",
-
- "Octora Beta - www.octora.com","Mozilla/5.0 (compatible; Yahoo! Slurp China; http://misc.yahoo.com.cn/help.html)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Google Wireless Transcoder;)","Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4","Nokia6820/2.0 (4.83) Profile/MIDP-1.0 Configuration/CLDC-1.0 (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Crazy Browser 1.0.5)","Googlebot-Image/1.0","Evaal/0.7.1 (Evaal; http://search.evaal.com/bot.html; bot@evaal.com)");
-
-
- $user = $_SERVER['HTTP_USER_AGENT'];
-
- if (in_array($user, $bots) ) //Si le user agent n'est pas definit dans l'array
-
- {
-
- exit; //Si il et dans la liste un quit le script
-
- }
-
- else
- {
-
- //Si le user agent n'est pas dans la liste on le bannie
-
- $adresseip= $_SERVER['REMOTE_ADDR'];
-
- $fichier = fopen(".htaccess", "a");
-
- fputs($fichier,"deny from ");
-
- fputs($fichier, $_SERVER[REMOTE_ADDR]."\n");
-
- fclose($fichier);
-
- $host = gethostbyaddr($REMOTE_ADDR);
-
- $ladate = date (" d M Y, G:i:s ");
-
- $fichier = fopen("ip.txt", "a");
-
- fputs($fichier,"$ladate. ");
-
- fputs($fichier,$adresseip. " ");
-
- fputs($fichier, "dns $host \n ");
-
- fclose($fichier);
-
- include ("mail.php");
-
- }
-
- ?>
-
- //mail.php
-
- <?php
-
- $ladate = date (" d M Y, G:i:s ");
-
- $to = "e-mail..";
-
- $remaddr = $_SERVER['REMOTE_ADDR'];
-
- $remreq = $_SERVER['REQUEST_URI'];
-
- $remmeth = $_SERVER['REQUEST_METHOD'];
-
- $usragnt = $_SERVER['HTTP_USER_AGENT'];
-
- $host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
-
- $provenance = $_SERVER['HTTP_REFERER'];
-
- $lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
-
- $from = "email...";
-
- $msg .= "L'URL demandé : $remreq \n";
-
- $msg = "Subject: Un aspirateur a detecter\n";
-
- $msg .= "L'adresse IP : $remaddr a été bloquée le $ladate \n";
-
- $msg .= "L'URL demandé : $remreq \n";
-
- $msg .= "Navigateur utilisé : $usragnt \n";
-
- $msg .= "Méthode utilisée : $remmeth \n";
-
- $msg .= "Nom de domaine : $host \n";
-
- $msg .= "Provenance : $provenance \n";
-
- $msg .= "Langue : $lang \n";
-
- mail($to, "Aspirateur", $msg);
-
- ?>
/*code html liens invisible a METRE TOUT EN HAUT DE LA PAGE (ses le premier lien que vera l'aspirateur)*/
<a href="nolink.php"></a>
<a href="nolink.php"></a>
<a href="nolink.php"></a>
<a href="nolink.php"></a>
<a href="nolink.php"></a>
<a href="nolink.php"></a>
//nolink.php
<?php
//Definie les variables dans une array
//TODO mettre dans un fichier..
$bots = array("Googlebot/2.1 (+http://www.google.com/bot.html)","msnbot-media/1.0 (+http://search.msn.com/msnbot.htm)",
"Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)",
"Googlebot/2.1","msnbot/1.0","msnbot/0.3",
"Yahoo! Slurp",
"VoilaBot BETA 1.2",
"ZyBorg/1.0","Mozilla/4.0 compatible ZyBorg/1.0 (wn.zyborg@looksmart.net; http://www.WISEnutbot.com)",
"Mozilla/4.0 compatible ZyBorg/1.0 (wn.zyborg@looksmart.net http://www.WISEnutbot.com)",
"FAST-WebCrawler/3.6 ","FAST-WebCrawler/3.7/FirstPage",
" FAST-WebCrawler/3.8",
"DeepIndex"," Mozilla/2.0 (compatible; Ask Jeeves/Teoma)
","Ask Jeeves/Teoma",
"appie 1.1 ","Gigabot/1.0","HenriLeRobotMirago
","psbot","Szukacz/1.5 ",
"Openbot/3.0","Openfind data gatherer","dloader(NaverRobot)/1.0","
Googlebot/2.1","msnbot/1.0 (+http://search.msn.com/msnbot.htm)",
"Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)",
"Mozilla/5.0 (compatible; Yahoo! DE Slurp; http://help.yahoo.com/help/us/ysearch/slurp)","
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)",
"Octora Beta - www.octora.com","Mozilla/5.0 (compatible; Yahoo! Slurp China; http://misc.yahoo.com.cn/help.html)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Google Wireless Transcoder;)","Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4","Nokia6820/2.0 (4.83) Profile/MIDP-1.0 Configuration/CLDC-1.0 (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Crazy Browser 1.0.5)","Googlebot-Image/1.0","Evaal/0.7.1 (Evaal; http://search.evaal.com/bot.html; bot@evaal.com)");
$user = $_SERVER['HTTP_USER_AGENT'];
if (in_array($user, $bots) ) //Si le user agent n'est pas definit dans l'array
{
exit; //Si il et dans la liste un quit le script
}
else
{
//Si le user agent n'est pas dans la liste on le bannie
$adresseip= $_SERVER['REMOTE_ADDR'];
$fichier = fopen(".htaccess", "a");
fputs($fichier,"deny from ");
fputs($fichier, $_SERVER[REMOTE_ADDR]."\n");
fclose($fichier);
$host = gethostbyaddr($REMOTE_ADDR);
$ladate = date (" d M Y, G:i:s ");
$fichier = fopen("ip.txt", "a");
fputs($fichier,"$ladate. ");
fputs($fichier,$adresseip. " ");
fputs($fichier, "dns $host \n ");
fclose($fichier);
include ("mail.php");
}
?>
//mail.php
<?php
$ladate = date (" d M Y, G:i:s ");
$to = "e-mail..";
$remaddr = $_SERVER['REMOTE_ADDR'];
$remreq = $_SERVER['REQUEST_URI'];
$remmeth = $_SERVER['REQUEST_METHOD'];
$usragnt = $_SERVER['HTTP_USER_AGENT'];
$host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$provenance = $_SERVER['HTTP_REFERER'];
$lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$from = "email...";
$msg .= "L'URL demandé : $remreq \n";
$msg = "Subject: Un aspirateur a detecter\n";
$msg .= "L'adresse IP : $remaddr a été bloquée le $ladate \n";
$msg .= "L'URL demandé : $remreq \n";
$msg .= "Navigateur utilisé : $usragnt \n";
$msg .= "Méthode utilisée : $remmeth \n";
$msg .= "Nom de domaine : $host \n";
$msg .= "Provenance : $provenance \n";
$msg .= "Langue : $lang \n";
mail($to, "Aspirateur", $msg);
?>
Conclusion
mon script sera mise a jour j'ai eu aucun probleme avec ce script
Historique
- 28 janvier 2007 15:50:18 :
- ajout dun fichier
- 08 février 2007 15:28:50 :
- adresse e-mail personnel
- 27 février 2007 16:57:02 :
- Mise a jour de pratiquement tous le script
script pour detecter les moteur de recherhcer pour quil doi bannie
- 28 février 2007 09:24:20 :
- Enlever balise referencement
- 13 avril 2007 09:44:25 :
- rejoue de plusieur user agent via http://www.robots.darkseoteam.com/
- 13 avril 2007 09:48:44 :
- mise a jour du zip
- 13 avril 2007 09:51:28 :
- modife du code
- 07 mai 2007 10:01:33 :
- Rajout code pour avoir adresse ip meme derrirère proxy
- 29 avril 2009 17:53:43 :
- J'avais oublier d'enlever mon e-mail dans un fichier..
Sources du même auteur
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|