Wie gegen Referer Spam schützen.

Apache, Lighttpd, nginx, Cherokee
richbone
Posts: 4
Joined: 2007-06-26 11:04
Location: Eisenhüttenstadt

Wie gegen Referer Spam schützen.

Post by richbone » 2007-06-26 11:11

Hallo

Folgendes Problem.

Ein Kunde hat eine Toplist betrieben, dort haben sich 3 Bots eingetragen.

Die Toplist arbeitet nach einem View Prinzip.

Nun haben wir die Topliste auf Grund der hohen Belastung deaktiviert.

Nun sind leider noch die Anfragen. Wie kann man die diese Anfragen blockieren um den Server zu entlasten.

Per IP tables haben wir es probiert aber leider zu viele über 10000 IPs.

Wir haben 3 Referer ausfindig machen können.

faytar.com
5sohbet.net
securitysafe.net

Von dort und weiteren Unterseiten komme die Serveranfragen.

OS: Debian 4
Confixx 3.3.1 wird genutzt.

Wie kann ich die Domains aussperren?

Mit freundlichen Grüßen

Martin Krüger

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: Wie gegen Referer Spam schützen.

Post by dtdesign » 2007-06-26 18:22

Die Adressen auflösen und die betreffenden "Unterserver" einfach per Hardware-Firewall aussperren. Soetwas sollte man nicht per iptables machen, sondern direkt eine Hardwarebasierende/dedizierte Firewall nutzen. Dies nimmt dir die Last vom Hauptserver und 10€ mehr im Monat sollten nicht die Welle sein.

Gruß
dtdesign

andy1102
Posts: 37
Joined: 2004-04-03 10:03

Re: Wie gegen Referer Spam schützen.

Post by andy1102 » 2007-06-26 19:59

Na bravo, mich hat es seit 3 Tagen auch erwischt, ebenfalls die Seite

5sohbet.net

Die legt mir das gesamte Apache Nieder, (auf ein root-server)
nun währe ich auch für ein Rat dankar, auch wenn es erst vorübergehend ist als Notlösung....
Den sämtliche Seiten brauchen fast 30 Sekunden oder Öffnem gar nicht mehr .

Gruß
Andy

richbone
Posts: 4
Joined: 2007-06-26 11:04
Location: Eisenhüttenstadt

Re: Wie gegen Referer Spam schützen.

Post by richbone » 2007-06-26 20:00

Hallo

Wir haben die betroffene Domain auf eine nicht bekannte IP gelegt und den Server mit einer neuen Domain und IP versehen nun geht es wieder.

hast du ne Topliste bei dir aufen Server?

MFG

RichBone

User avatar
Joe User
Project Manager
Project Manager
Posts: 11138
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Wie gegen Referer Spam schützen.

Post by Joe User » 2007-06-26 20:13

Bitte selbst anpassen:

Code: Select all

RewriteCond %{HTTP_REFERER} ^http://www.5sohbet.net/.*$
RewriteRule ^/(.*)$         http://256.256.256.256/     [R,L]

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: Wie gegen Referer Spam schützen.

Post by dtdesign » 2007-06-26 20:40

Wäre es nicht möglich, einfach auf 127.0.0.1 umzuleiten, bzw. localhost? Wäre doch auch ganz lustig :)

ghoster1970
Posts: 71
Joined: 2006-06-21 13:31
Location: Potsdam

Re: Wie gegen Referer Spam schützen.

Post by ghoster1970 » 2007-06-26 21:49

... wenn du die richtige IP des Betreibers hast, den ganzen Müll per Redirect zurückschicken? :D

djcrackman
Posts: 207
Joined: 2005-06-02 11:58

Re: Wie gegen Referer Spam schützen.

Post by djcrackman » 2007-06-26 21:58

Code: Select all

RewriteCond %{HTTP_REFERER} ^http://www.5sohbet.net/.*$
RewriteRule ^/(.*)$         http://%{REMOTE_ADDR}/     [R,L] 

andy1102
Posts: 37
Joined: 2004-04-03 10:03

Re: Wie gegen Referer Spam schützen.

Post by andy1102 » 2007-06-26 22:02

Hallo RichBone

JA, ein Kolege hatte in seiner Homepage so ein Blöde Toplist eingebaut, nun habe ich den Salat ............

@ djcrackman und Joe User


Bitte helft mir mal auf die Sprünge was ich mit den Code nun machen soll (wohin) zugegeben bin ich nicht gerade das hellste Köpchen was Linux angeht :-( (Ich schäme mich auch dafür) binn aber bemüht immer dazuzulernen ;-)

Gruß
Andy

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: Wie gegen Referer Spam schützen.

Post by dtdesign » 2007-06-26 22:15

Such mal nach .htaccess und mod_rewrite in der Apache-Dokumentation.

Gruß
dtdesign

andy1102
Posts: 37
Joined: 2004-04-03 10:03

Re: Wie gegen Referer Spam schützen.

Post by andy1102 » 2007-06-26 22:23

Mh, Danke für die Antwort, so nun aber noch zum verständniss, hilft das den bei den Problem ?
Wenn ich das richtig verstehe, ist es ja so, das Apche die URL trosden verarbeitet (halt umleitet)
Dadurch wird der sever (Apache) doch nicht wirklich endlastet von den Zugriffen, oder verstehe ich das falsch)

Ich frage daher weil ich dazu folgendes gefunden habe)
Das Apache-Modul mod_rewrite ermöglicht es, URLs intern "umzuschreiben" (rewrite). Heißt im Klartext: der Surfer greift auf eine (nicht real existierende) URL zu, der Apache verarbeitet diese anhand bestimmter Regeln, greift dann mit Hilfe des modifizierten Pfades auf eine Datei zu und schickt sie an den Browser. Der Client merkt davon nichts, kann davon gar nichts merken.
gruß
Andy

User avatar
Joe User
Project Manager
Project Manager
Posts: 11138
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Wie gegen Referer Spam schützen.

Post by Joe User » 2007-06-26 23:00

Der Apache muss nur noch die Anfrage (Request) verarbeiten und schickt (Response) dann nur 'Hier ist die falsche Baustelle, die richtige Baustelle ist http://256.256.256.256/' zurück. Das funktioniert ressourcenschonender als Iptables oder ähnliche Tools und entlastet somit den Server erheblich. Ob dies für Dein aktuelles Problem bereits ausreichend ist, musst Du allerdings selbst ausprobieren.
BTW: 256.256.256.256 ist absichtlich so gewählt, um keinen Kollateralschaden zu verursachen.

Anonymous

Re: Wie gegen Referer Spam schützen.

Post by Anonymous » 2007-08-12 00:57

djcrackman wrote:

Code: Select all

RewriteCond %{HTTP_REFERER} ^http://www.5sohbet.net/.*$
RewriteRule ^/(.*)$         http://%{REMOTE_ADDR}/     [R,L]


Hallo,
habe seit ein paar Tagen das gleiche Problem nur mit der Seite securitysaf.net!

Nun bin ich durch suchen auf Google auf dieses Forum aufmerksam gewürden.

nun wollte ich fragen auf welcher Datei dieser Eintrag gemacht werden mußst?

In meinen Fall müßstes dann ja so heißen

Code: Select all

RewriteCond %{HTTP_REFERER} ^http://www.securitysaf.net/.*$ 
RewriteRule ^/(.*)$         http://%{REMOTE_ADDR}/     [R,L


Müß ich das in der /etc/hosts.deny schreiben?
Oder welcher?

Gruß Frank

User avatar
Joe User
Project Manager
Project Manager
Posts: 11138
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Wie gegen Referer Spam schützen.

Post by Joe User » 2007-08-12 01:08

In die VHost-Konfiguration (httpd.conf) der betroffenen Domain.

Anonymous

Re: Wie gegen Referer Spam schützen.

Post by Anonymous » 2007-08-12 01:39

Joe User wrote:In die VHost-Konfiguration (httpd.conf) der betroffenen Domain.


Es sind mehrere Domains betroffen.
In welchen Pfad befindet sich die VHost-Konfiguration?
wieso überhapt VHost ? In mein Fall handelt es sich um keinen VServer.

Gruß Frank

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: Wie gegen Referer Spam schützen.

Post by dtdesign » 2007-08-12 11:04

NoneX wrote:Es sind mehrere Domains betroffen.


Dann in jede.

NoneX wrote:In welchen Pfad befindet sich die VHost-Konfiguration?


Puh, wo legt Confixx die ab? Beweist aber einmal wieder, dass Confixx/Plesk/Konsorten von jeder Ahnung vom System entbinden.

NoneX wrote:wieso überhapt VHost ? In mein Fall handelt es sich um keinen VServer.


Wärst du aber besser mit aufgehoben, oder direkt einen Managed-Server. Dir scheinen ein paar wichtige Grundlagen zu fehlen. Zu deiner Frage: Lies mal die Dokumentation des Apaches (die du nie angerüht hast, sonst wüsstest du, weshalb deine Frage leicht suboptimal ist).

Gruß
dtdesign

Anonymous

Re: Wie gegen Referer Spam schützen.

Post by Anonymous » 2007-11-17 17:18

Hallo zusammen,

bin gerade auf der Suche nach diesem 5sohbet.net-Problem gewesen und hab den doch schon ein paar Tage alten Thread gefunden ;-)

Ich halte die Loesung mit mod-rewrite nicht fuer sinnvoll. Bei dieser Loesung wird die Anfrage trotzdem an den Webserver weitergeleitet, was natuerlich nicht Sinn und Zweck ist, da er meist bereits mit Anfragen ueberlastet ist.

Ich habe zwar keine 100%ig saubere Loesung, aber dem einem oder anderen wird dies sicher weiterhelfen:

Ein Block aller Anfrage mit iptables erscheint hier hilfreicher. Ich habe ein kleines Shellscript gefunden, welches IPs aus einer Datei einliest und in Regeln umwandelt

Code: Select all

while read BANNED
do
        iptables -A INPUT -s $BANNED -j DROP
done < BANNED


Dieses Shellscript legt man auf dem Server ab, setzt die Rechte (chmod755) und erstellt die Datei BANNED mit den Ips, welche zu sperren sind. Im konkreten Fall sind dies natuerliche Unmengen, daher habe ich den kompletten IP-Bereich der Tuerkei gesperrt, eine Liste gibt es hier...

Diese Liste ist fuer den Einsatz in der .htaccess vorgesehen, daher muss diese erst noch bearbeitet werden, so dass nur noch die reinen IPs bleiben. Ein Editor sollte entsprechend weiterhelfen (ersetzen)

Die reine IP-Liste in der Form

91.93.0.0/16
91.94.0.0/32
91.198.61.0/24
91.198.62.0/32
91.198.49.0/24

usw. wird auf dem Server im selben Verzeichnis als BANNED abgelegt.

Dann wird das Shellscript aufgerufen. Dieses liest die IP-Liste ein und sperrt so einen Grossteil der Zugriffe. Bei mir waren es deutlich ueber 90%, die Anfragen vor dem Einsatz von iptables lagen bei 58 pro Sekunde, danach bei 15 pro Sekunde.

Anmerkung:

Ich bin mir bewusst, das es sich nicht um eine elegante Loesung handelt, ein komplettes Land auszusperren. Ob jemand dies so einsetzt, sollte jeder selbst wissen. Von meiner Seite aus habe ich im Vorfeld versucht, den Provider zu kontaktieren (mehrfach). Eine Reaktion erfolgte nicht.


Liebe Gruesse
Salena