Länderzugriffe mit mod_geoip einschränken
Mithilfe des Apache-Moduls
mod_geoip lässt sich der Zugriff auf eine Website basierend auf dem geografischen Standort der IP-Adresse steuern.
Hinweis: Entgegengesetzte Anweisungen (z. B. aus einer vom Anbieter gelieferten
.htaccess
) können die hier beschriebenen Regeln außer Kraft setzen.
Länderbasierte Zugriffssteuerung
Blacklist-Beispiel: Zugriff aus China und Japan blockieren
<IfModule mod_geoip.c>
GeoIPEnable On
SetEnvIf GEOIP_COUNTRY_CODE JP BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry
<RequireAll>
Require all granted
Require not env BlockCountry
</RequireAll>
</IfModule>
Whitelist-Beispiel: Nur Zugriff aus Deutschland und den USA erlauben
<IfModule mod_geoip.c>
GeoIPEnable On
SetEnvIf GEOIP_COUNTRY_CODE DE AllowCountry
SetEnvIf GEOIP_COUNTRY_CODE US AllowCountry
Require env AllowCountry
</IfModule>
Diese Regeln lassen sich flexibel erweitern: Füge einfach weitere
SetEnvIf
-Zeilen für zusätzliche Länder hinzu. Verwende dabei stets den
zweistelligen ISO-Ländercode.
Eine vollständige Übersicht der Codes findest du hier:
ISO 3166-1-Ländercodes – Wikipedia
Kontinente als Grundlage der Steuerung
Blacklist-Beispiel: Zugriff aus ganz Asien blockieren
<IfModule mod_geoip.c>
GeoIPEnable On
SetEnvIf GEOIP_CONTINENT_CODE AS BlockContinent
<RequireAll>
Require all granted
Require not env BlockContinent
</RequireAll>
</IfModule>
Whitelist-Beispiel: Nur Zugriff aus Europa und den USA zulassen
<IfModule mod_geoip.c>
GeoIPEnable On
SetEnvIf GEOIP_CONTINENT_CODE EU AllowContinent
SetEnvIf GEOIP_COUNTRY_CODE US AllowCountry
Require env AllowCountry
Require env AllowContinent
</IfModule>
Lesen Sie bitte auch: