PcKULT.NET - La référence en informatique

  • Increase font size
  • Default font size
  • Decrease font size
  • default color
  • black color

PcKULT.NET - Recrute

PcKULT.NET est présentement à la recherche de passionnés d'informatique qui veulent se greffer à l'équipe de PcKULT.NET. Si l'aventure vous intéresse, veuillez communiquer avec nous.

webmaster@pckult.net


Créer un système de bannissement d'IP avec PHP

E-mail Imprimer PDF
Aujourd'hui nous allons voir comment créer un système de bannissement d'adresse IP pour votre site Internet. Avec la montée en flèche des attaques sur le web, il devient nécessaire d'instaurer un tel système. La plus part des hébergeurs offre un tel service, mais avec celui-ci vous serez en mesure de contrôler plus facilement cette problématique.

Conf.inc.php

Nous allons tout d'abord débuter par la page de configuration. Vous en avez peut-être déjà une sur votre site alors il suffira d'y inclure le code suivant. Cette page inclut donc la fonction de validation de l'IP ainsi que de la configuration de la base de données.
 
<?php
    $db_user = ""; // Usager
    $db_pass = ""; // Mot de passw
    $db_database = ""; // Nom de la base de donnée
    $db_host = ""; // Serveur
    $db_connect = mysql_connect ($db_host, $db_user, $db_pass); // Connexion à la base de données
    $db_select = mysql_select_db ($db_database); // Sélection de la base de données
   
    // IP Vérification
    function is_banned($ip) {
        $q = mysql_query("SELECT * FROM 'ban' WHERE 'ip' = '$ip'") or die(mysql_error()); // Recherche  dans la BD si l'adresse IP a été banni.
        $rows = mysql_num_rows($q); //
        if ($rows > 0) { // Si le résultat est plus grand que 0
            $banned = true; // L'usager est banni.
        } else {
            $banned = false; // L'usager n'est pas banni.
        }
        return $banned;
    }
?>

Voyons maintenant comment implanter le code dans vos pages.

Index.php

Nous allons donc comme exemple, implanter le code de vérification dans notre index.php, soit notre page principale.
 
<?php
    include("conf.inc.php"); // Inclusion de la connexion à la base de données
    if (is_banned($_SERVER["REMOTE_ADDR"])) { // Validation de l'adresse ip
        echo "Erreur: Votre adresse IP a été banni de nos serveurs!"; // L'usager est banni
        exit();
    }
?>

Voilà! Ce script est très simple à mettre en place. Vous pourrez par la suite vous créer des pages afin de gérer les IP ; ajout, suppression et modification.


Ajouter cette page à votre Digg-Like préféré
Reddit! Del.icio.us! JoomlaVote! Google! Live! Facebook! Technorati! StumbleUpon! Spurl! Furl! Blogmarks! Yahoo! FeedMeLinks!
Commentaires (2)Add Comment
...
Ecrit par Dave Lizotte, juin 24, 2008
Effectivement, mais cette méthode est en pratique autant efficace.
...
Ecrit par Furious, juin 23, 2008
J'avais déjà fait un système anti-flood grâce à la même méthode, mais je me suis vite aperçu que ça ne fonctionnait qu'à moitié. Maintenant je ne met pas en doute votre système car je ne l'ai pas testé, mais selon moi, la meilleure façon de bannir une IP reste le .htaccess.

Qu'en ditez-vous ?

Ecrivez un commentaire
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
Réduire l'éditeur | Agrandir l'éditeur

busy
 

Sondage

Votre fournisseur Internet
 

Publicités