aussperren ungebetener gäste – ip und länder bereiche sperren – was konkret tun (2)

Aufbauend auf dem ersten Teil des Beitrages wird es jetzt konkret. Was kann man gegen lästige Robots und komische „Besucher“ alles tun …

Werbung

Verlauf, Funktionstest, Lösungen etc.

1.4.: .htaccess mit Ländercodes sperren

Werbung

Bestehende .htaccess lt. Vorlage von stop-spamers-and-hackers.blogspot.de erweitert um

#http://stop-spamers-and-hackers.blogspot.de/
Order deny,allow
Deny from .ua #Ukraine
Deny from .ro #Romänien
Deny from .vn #Vietman
Deny from .cn #China

Deny from .es #Spanien
Deny from .it #Italien
Deny from .fr #Frankreich
Deny from .nl #Niederlande

Deny from .il #Israel
Deny from .in #Indien
Deny from .tr #Türkei
Deny from .ca #Kanada  
Deny from .tr #Türkei

Schon am nächsten Tag ist zu erkennen: Die Lösung via Länderkürzel funktioniert nur bedingt.
=> Mich selbst aussperren mit Deny from .de hat zwar funktioniert (so wird getestet, ob es generell funktioniert) diese Lösung deckt aber nur einen Teilbereich der Problematik ab.

Der Grund, warum Sperrung per Länder-Code nicht gut funktioniert:

deny from .RO
=> alle Besucher, welche über einen Provider mit der Endung .ro kommen, werden ausgesperrt. Betonung liegt auf Provider!
Der schräge Typ aus Romänien z.B.  benutzt für seine Aktivitäten i.d.R. „zufällig“ einen Provider mit der Endung .net oder so. Und damit ist er weiter gut im Rennen. Ausgesperrt werden mit dieser Lösung vermutlich nur die Einsteiger und Stümper der Branche. Das reicht leider nicht aus, meist ist eine wirksamere Lösung gefragt:

2.4.: IP-Bereiche IP Nummern der Länder sperren

Plan B sollte auf jeden Fall funktionieren, mich stört nur, daß diese Lösung nicht so schön übersichtlich ist, wie die obere:

Anstatt ein Land mit dem 2 Buchstaben Ländercode zu sperren, sperren wir alle IPs, welche in dem betreffenden Land verwendet werden. Die IP Sperrliste ist zwar echt lang, funktioniert dafür aber zweifelsfrei. Wo bekommen wir so eine IP-Liste her:

Auf folgender Website kann man den Ländercode eingeben und erhält eine Liste aller IPs und IP-Bereiche zum Länderkürzel: countryipblocks.net

Statt  „Deny from .ro   #Romänien“ fügen wir jetzt den Block mit den IP Bereichen ein und erhalten etwa folgendes. Immer schön übersichtlich halten, damit nachträglich auch Länder wieder freigeschaltet werden können:

#Quelle und eigene Bemerkungen etc.
#Ukraine, Romänien, China, Vietnam
order allow,deny
deny from 1.0.1.0/24
deny from 1.0.8.0/21
deny from 1.1.0.0/24 usw...
allow from all

Die Liste ist evtl. sehr lang. Wenn die Zeile mit <Limit GET POST> gelöscht wird, muß auch am Ende der Liste das </Limit> rausgenommen werden, sonst funktioniert es nicht.

Die Angabe #Land ist wichtig, um später einen bestimmten Bereich wiederzufinden. Wenn man die Auflistung an letzte Stelle der .htaccess setzt, können änderungen überschaubarer vorgenommen werden: dann wird einfach die Auflistung rausgelöscht, unter countryipblocks.net eine neue Liste per Zwischenablage eingefügt.

Mit Indien, Frankreich und Ukraine sollte die Hälfte der Problematik schonmal geklärt sein. Ausgehend von dieser Blacklist-Lösung kann man nach und nach einzelne unliebsame oder auffällige IP-Nummern oder IP-Bereiche in der .htaccess ergänzen.

Die Blacklist-Methode hat zwar den Vorteil, daß die Website weiterhin weltweit erreichbar ist. Das hat einen gewissen Charme, birgt jedoch auch den Nachteil, den Chaoten immer mindestens einen Schritt hinterher zu sein.

Spammer sperren mit GEOIP – einfache, elegante und wirksame Methode…

… sofern es der Provider unterstützt. Meiner unterstützt es nicht, was ich gerade als riesen Nachteil empfinde. Dabei könnte es so einfach sein:

GeoIPEnable On
SetEnvIf GEOIP_COUNTRY_CODE UA BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE RO BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE ...
Deny from env=BlockCountry

Ich kann die Wirksamkeit leider nicht testen, aber diese Methode ist angeblich das Ding, wenn die IP-Sperrliste zu lang wird. Interessanter weise gibt es nicht nur Codes für Länder, sondern auch für Kontinent oder Region. Falls diese Kürzel auch funktionieren, könnte man mit einer einzigen Zeile riesige Bereiche sperren oder zulassen.

Kürzel für die derzeit auffälligsten Länder

  • IN = Indien
  • UA = Ukraine
  • FR = Frankreich
  • RO = Romänien
  • VN = Vietnam
  • CA = Kanada
  • IT = Italien
  • NL = Niederlande

IP Whitelist als alternative Lösung

Das Whitelist-Verfahren geht genau den umgekehrten Weg. Wenn die Problematik mit den Suchmaschinen nur einfacher wäre… Mehr dazu im nächsten Beitrag: IP Whitelist verfahren Test

[übersicht]

Werbung

zuletzt aktualisiert am 10.05.2017

6 Gedanken zu „aussperren ungebetener gäste – ip und länder bereiche sperren – was konkret tun (2)“

  1. Danke für den Beitrag. Mein Provider hat mir auch grad geschrieben, dass er geoip nicht unterstützt. Jetzt fängt das rumprobieren an. Deine drei Teilbeiträge helfen auf jeden Fall! Viele Grüße

    1. Meiner heißt A********** und ist gerade in Sachen GeoIP nicht so die Empfehlung. Klang auf Anfrage auch nicht so, als wären dort Verbesserungen vorgesehen. Kannst gerne hier schreiben, wenn du einen Anbieter gefunden hast, der gut ist und geo-ip unterstützt. Würde mich interessieren 🙂

  2. Hallo, vielen Dank für den Code für die Sperrung mit GeoIP!

    Bringt es irgendwelche Nachteile – aus Eurer persönlichen Einschätzung – wenn wir zu viele Länder sperren?

    Grüße
    Dana

    1. Nö, bringt keinerlei Nachteile. Zumindest wenn die Seite deutschsprachig ist, bringt es nur Vorteile, wenn man von den ganz abwegigen Ländern so viele wie möglich sperrt. Lediglich USA ist zu beachten: der Google bot muss durchkommen, die kann man also nicht so pauschal ausschließen.

  3. Eine Frage hätte ich: Ich versuche folgende Ip Bereiche zu sperren, nur hilft es nichts ,die kommen dauernd wieder!
    order allow,deny
    deny from 54.36.148.0/24
    deny from 54.36.149.0/24
    allow from all

    Es ist der allseits beliebte AhrefsBot,auch habe ich es versucht mit folgendem Eintrag:
    SetEnvIfNoCase ^User-Agent$ .*(AhrefsBot|Uptimebot|Cliqzbot|Wget|CatallSpider|AcoiRobot) HTTP_SAFE_BADBOT
    Deny from env=HTTP_SAFE_BADBOT

    Das Ding kommt immer wieder

    1. Yo, das kommt mir irgendwie bekannt vor 🙂 Da gibt es immer wieder welche, die wollen nicht verstehen, daß sie unerwünscht sind. Dagegen hilft nur, mehrgleisig zu fahren, also möglichst viele Möglichkeiten zum Ausschließen der IPs zu nutzen. In der .htacces gibt es mehrere Möglichkeiten, die man alle erstmal alle abdecken muß. robots.txt sowieso. So kann man Schritt für Schritt die Sache eindämmen. Ich habe dazu noch das Plugin „IP Blacklist Cloud“ installiert. Dort kannst Du alle IPs manuell sperren, die Dir im Plugin „404 to 301“ unter „404 Error logs“ komisch aussehen. Das Plugin „antispam bee“ fängt zusätzlich nochmal vieles weg, damit ist bei mir nach einiger Zeit eigentlich alles im Rinen, zumindest von dem, was man sehen kann. Erschwerend kommt natürlich immernoch hinzu, daß die Software nur die normalen IPv4 adressen anzeigt (z.B. 192.0.2.42), es jedoch auch IPv6 gibt, das sind die mit Doppelpunkt. Ich glaube, hinter einer IPv4 stehen dann zig… IPv6 und die erscheinen nirgends und sind wohl meist das Schlupfloch, auf das alle unerwünschten Teilnehmer setzen. Läßt sich aber scheinbar mit Plugins trotzdem eindämmen. GEO-IP Wär auch noch eine Möglichkeit, wenn es der Provider nur unterstützen würde.
      Theoretisch müßte man als deutschsprachige Anbieter nach den Whitelist-Verfahren in der .htaccess arbeiten, also alles ausschließen, was nicht aus D A CH kommt, das ergibt jedoch eine riesige Datei, die die Website extrem verlangsamt.
      Insgesamt könnte ich bei dem IP-Durcheinender fast zu der Vermutung kommen, daß es gar nicht gewollt ist, gezielt nach Herkunft auszuschließen. Es bleibt also m.E. dabei, möglchst viele Varianten auszuspielen, in der Hoffnung, daß der eine hier, der andere da, abgeblockt wird. Das dauert ein wenig, hilft aber mit der Zeit.
      Für die ganz harten gibts noch Anbieter wie https://ip-bannliste.de/ oder gar das Projekt (ich komme grad echt nicht drauf, wie es heißt, die haben auch ein Forum), was mit Chapcha arbeitet, also nur manuelle Besucher durchläßt.
      Ersteren habe ich mit einer Uralt-Liste mal getestet, hat 2 Monate funktioniert, dann hatten sich die Teilnehmer wie von Geisterhand darauf eingestellt und kamen trotzdem auf anderen Wegen vorbei. Wenn man die aktuelle Liste abboniert, wirds sicherlich wirksamer. Das mit dem Chapcha war zwar kostenlos, aber habe ich nicht getestet.
      Alles in Allem: Auf mehreren Baustellen regelmäßig gegensteuern funktioniert nach einer Weile schon halbwegs gut, doch nichst ist perfekt 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

wp-puzzle.com logo