codehunter
Goto Top

Länder-Whitelist in htaccess per GEOIP führen

Hallo!

Ich habe ein kleines Forum auf der Webseite, welches wirklich nur regional relevant ist. Inzwischen nimmt es jeden Tag mehr Zeit in Anspruch, die ganzen Fake-Anmeldungen wieder zu löschen. Nach Durchsicht der Zugriffslogs kommen die meisten Fakes aus China, Russland und - was mich ein bisschen gewundert hat - USA. Aber ich mach mir nichts vor, die können in Null komma Nix auf andere Länder ausweichen.

Zuerst hatte ich versucht ganze IP-Ranges per htaccess zu blocken. Allerdings wurden die Listen länger und länger, die Pflege ebenso und die Reaktionszeiten vom Webserver auch. Mein Webhoster gab den Hinweis, per Modul GEOIP zu blocken wäre effizienter.

Jetzt bin ich zu der Ansicht gekommen, dass ich eigentlich alles blocken möchte was nicht aus den DACH-Staaten kommt. Ok ich sperre damit auch die SuMas aus aber ist mir in dem Fall egal. Also könnte ich entweder eine sehr lange Liste wie diese einpflegen (Funktioniert, habe ich getestet):
SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE RU BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE US BlockCountry
# ... weitere ...
Deny from env=BlockCountry
Lieber wäre mir aber eine Möglichkeit, eine Whitelist zu pflegen und alles andere zu blocken. Also habe ich es so probiert:
SetEnvIf GEOIP_COUNTRY_CODE US Whitelist
Order deny,allow
Allow from env=Whitelist
Testweise steht da jetzt "US" drin. Der Logik nach müsste mich der Apache ja blocken, da ich aus "DE" komme. Tut er aber nicht. Wo liegt da jetzt der Fehler?

Content-ID: 254299

Url: https://administrator.de/forum/laender-whitelist-in-htaccess-per-geoip-fuehren-254299.html

Ausgedruckt am: 09.04.2025 um 02:04 Uhr

Codehunter
Codehunter 09.11.2014 um 12:57:54 Uhr
Goto Top
Danke hat sich erledigt. Da fehlte noch eine Kleinigkeit:
SetEnvIf GEOIP_COUNTRY_CODE US Whitelist 
Order deny,allow 
Deny from all # <--- DAS HIER
Allow from env=Whitelist
119839
119839 13.04.2016 um 21:26:59 Uhr
Goto Top
Guten Abend
In Welches Verzeichnis müsste man die Whitelist erstellen ?

Gruß Nightowl
Codehunter
Codehunter 16.04.2016 um 09:15:00 Uhr
Goto Top
Hallo!

Das kannst du mit in die .htaccess packen oder per Include von einem beliebigen Ort holen (Sicherheitsaspekte beachten!)

Ein Beispiel um China und Russland zu blocken (waren in meinem Fall die schlimmsten Spammer):

SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE RU BlockCountry
Deny from env=BlockCountry

Grüße
Cody
119839
119839 30.04.2016 um 16:42:04 Uhr
Goto Top
Super Vielen Dank hat geklappt