Nginx: Referrer-Spam blockieren

Nginx: Block Referrer Spam

In diesem Artikel zeigen wir Ihnen, wie Sie Referrer-Spam auf einem unserer Nginx-Webserver blockieren können.

1. Finde die Muster

Überprüfen Sie die Datei von Nginxaccess.logund identifizieren Sie die "Referrer-Spam" -Muster.

$ sudo tail -f /var/log/nginx/access.log

Einige Muster:

200 http://???.ru/engine/redirect.php?url=http://mywebsite.com/site/blogspot.com.au
200 http://???.com/tp/out.php?link=alternatevideo&url=http%3A//mywebsite.com/site/readyliftproshop.com
200 http://???.edu/online/redirect.asp?url=http://mywebsite/site/wheretoshophongkong.com

Wir werden folgende Muster blockieren:

  1. redirect.php

  2. out.php

  3. redirect.asp

2. Block & Return 405

Bearbeiten Siesites-enabled/default. Wenn eines der oben genannten Muster übereinstimmt, geben Sie 405 direkt zurück.

if ($http_referer ~* (redirect.php|redirect.asp|out.php) ) {
     return 405;
}

Sehen Sie sich das vollständige Beispiel auf unserem Nginx-Webserver an. Tatsächlich blockieren wir viele Spam-Muster.

/etc/nginx/sites-enabled/default

server {
  listen          80;
  server_name     mysite.com;
  root            /etc/tomcat7/webapps/mysite;

  proxy_cache one;

  if ($http_referer ~* (seo|referrer|redirect|link=|url=|url?|path=|dku=|babes|click|girl|jewelry|love|organic|poker|porn|sex|teen|video|webcam) ) {
      return 405;
  }

  location / {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:8080/;
  }
}

Fertig, starten Sie Nginx neu.

Überprüfen Sie die Protokolldatei erneut. Alle zukünftigen Anforderungen, die mit den deklarierten Mustern übereinstimmen (405), werden zurückgegeben.

$ sudo tail -f /var/log/nginx/access.log
405 http://???.ru/engine/redirect.php?url=http://mywebsite.com/site/blogspot.com.au
405 http://???.com/tp/out.php?link=alternatevideo&url=http%3A//mywebsite.com/site/readyliftproshop.com
405 http://???.edu/online/redirect.asp?url=http://mywebsite/site/wheretoshophongkong.com