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-Key: 254299

Url: https://administrator.de/contentid/254299

Printed on: April 24, 2024 at 07:04 o'clock

Member: Codehunter
Codehunter Nov 09, 2014 at 11:57:54 (UTC)
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
Mitglied: 119839
119839 Apr 13, 2016 at 19:26:59 (UTC)
Goto Top
Guten Abend
In Welches Verzeichnis müsste man die Whitelist erstellen ?

Gruß Nightowl
Member: Codehunter
Codehunter Apr 16, 2016 at 07:15:00 (UTC)
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
Mitglied: 119839
119839 Apr 30, 2016 at 14:42:04 (UTC)
Goto Top
Super Vielen Dank hat geklappt