images.jpeg Le Ban ,

Nous allons voir dans cet article comment bloquer des adresses ip via apache .

Il faut savoir que l'on peu facilement contourner ce genre de blocage , en utilisant un proxy par exemple ou le réseau de ses voisins. Cette méthode n'est donc pas fiable pour les connaisseurs , mais pour le commun des mortel , cette méthode reste efficace .

J'explique donc comment faire , plus pour dire de connaître cette méthode qu'autre chose ! Et oui ça fait longtemps que je n'ai pas édité de billet par manque de temps .. alors .. il faut bien dire quelque chose .. ;-)

Fichier de configuration

L'on commence par créer un fichier de configuration qui sera ensuite lié à la configuration principale d'apache ,

vim httpd-blacklist.conf

Le contenu sera donc celui-ci :

Voici le contenu de ce fichier :

#Blacklistage

RewriteEngine On

RewriteMap hosts-deny txt:/usr/local/conf/extra/hosts.deny
RewriteCond ${hosts-deny:%{REMOTE_HOST}|NOT-FOUND} !=NOT-FOUND [OR]
RewriteCond ${hosts-deny:%{REMOTE_ADDR}|NOT-FOUND} !=NOT-FOUND
RewriteRule ^/.* - [F]

#Page d'erreur

#remplacer la dernière ligne par
#RewriteRule ^/.* /jenetaimepas.html [L]

Pour commencer , nous activons simplement le mod_rewrite , ( ce mode doit donc être activé ) , Ensuite , nous allons lire le fichier qui contiend tout les hotes qui sont black-listés , essayer de trouver une correspondance avec le client courant .

Si aucune correspondance n'est trouvée , alors on redirige vers la page demandée . Sinon , rien , le client aura droit à une belle page blanche .

Vous pouvez "customizer" la page d'avertissement , en remplaçant la dernière ligne

RewriteRule ^/.* - [F]

par :

RewriteRule ^/.* /jenetaimepas.html [L]

L'utilisateur bloqué se retrouvera donc sur la page jenetaimepas.html.

Fichier hosts.deny

Ici il s'agit du fichier contenant toutes les adresses ip ou domaines black-listés , ils sont renseignés sous la forme :

xxx.xxx.xxx.xxx -
domaine.com -
... -
... -

Il est indispensable de mettre un espace puis "quelque chose" ici un tiret , pour que le fichier soit lu correctement via RewriteMap Plus d'infos à cette adresse

Liaison avec apache

Vous pouvez activer cette liste de blackliste de deux façons , soit pour la totalité des sites gérés par votre serveur , soit uniquement par un ou plusieurs vhost .

Selon votre souhait , vous aller placer la ligne suivante , soit dans le fichier de configuration général d'apache , soit dans la configuration du ou des vhosts.

Include <chemin vers votre fichier>/httpd-blacklist.conf

Conclusion

Vous voilà avec une blackliste effective ( utile .. ou pas ) , n'oubliez pas qu'une adresse ip , peut tres bien être l'adresse d'une entreprise , ou un cyber , si vous la bloquez , vous bloquez tous les utilisateurs au sein de cette entreprise ou de ce cyber .

D'où le peut d'intérêt de bloquer une ip .