Interdisez l’accès à votre serveur web par pays
Source: eric-couchelou.net
En annexe du paramétrage basique de votre serveur web, il se peut que vous soyez confronté à la nécessité ou l’envie de placer une interdiction d’accès Géolocalisée.
Mais avant de procéder à ce type d’installation, gardez à l’esprit plusieurs choses :
- Si vous avez plusieurs sites sur le même serveur, tous seront concernés par vos règles, soyez donc sûr et certain qu’aucun d’entre eux n’ait pour cible l’un des pays que vous aller blacklister,
- La très grande majorité des internautes des pays que vous pouvez considérer comme à risque (Russie, Chine, Taiwan, Roumanie, Brésil…) n’ont pas de mauvaises intentions, vous vous priverez donc volontairement d’une source de trafic potentiel.
- Internet est ainsi fait que cette solution est loin d’être fiable à 100%, et les filtres géolocalisés facilement contournables
Bref, le jeu en vaut-il la chandelle? Si vous êtes convaincu que oui, alors ce petit tutoriel est fait pour vous. Je vous proposer d’installer le module de surveillance GEOIP.
1 – Installation du programme :
apt-get install libapache2-mod-geoip
2- Configuration du programme :
vi etc/apache2/mods-available/geoip.conf
Et Mettre :
GeoIPEnable On GeoIPDBFile /usr/share/GeoIP/GeoIP.dat SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry=1 SetEnvIf GEOIP_COUNTRY_CODE RU BlockCountry=1 SetEnvIf GEOIP_COUNTRY_CODE RO BlockCountry=1 SetEnvIf GEOIP_COUNTRY_CODE TW BlockCountry=1 Deny from env=BlockCountry
Chaque ligne de type SetEnvIf GEOIP_COUNTRY_CODE XX BlockCountry=1 correspond à une restriction d’accès pour un pays où XX définit le code du pays concerné par la règle. Pour info vous trouverez les différents codes pays (FR, DE, etc.) à cette adresse:
http://www.maxmind.com/app/iso3166
Redémarrez Apache :
/etc/init.d/apache2 restart
C’est en place!
Pour la mise à jour, téléchargez les dernières définitions d’IPs (une fois par mois pour la version gratuite) à cette adresse :
http://www.maxmind.com/app/geolitecountry
et remplacer celles existantes dans
/usr/share/GeoIP/GeoIP.dat
J’attire votre attention sur le fait que le blacklistage géolocalisé présenté ci-dessus fonctionne pour Apache, c’est à dire que vous devrez faire des paramétrages supplémentaires si vous voulez interdire les accès aux serveurs email par exemple. Nous verrons cela plus tard…