NGINX – Refuser l’accès à un site web à un pays entier
5 (100%) 1 vote

Mémo pour configurer NGINX et GeoIP pour blacklister un pays et lui refuser l’accès à un site web.

GeoIP de Maxmind permet d’identifier la localisation via l’adresse ip d’un visiteur.
Il suffit alors de configurer NGINX pour refuser ou accepter cette ip.

Vérifiez que NGINX possède le module http_geoip chargé :

Résultat :

Vous devez avoir « –with-http_geoip_module » dans la liste.

Installez geoip (Debian) :

Créez le fichier /etc/nginx/conf.d/geo.conf

Dans l’exemple, la France et la Côte d’Ivoire sont refusées.

Dans le fichier de déclaration du site web :

Testez et relancer NGINX :

Au besoin vous pouvez mettre à jour manuellement la base de données :

Plus d’infos : http://wiki.nginx.org/HttpGeoipModule