« Webserver/Apache/Modules/GeoIP » : différence entre les versions
Aller à la navigation
Aller à la recherche
(Page créée avec « mod_geoip est un module apache permettant de connaitre le pays en fonction de l'adresse IP. Cela permet en autre de: * Bloquer/Autoriser le traffic depuis une liste de pa... ») |
|||
| (2 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
mod_geoip | {{ApacheModule|name=mod_geoip|desc=permet de connaitre le pays en fonction de l'adresse IP. | ||
Ce module permet en autre de: | |||
* Bloquer/Autoriser le traffic depuis une liste de pays | * Bloquer/Autoriser le traffic depuis une liste de pays | ||
* Ecriture de rôle | * Ecriture de rôle}} | ||
== Installation == | |||
<pre>yum install mod_geoip</pre> | |||
Cela installera le paquet <package>GeoIP</package> qui contient les bases de données de localisation. | |||
Elles sont situées dans le répertoire <path>/usr/share/GeoIP/</path>. Ce chemin sera à renseigner dans le fichier de configuration de [[Webserver/Apache/Modules/Security|mod_security]] <path>/etc/httpd/modsecurity.d/modsecurity_crs_10_config.conf</path> | |||
<pre>SecGeoLookupDb /usr/share/GeoIP/GeoLiteCity.dat</pre> | |||
== Blocage de l'accès au ressource pour certains pays == | == Blocage de l'accès au ressource pour certains pays == | ||
Dernière version du 12 mai 2014 à 12:02
Installation
yum install mod_geoip
Cela installera le paquet <package>GeoIP</package> qui contient les bases de données de localisation.
Elles sont situées dans le répertoire <path>/usr/share/GeoIP/</path>. Ce chemin sera à renseigner dans le fichier de configuration de mod_security <path>/etc/httpd/modsecurity.d/modsecurity_crs_10_config.conf</path>
SecGeoLookupDb /usr/share/GeoIP/GeoLiteCity.dat
Blocage de l'accès au ressource pour certains pays
Exemple de blocage de la russie la chine et l'ukraine
<DirectoryMatch "^/var/www/.*/html">
SetEnvIf GEOIP_COUNTRY_CODE RU BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE UA BlockCountry
Deny from env=BlockCountry
</DirectoryMatch>
Restriction de l'accès au ressource pour certains pays
Exemple de restriction à l'allemagne et la suisse uniquement
<Directory "/var/www/my.site.com/html/login">
SetEnvIf GEOIP_COUNTRY_CODE DE AllowCountry
SetEnvIf GEOIP_COUNTRY_CODE CH AllowCountry
Deny from all
Allow from env=AllowCountry
</Directory>
Ecriture de rôle
Ecriture de rôle de redirection si le pays d'origine est la chine ou taiwan
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(CN|TW)$
RewriteRule ^(.*)$ http://some.example.cn/site.php [L]