Manuel: Länderkennungen / IP-Räume per htaccess aussperren?!

Hier steht ja schön beschrieben wie man IPs per htaccess aussperren kann:
http://de.selfhtml.org/servercgi/server/htaccess.htm

Soweit sogut. Nun habe ich ein „kleines“ Problem, und das wären Spambots. Ich betreibe einen kleinen lokalen Restaurant und Kneipenführer, der nur für Leute aus der Umgebung interessant ist. Trotzdem habe ich dort täglich rund 10-20 Besucher aus Malaysia, Kolumbien, Korea, Mexiko, Argentinien, Japan, etc ... bei denen ich mir nicht nur ziemlich, sondern _absolut_ sicher bin, das dort Spambots hinter unsichere Proxies stecken. Diese müllen nämlich täglich das Weblog mit Viagra, Poker, und co voll.

Nun würde gerne pauschal alle Besucher aus oben genannten Ländern (und evtl auch aus Pakistan, Türkei, Polen, ...) aussperren. Sollte sich da hin und wieder mal doch der ein oder andere „richtige“ Besucher drunter befinden tuts mir herzlich Leid für ihn.

Ist das irgendwie möglich Besucher nach Herkunft auszusperren, oder müsste ich dann für jedes Land jeden IP-Bereich aussperren? Wenn ja, wie genau ist das, und wie komm ich an die IP-Bereiche der ganzen Länder?

  1. hallo,

    Hier steht ja schön beschrieben wie man IPs per htaccess aussperren kann:
    http://de.selfhtml.org/servercgi/server/htaccess.htm

    Achso, du meinst http://de.selfhtml.org/servercgi/server/htaccess.htm

    Ist das irgendwie möglich Besucher nach Herkunft auszusperren

    Ja. Sofern sie entweder bedingungslos ehrlich oder aber ziemliche Dummköpfe sind.

    oder müsste ich dann für jedes Land jeden IP-Bereich aussperren?

    IP-Bereiche und TLDs haben nichts miteinander zu tun. Du kannst an einer IP nicht erkennen, ob deren augenblicklicher Besitzer in Malaysia oder auf Grönland wohnt und sich grade online eingewählt hat.

    Wenn ja, wie genau ist das

    Das steht auf der von dir bereits angegebenen Seite. Dort findest du einen Hinweis, daß du mit
       Deny from .aol.com
    alle Besucher, die eine solche AOL-Kennung mitbringen, ausschließen könntest. Das läßt sich doch weiterdenken, oder? So könntest du mal testen, ob dich nach
       Deny from .pl
    noch irgendjemand mit einer polnischen Kennung erreicht. Ab nächsten Sommer könntest du zum Beispiel die gesamte EU mit
       Deny from .eu
    aussperren, aber Franzosen, Briten und einige andere nationale TLDs hätten nach wie vor Zutritt. Dagegen würdest du mit
       Deny from 216.239.39.104
    alle die Leute aussperren, die deine Seite über Google.de gefunden haben.

    und wie komm ich an die IP-Bereiche der ganzen Länder?

    Gar nicht. Dein Irrtum besteht darin, daß irgendwelchen "Ländern" irgendwelche IP-Bereiche zugeordnet sein müßten. Sind sie nicht. Im Internet geben zudem sehr viele Deutsche als Wohnsitz Tuvalu an, was nahezu immer geschwindelt ist. Es wird überhaupt bei der Übermittlung von Kennungen ziemlich viel geschwindelt. Die Bösewichter, die dich heimsuchen, haben bestimmt nach einer halben Stunde bereits eine andere IP und eine andere Länderkennung und kichern schadenfroh, weil du ihnen einfach nicht hinterherkommst.

    Wenn du tatsächlich nur einem eng begrenzten Besucherkreis dein Angebot zugänglich machen möchtest, geht das eher andersherum. Du verbietest erstmal allen den Zugang und erlaubst ihn dann nur ganz bestimmten Adreßräumen und/oder TLDs. Das sieht schematisch so aus:
       Deny from all
       Allow from 216.239.39.104
       Allow from 84.190.
       Allow from .de
    Jetzt dürfen nur die Leute, die deine Seite entweder über Google.de gefunden haben oder selbst eine deutsche TLD mitbringen oder aber eine bestimmte t-online-IP erhalten haben, zugreifen. Aber auch darunter gibts Schwindler ... seufz. Das Internet ist halt _böse_, es gibt zu wenige Gutmenschen.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    http://www.christoph-schnauss.de
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. Moin!

      Hier steht ja schön beschrieben wie man IPs per htaccess aussperren kann:
      http://de.selfhtml.org/servercgi/server/htaccess.htm

      Achso, du meinst http://de.selfhtml.org/servercgi/server/htaccess.htm

      Dieses ständige "is ja gar kein Link"-Hingeweise nervt auf Dauer.

      Das steht auf der von dir bereits angegebenen Seite. Dort findest du einen Hinweis, daß du mit
         Deny from .aol.com
      alle Besucher, die eine solche AOL-Kennung mitbringen, ausschließen könntest. Das läßt sich doch weiterdenken, oder? So könntest du mal testen, ob dich nach
         Deny from .pl
      noch irgendjemand mit einer polnischen Kennung erreicht. Ab nächsten Sommer könntest du zum Beispiel die gesamte EU mit
         Deny from .eu
      aussperren, aber Franzosen, Briten und einige andere nationale TLDs hätten nach wie vor Zutritt. Dagegen würdest du mit
         Deny from 216.239.39.104
      alle die Leute aussperren, die deine Seite über Google.de gefunden haben.

      So, wie du es formuliert hast, ist deine Aussage falsch.

      Ein "Deny from .aol.com" sperrt alle IP-Adressen aus, deren Rückwärts-Namensauflösungen ein Ergebnis haben, welches auf ".aol.com" endet. In der Tat ist zu vermuten, dass das auf viele IP-Adressen zutrifft, die von AOL verwendet werden, aber die einzige Quelle dafür ist der Inhaber des DNS-Servers, der für diesen IP-Bereich zuständig ist. Das muß nicht zwingend AOL sein.

      Ebenso filtert "Deny from .pl" nur genau die Besucher heraus, deren IP-Adresse auf einen auf ".pl" endenden DNS-Namen aufgelöst werden kann. Das sind aber zwangsläufig nicht sofort alle Teilnehmer aus Polen, da (nicht nur in Polen) die Provider sehr gerne beispielsweise eher ".net"-Domains für ihre Netzwerke benutzen, oder aber die Rückwärts-Namensauflösung ganz weglassen, man also überhaupt keinen Namen erfährt.

      Ganz ähnlich sieht es mit ".eu" aus. Solange diese TLD noch nicht existiert, bringt sie ja sowieso nichts, aber auch danach filtert sie mitnichten "die ganze EU", sondern im Gegenteil nur genau die Netzteilnehmer, deren IP rückwärts aufgelöst auf ".eu" endet - und das dürfte der verschwindend kleinste Teil der EU-Bevölkerung sein. Die Telekom beispielsweise dürfte vermutlich ihre bereits eingerichtete Namensauflösung weiterhin auf ".t-dialin.net" etc. laufen lassen.

      Und auch das "Deny from 216.239.39.104" sperrt eben gerade NICHT Besucher aus, die über Google kommen, weil diese Besucher selbstverständlich nicht die IP von Google für den Zugriff benutzen, sondern die IP, die ihr Provider ihnen gegeben hat. Nur der Google-Webserver würde durch so eine Regel vom Zugriff abgehalten werden - das verhindert dann aber höchstens, dass Google die Seite in den Index aufnehmen könnte - das aber auch nicht wirklich, da Google für seine Spider sicherlich ganz andere IP-Bereiche benutzt, und außerdem mit Sicherheit mehr als eine IP.

      und wie komm ich an die IP-Bereiche der ganzen Länder?

      Gar nicht. Dein Irrtum besteht darin, daß irgendwelchen "Ländern" irgendwelche IP-Bereiche zugeordnet sein müßten. Sind sie nicht. Im Internet geben zudem sehr viele Deutsche als Wohnsitz Tuvalu an, was nahezu immer geschwindelt ist.

      Solltest du auf die Homepage-Adresse der "TLD" .de.vu anspielen: Was zum Teufel hat die Homepageadresse mit dem Zugriff eines Surfers auf eine ganz andere Homepage zu tun?

      Es wird überhaupt bei der Übermittlung von Kennungen ziemlich viel geschwindelt.

      Nein. Der Zugriff auf einen Webserver läßt technisch bedingt nur sehr wenig Schwindelei zu. Zwingend muß die verwendete IP-Adresse korrekt sein. Zu dieser korrekten IP _kann_ es eine Rückwärts-Namensauflösung geben. Lediglich deren Ergebnis ist vom zuständigen Admin beliebig gestaltbar, diese Angabe ist aber in den allerwenigsten Fällen vom Nutzer der IP-Adresse zu beeinflussen. Aufgrund der Optionalheit dieser Angabe ist sie allerdings auch wenig verläßlich, um sie beispielsweise für Filtermaßnahmen wie im vorliegenden Fall einzusetzen.

      Wenn du tatsächlich nur einem eng begrenzten Besucherkreis dein Angebot zugänglich machen möchtest, geht das eher andersherum. Du verbietest erstmal allen den Zugang und erlaubst ihn dann nur ganz bestimmten Adreßräumen und/oder TLDs.

      Das Problem solch eines Ansatzes: Wie kriegt man heraus, welche IPs von deutschen Providern genutzt werden? Also: Welche Netze/IP-Bereiche nutzt die Telekom, Arcor, Netcologne, Hansenet, AOL, alle lokalen Provider (von denen man u.U. noch nie etwas gehört hat, die aber von lokalen Nutzern benutzt werden), Firmennetzwerken, die u.U. im Ausland ins Internet gespeist werden, in denen die im Einzugsbereich der Webseite lebenden Menschen arbeiten...

      Das sieht schematisch so aus:
         Deny from all
         Allow from 216.239.39.104
         Allow from 84.190.
         Allow from .de

      Richtig, schematisch sind das "nur" drei Zeilen. In der Realität sind das eher dreihundert oder dreitausend Zeilen.

      Dein Vorschlag ist erstens unpraktikabel, und zweitens...

      Jetzt dürfen nur die Leute, die deine Seite entweder über Google.de gefunden haben

      ... ist DAS, wie oben erwähnt, totaler Quatsch (was mich echt wundert, du selbst hast doch diesen SELFHTML-Teil verbessert und gibst hier zu Apache-Fragen Auskunft - wieso fehlen dir so eklatante Grundlagen der Konfiguration???)...

      oder selbst eine deutsche TLD mitbringen

      ... was sich absolut nicht an der selbst für Internetseiten genutzten Domain orientiert, sondern ausschließlich an der Namensauflösung der eigenen IP...

      oder aber eine bestimmte t-online-IP erhalten haben, zugreifen.

      ... wo das Problem ist, dass schon allein T-Online riesig groß ist, ganz abgesehen vom Rest der deutschen Provider - ich erwähnte es weiter oben.

      »»Aber auch darunter gibts Schwindler ... seufz. Das Internet ist halt _böse_, es gibt zu wenige Gutmenschen.

      Du weißt, was "Gutmensch" bedeutet?
      Zitat Wikipedia: "Der Begriff Gutmensch wird im deutschen Sprachraum seit etwa den 1980er Jahren als geringschätzige Bezeichnung für bestimmte Personengruppen verwendet, oft mit bewusst zynischer und ironischer Intention."

      - Sven Rautenberg

      --
      My sssignature, my preciousssss!
  2. Salut

    Wenn ich dich richtig verstanden habe, so liegt das Kern-Problem nicht bei den Besuchern aus irgendwelchen Ländern, sondern du möchtest keine unerwünschte Spambots-Messages auf deiner Webseite.

    Insofern stellt sich die Frage, wie man Spambots ausschliesst.

    Kann man da nicht eine Art "Schranke" einbauen, welche ein Spambot nicht überwinden kann, jeder Menschliche User hingegen schon? (Bild erkennen o. ä.)

    Gruss
    Schorsch

  3. Hallo!

    Soweit sogut. Nun habe ich ein „kleines“ Problem, und das wären Spambots. Ich betreibe einen kleinen lokalen Restaurant und Kneipenführer, der nur für Leute aus der Umgebung interessant ist. Trotzdem habe ich dort täglich rund 10-20 Besucher aus Malaysia, Kolumbien, Korea, Mexiko, Argentinien, Japan, etc ... bei denen ich mir nicht nur ziemlich, sondern _absolut_ sicher bin, das dort Spambots hinter unsichere Proxies stecken. Diese müllen nämlich täglich das Weblog mit Viagra, Poker, und co voll.

    Wie Schorsch ja schon geschrieben hat, ist es vielleicht besser, das zuspammen des Gästebuchs zu unterbinden.
    Hier gibts einen Lösungsansatz:
    http://sunflyer.ch/2005/04/30/interessante-spammer.php

    mfg
      frafu