
Nginx blockiert Bad Bots, Spam-Referrer-Blocker, Schwachstellen-Scanner, User-Agents, Malware, Adware, Ransomware, bösartige Websites, mit Anti-DDOS, Blockierung von WordPress-Theme-Erkennern und Fail2Ban-Jail für Wiederholungstäter.
| REPO | WERDEN SIE SPONSOR |
|---|---|
| Ihr Logo und Link zu Ihrer Domain erscheinen hier, wenn Sie Sponsor werden. Schreiben Sie mir einfach eine E-Mail an [email protected], wenn Sie dieses Projekt sponsern möchten, da Südafrika im Github-Sponsor-Programm noch nicht unterstützt wird. | |
| Helfen Sie mich unter https://ko-fi.com/mitchellkrog zu unterstützen |
Sie verwenden kein Nginx? Sehen Sie sich den an
Bitte stellen Sie sicher, dass Sie Github-Benachrichtigungen abonniert haben, um benachrichtigt zu werden, wenn der Blocker aktualisiert wird oder wenn wichtige oder missionskritische (möglicherweise brechende) Änderungen stattfinden.
Dies ist unsere neue bevorzugte Installationsmethode, die nun über eine Reihe von Shell-Skripten erfolgt, die zu diesem Repo beigetragen und von Stuart Cardall @itoffshore gepflegt werden, einem der Paketbetreuer von Alpine Linux.
Die folgenden Anweisungen gelten für einen schnellen und schmerzfreien Installationsprozess, der alle erforderlichen Dateien für den Blocker herunterlädt. Die Skripte fügen außerdem die erforderlichen Includes zu Ihrer nginx.conf und Ihren nginx-.vhost-Dateien hinzu. Das Setup-Skript geht davon aus, dass sich Ihre vhost-Konfigurationsdateien in /etc/nginx/sites-available/ befinden und jede vhost-Konfigurationsdatei mit der Dateiendung .vhost endet.
Für manuelle Installationsanweisungen siehe bitte: https://github.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/blob/master/MANUAL-CONFIGURATION.md
setup-ngxblocker, install-ngxblocker und update-ngxblocker können alle über die Befehlszeile mit benutzerdefinierten Installations-/Update-Pfaden konfiguriert werden. (Siehe Schritt 11 der Anweisungen, um zu erfahren, wie Sie diese Skripte und nicht standardmäßige Nginx-Pfade verwenden)
Führen Sie eines der Setup-, Installations- oder Update-Skripte mit --help oder -h aus, um die Optionen anzuzeigen.
BITTE BEACHTEN: Für diejenigen, die Let's-Encrypt-SSL-Zertifikate verwenden, ist die bevorzugte und zu 100 % funktionierende Methode die Webroot-Authenticator-Methode. Es scheint einige Probleme bei Personen zu geben, die die http-Challenge-Methode verwenden, aber ich kann bestätigen, dass Webroot einwandfrei funktioniert. Wir sind uns an diesem Punkt nicht sicher, ob die http-01-Challenge-Methode ein Certbot- oder ein Nginx-Bug ist.
Die doppelten Netzwerkberichte von Nginx sind KEIN Bug und können auch nicht behoben werden. Dies ist das gewünschte Verhalten des Blockers. Tägliche Aktualisierungen der IP-Blacklists führen dazu, dass einige bekannte IPs und Bereiche auf die Blacklist gesetzt werden old value "1". Diese werden dann ganz am Ende der globalblocklist, die die Lade-Reihenfolge bestimmt, wieder auf die Whitelist gesetzt, wodurch IPs, von denen wir wissen, dass sie gut sind, auf ihren neuen value "0" gesetzt und damit whitelisted werden. Dies ist seit Tag 1 des Blockers so und wird auch so bleiben. Dies sind einfache [WARN]-Meldungen, keine [EMERG]-Meldungen, und sie beeinträchtigen den Betrieb von Nginx in keiner Weise.
Laden Sie install-ngxblocker in Ihr Verzeichnis /usr/local/sbin/ herunter und machen Sie das Skript ausführbar.```sh sudo wget https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/install-ngxblocker -O /usr/local/sbin/install-ngxblocker sudo chmod +x /usr/local/sbin/install-ngxblocker
Falls Ihre Linux-Distribution kein wget enthält, können Sie den obigen wget-Befehl wie folgt durch curl ersetzen:```sh
curl -sL https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/install-ngxblocker -o /usr/local/sbin/install-ngxblocker
Installieren Sie das Paket.```sh pkg install www/nginx-ultimate-bad-bot-blocker
Alternativ über portmaster installieren:```sh
portmaster www/nginx-ultimate-bad-bot-blocker
Führen Sie nun das Skript install-ngxblocker im TROCKENLAUF-Modus aus, der Ihnen zeigt, welche Änderungen es vornehmen und welche Dateien es für Sie herunterladen wird. Dies ist nur ein TROCKENLAUF, es werden also noch keine Änderungen vorgenommen.
Das Skript install-ngxblocker lädt alle erforderlichen Dateien herunter, einschließlich der Einrichtungs- und Aktualisierungsskripte.```sh
cd /usr/local/sbin
sudo ./install-ngxblocker
Dies zeigt Ihnen die folgende Ausgabe der Änderungen, die vorgenommen werden
**(HINWEIS: Dies ist nur ein DRY-RUN, es wurden keine Änderungen vorgenommen)**```text
Checking url: https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/include_filelist.txt
** Dry Run ** | not updating files | run as 'install-ngxblocker -x' to install files.
Creating directory: /etc/nginx/bots.d
REPO = https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master
Downloading [FROM]=> [REPO]/conf.d/globalblacklist.conf [TO]=> /etc/nginx/conf.d/globalblacklist.conf
Downloading [FROM]=> [REPO]/conf.d/botblocker-nginx-settings.conf [TO]=> /etc/nginx/conf.d/botblocker-nginx-settings.conf
REPO = https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master
Downloading [FROM]=> [REPO]/bots.d/blockbots.conf [TO]=> /etc/nginx/bots.d/blockbots.conf
Downloading [FROM]=> [REPO]/bots.d/ddos.conf [TO]=> /etc/nginx/bots.d/ddos.conf
Downloading [FROM]=> [REPO]/bots.d/whitelist-ips.conf [TO]=> /etc/nginx/bots.d/whitelist-ips.conf
Downloading [FROM]=> [REPO]/bots.d/whitelist-domains.conf [TO]=> /etc/nginx/bots.d/whitelist-domains.conf
Downloading [FROM]=> [REPO]/bots.d/blacklist-user-agents.conf [TO]=> /etc/nginx/bots.d/blacklist-user-agents.conf
Downloading [FROM]=> [REPO]/bots.d/blacklist-ips.conf [TO]=> /etc/nginx/bots.d/blacklist-ips.conf
Downloading [FROM]=> [REPO]/bots.d/bad-referrer-words.conf [TO]=> /etc/nginx/bots.d/bad-referrer-words.conf
Downloading [FROM]=> [REPO]/bots.d/custom-bad-referrers.conf [TO]=> /etc/nginx/bots.d/custom-bad-referrers.conf
REPO = https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master
Downloading [FROM]=> [REPO]/setup-ngxblocker [TO]=> /usr/local/sbin/setup-ngxblocker
Downloading [FROM]=> [REPO]/update-ngxblocker [TO]=> /usr/local/sbin/update-ngxblocker
setup-ngxblocker, install-ngxblocker und update-ngxblocker können alle mit benutzerdefinierten Installations-/Update-Pfaden über die Befehlszeile konfiguriert werden.
Führen Sie eines der Setup-, Install- oder Update-Skripte mit --help oder -h aus, um die Optionen anzuzeigen.
Führen Sie nun das Installationsskript mit dem Parameter -x aus, um alle erforderlichen Dateien aus dem Repository herunterzuladen:```sh cd /usr/local/sbin/ sudo ./install-ngxblocker -x
Dies ergibt die folgende Ausgabe:```text
Checking url: https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/include_filelist.txt
Creating directory: /etc/nginx/bots.d
REPO = https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master
Downloading [FROM]=> [REPO]/conf.d/globalblacklist.conf [TO]=> /etc/nginx/conf.d/globalblacklist.conf...OK
Downloading [FROM]=> [REPO]/conf.d/botblocker-nginx-settings.conf [TO]=> /etc/nginx/conf.d/botblocker-nginx-settings.conf...OK
REPO = https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master
Downloading [FROM]=> [REPO]/bots.d/blockbots.conf [TO]=> /etc/nginx/bots.d/blockbots.conf...OK
Downloading [FROM]=> [REPO]/bots.d/ddos.conf [TO]=> /etc/nginx/bots.d/ddos.conf...OK
Downloading [FROM]=> [REPO]/bots.d/whitelist-ips.conf [TO]=> /etc/nginx/bots.d/whitelist-ips.conf...OK
Downloading [FROM]=> [REPO]/bots.d/whitelist-domains.conf [TO]=> /etc/nginx/bots.d/whitelist-domains.conf...OK
Downloading [FROM]=> [REPO]/bots.d/blacklist-user-agents.conf [TO]=> /etc/nginx/bots.d/blacklist-user-agents.conf...OK
Downloading [FROM]=> [REPO]/bots.d/blacklist-ips.conf [TO]=> /etc/nginx/bots.d/blacklist-ips.conf...OK
Downloading [FROM]=> [REPO]/bots.d/bad-referrer-words.conf [TO]=> /etc/nginx/bots.d/bad-referrer-words.conf...OK
Downloading [FROM]=> [REPO]/bots.d/custom-bad-referrers.conf [TO]=> /etc/nginx/bots.d/custom-bad-referrers.conf...OK
REPO = https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master
Downloading [FROM]=> [REPO]/setup-ngxblocker [TO]=> /usr/local/sbin/setup-ngxblocker...OK
Downloading [FROM]=> [REPO]/update-ngxblocker [TO]=> /usr/local/sbin/update-ngxblocker...OK
Alle erforderlichen Dateien wurden nun direkt aus dem Repository für Sie in die richtigen Ordner auf Nginx heruntergeladen.
STELLEN SIE SICHER, dass Sie Ihre Setup- und Update-Skripte ausführbar machen, indem Sie die folgenden beiden Befehle ausführen. Dies ist wichtig, bevor Sie mit Schritt 4 und darüber hinaus fortfahren.```sh sudo chmod +x /usr/local/sbin/setup-ngxblocker sudo chmod +x /usr/local/sbin/update-ngxblocker
**setup-ngxblocker, install-ngxblocker und update-ngxblocker können alle über die Befehlszeile mit benutzerdefinierten Installations-/Aktualisierungspfaden konfiguriert werden.**
**Führen Sie eines der Setup-, Installations- oder Aktualisierungsskripte mit --help oder -h aus, um die Optionen anzuzeigen.**
************************************************
<img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/step-4.png"/>
Führen Sie nun das Skript setup-ngxblocker im DRY-MODE aus. Es zeigt Ihnen, welche Änderungen es vornehmen und welche Dateien es für Sie herunterladen wird. Dies ist nur ein DRY-RUN, es werden also noch keine Änderungen vorgenommen.```sh
cd /usr/local/sbin/
sudo ./setup-ngxblocker
Dies wird Ihnen folgendes Ergebnis liefern (die folgende Ausgabe setzt voraus, dass Ihre nginx.conf-Datei bereits das Standard-Include von /etc/nginx/conf.d/* enthält) Alle Nginx-Installationen, die ich kenne, haben dieses Standard-Include in der nginx.conf-Datei, die mit allen Versionen ausgeliefert wird.```text Checking url: https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/include_filelist.txt
** Dry Run ** | not updating files | run as 'setup-ngxblocker -x' to setup files.
INFO: /etc/nginx/conf.d/* detected => /etc/nginx/nginx.conf inserting: include /etc/nginx/bots.d/blockbots.conf; => /etc/nginx/sites-available/mydomain2.com.vhost inserting: include /etc/nginx/bots.d/ddos.conf; => /etc/nginx/sites-available/mydomain2.com.vhost inserting: include /etc/nginx/bots.d/blockbots.conf; => /etc/nginx/sites-available/mydomain1.com.vhost inserting: include /etc/nginx/bots.d/ddos.conf; => /etc/nginx/sites-available/mydomain1.com.vhost
Whitelisting ip: x.x.x.x => /etc/nginx/bots.d/whitelist-ips.conf
Dieses Skript trägt Ihre IP auch automatisch in die Datei whitelist-ips.conf ein.
Weitere IPs oder IP-Bereiche können Ihrer anpassbaren Datei whitelits-ips.conf hinzugefügt werden, die sich unter /etc/nginx/bots.d/whitelist-ips.conf befindet.
**setup-ngxblocker, install-ngxblocker und update-ngxblocker können alle über die Befehlszeile mit benutzerdefinierten Installations- / Aktualisierungspfaden konfiguriert werden.**
**Führen Sie eines der Setup-, Installations- oder Update-Skripte mit --help oder -h aus, um die Optionen anzuzeigen.**
************************************************
<img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/step-5.png"/>
Führen Sie nun das Setup-Skript mit dem Parameter -x aus, um alle erforderlichen Änderungen an Ihrer nginx.conf vorzunehmen (falls erforderlich) und die benötigten Includes in alle Ihre vhost-Dateien einzufügen.
Dieses setup-ngxblocker-Skript geht davon aus, dass alle Ihre vhost-Dateien in /etc/nginx/sites-available auf die Erweiterung .vhost enden. Es ist bewährte Praxis, alle Ihre vhost-Konfigurationsdateien mit einer .vhost-Erweiterung enden zu lassen. Wenn Sie jedoch bei dem bleiben möchten, was Sie bereits haben, z. B. .conf, können Sie einfach die Ausführung von setup-ngxblocker mit dem Parameter `-e` anpassen, um die Erweiterung anzugeben, die Sie für Ihre vhost-Dateien verwenden.
Wenn Ihre vhost-Dateien beispielsweise auf .conf enden, führen Sie setup-ngxblocker mit einem zusätzlichen Befehlszeilenparameter wie folgt aus:
`sudo ./setup-ngxblocker -x -e conf`
Also lassen Sie uns nun das Setup-Skript ausführen und alle Änderungen vornehmen, die nötig sind, um den Bot Blocker auf allen Ihren Websites zu aktivieren.```sh
cd /usr/local/sbin/
sudo ./setup-ngxblocker -x
Sie sehen die Ausgabe wie folgt:```text Checking url: https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/include_filelist.txt
INFO: /etc/nginx/conf.d/* detected => /etc/nginx/nginx.conf inserting: include /etc/nginx/bots.d/blockbots.conf; => /etc/nginx/sites-available/mydomain2.com.vhost inserting: include /etc/nginx/bots.d/ddos.conf; => /etc/nginx/sites-available/mydomain2.com.vhost inserting: include /etc/nginx/bots.d/blockbots.conf; => /etc/nginx/sites-available/mydomain1.com.vhost inserting: include /etc/nginx/bots.d/ddos.conf; => /etc/nginx/sites-available/mydomain1.com.vhost
Whitelisting ip: x.x.x.x => /etc/nginx/bots.d/whitelist-ips.conf
Sie werden feststellen, dass es die Includes in allen .vhost-Dateien auf meinem Testserver durchgeführt und auch Ihre eigene IP-Adresse in die Datei whitelist-ips.conf für Sie aufgenommen hat. Weitere IPs oder IP-Bereiche können Ihrer anpassbaren whitelits-ips.conf-Datei unter /etc/nginx/bots.d/whitelist-ips.conf hinzugefügt werden.
Was dieses Setup-Skript getan hat, ist lediglich, die folgenden include-Anweisungen für Sie in Ihre .vhost-Dateien einzufügen. Es fügt außerdem /etc/nginx/conf.d/* zu den Includes in nginx.conf hinzu (sofern nicht bereits in nginx.conf vorhanden), andernfalls schlägt das gesamte Skript fehl.```nginx
# Bad Bot Blocker
include /etc/nginx/bots.d/ddos.conf;
include /etc/nginx/bots.d/blockbots.conf;
setup-ngxblocker, install-ngxblocker und update-ngxblocker können alle über die Befehlszeile mit benutzerdefinierten Installations-/Update-Pfaden konfiguriert werden.
Führe eines der Setup-, Install- oder Update-Skripte mit --help oder -h aus, um die Optionen anzuzeigen.
Teste nun deine nginx-Konfiguration
sudo nginx -t
und du solltest sehen```text nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
************************************************
<img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/step-7.png"/>
Jetzt einfach Nginx neu laden / neu starten und der Bot Blocker wird sofort aktiv sein und alle Ihre Websites schützen.
`sudo nginx -t && sudo nginx -s reload`
oder
`sudo service nginx restart`
Das war's, der Blocker ist jetzt aktiv und schützt Ihre Websites vor Tausenden von bösartigen Bots und Domains.
************************************************
<img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/step-8.png"/>
Richten Sie nun Cron ein, um den Blocker für Sie automatisch täglich zu aktualisieren, damit Sie immer den neuesten Schutz haben.
`sudo crontab -e`
Fügen Sie die folgende Zeile am Ende Ihrer Crontab-Datei hinzu. Beachten Sie, dass Sie den Befehlszeilenparameter `-e` hinzufügen, um Ihre E-Mail-Adresse anzugeben, an die der Aktualisierungsbericht gesendet wird. Ersetzen Sie natürlich `[email protected]` durch Ihre echte E-Mail-Adresse, da Sie sonst keine E-Mail erhalten, wenn das Skript aktualisiert wurde.
`00 22 * * * sudo /usr/local/sbin/update-ngxblocker -e [email protected]`
Dadurch wird der Blocker jede Nacht um 22:00 Uhr für Sie aktualisiert.
Wenn Sie möchten, dass er häufiger aktualisiert wird (da ich manchmal 3-4 Updates pro Tag herausbringe), können Sie ihn wie folgt einrichten, um den Cron alle 8 Stunden auszuführen, obwohl einmal am Tag mehr als genug ist.
`00 */8 * * * sudo /usr/local/sbin/update-ngxblocker -e [email protected]`
Wenn Sie nach einem Update keine E-Mail-Benachrichtigung wünschen (nicht empfehlenswert, falls Nginx beim Neuladen jemals einen EMERG aufweist), führen Sie Ihren Cron einfach wie folgt aus.
`00 */8 * * * sudo /usr/local/sbin/update-ngxblocker -n`
Wenn Sie E-Mails lieber über <a href="https://www.mailgun.com/">mailgun</a> senden möchten, führen Sie Ihren Cron wie folgt aus:
`00 22 * * * sudo /usr/local/sbin/update-ngxblocker -g [email protected] -d yourdomain.com -a mailgun api key -f [email protected]`
Das war's, der Blocker hält sich automatisch auf dem neuesten Stand und lädt Nginx neu, sobald er die neueste Version der Datei globalblacklist.conf heruntergeladen hat.
************************************************
<img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/step-9.png"/>
Sie können nun eine beliebige der folgenden Dateien unten an Ihre Umgebung oder Anforderungen anpassen. Diese Dateien werden bei einem Update mit dem obigen Auto-Update-Skript nie modifiziert, sodass alle hier vorgenommenen Anpassungen bei einem Update niemals überschrieben werden.```text
/etc/nginx/bots.d/whitelist-ips.conf
/etc/nginx/bots.d/whitelist-domains.conf
/etc/nginx/bots.d/blockbots.conf
/etc/nginx/bots.d/blacklist-domains.conf
/etc/nginx/bots.d/blacklist-user-agents.conf
/etc/nginx/bots.d/blacklist-ips.conf
/etc/nginx/bots.d/bad-referrer-words.conf
/etc/nginx/bots.d/custom-bad-referrers.conf
/etc/nginx/bots.d/ddos.conf
Nehmen wir an, Sie möchten GoogleBot aus irgendeinem „obskuren“ Grund tatsächlich daran hindern, auf Ihre Website zuzugreifen. Sie fügen ihn einfach zur Datei /etc/nginx/bots.d/blacklist-user-agents.conf hinzu, und er überschreibt die Standard-Whitelist für GoogleBot. Das Gleiche gilt für alle anderen Bots, die standardmäßig auf der Whitelist stehen.
Alle Include-Dateien sind zu Ihrer Bequemlichkeit kommentiert.
(TESTEN, OB ES FUNKTIONIERT)
TESTEN
Führen Sie die folgenden Befehle nacheinander in einem Terminal auf einem anderen Linux-Rechner gegen Ihren eigenen Domainnamen aus.
❗ ersetzen Sie http:// yourdomain.com ❗ in den untenstehenden Beispielen durch Ihren eigenen ECHTEN Domainnamen ❗
curl -A "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" -I http://yourdomain.com
curl -A "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)" -I http://yourdomain.com
Sollte mit 200 OK antworten
curl -A "Xenu Link Sleuth/1.3.8" -I http://yourdomain.com
curl -A "Mozilla/5.0 (compatible; AhrefsBot/5.2; +http://ahrefs.com/robot/)" -I http://yourdomain.com
Sollte mit einer der folgenden Fehlermeldungen antworten:
curl -I http://yourdomain.com -e http://100dollars-seo.com
curl -I http://yourdomain.com -e http://zx6.ru
Sollte mit einer der folgenden Fehlermeldungen antworten:
Der Nginx Ultimate Bot Blocker funktioniert jetzt und SCHÜTZT Ihre Websites !!!
❗ ersetzen Sie http:// yourdomain.com ❗ in den untenstehenden Beispielen durch Ihren eigenen ECHTEN Domainnamen ❗
Wenn Sie ein Cloudflare-Benutzer sind, der das Cloudflare-CDN-/Caching-System nutzt, sollten Sie das Cloudflare-CDN immer deaktivieren (Cloud grau setzen)
Während des Tests erhalten Sie die korrekten Antwortcodes und Ergebnisse wie folgt:
Das ist beabsichtigt. Das CDN erledigt seine Arbeit, d.h. die erste Antwort Ihres Servers sagte dem Bot „geh weg“, indem sie ihm 444- oder 443-Antworten übermittelte.
Cloudflare cached diese Antwort, und wenn Sie ein zweites Mal testen, erhalten Sie eine 520 Origin Error-Ursprungsfehlermeldung.
Während Sie den Blocker testen, deaktivieren Sie das CDN-/Caching-System und sobald Sie mit Ihren Tests zufrieden sind, aktivieren Sie das CDN/Cache in Ihrer Live-Umgebung wieder, da Sie möchten, dass die Bots diese Antwort von Cloudflare erhalten.
Die meisten anderen CDN-Systeme zeigen wahrscheinlich dasselbe Verhalten. Deaktivieren Sie während des Tests daher immer ein CDN, um alles auszuschließen, was Ihre Tests beeinträchtigen könnte. Stellen Sie sicher, dass Sie das CDN nach dem Test wieder aktivieren !!
Sobald Sie das Cloudflare-CDN aktivieren, testen Sie erneut.
Während des Tests erhalten Sie
Das bedeutet, dass das CDN funktioniert.
INSTALLATION DES BLOCKERS AN NICHT-STANDARDMÄSSIGEN NGINX-ORDNERSPEICHERORTEN
Manche Leute bauen Nginx selbst und haben dann nicht die Standard-Nginx-Ordnerpfade unter /etc/nginx
Für solche Benutzer können Sie install-ngxblocker, setup-ngxblocker und update-ngxblocker ausführen und Ihren Ordnerspeicherort in den Befehlszeilen wie folgt angeben.
sudo ./install-ngxblocker -x -c /usr/local/nginx/conf.d -b /usr/local/nginx/bots.d
sudo ./setup-ngxblocker -x -c /usr/local/nginx/conf.d -b /usr/local/nginx/bots.d
sudo ./update-ngxblocker -c /usr/local/nginx/conf.d -b /usr/local/nginx/bots.d -e [email protected]
Dadurch werden die Dateien automatisch an den von Ihnen angegebenen Speicherorten abgelegt, die Includes werden unter Verwendung Ihrer benutzerdefinierten Speicherorte in Ihre Vhosts eingefügt, und wenn update-ngxblocker ein neues Update abruft, werden die „Include“-Abschnitte in der globalblacklist.conf-Datei nun ebenfalls automatisch an Ihre eigenen benutzerdefinierten Speicherorte angepasst. Nochmals vielen Dank an Stuart Cardall @itoffshore für seine Beiträge zu diesen hervorragenden Skripten.
Die doppelten Netzwerkberichte von Nginx sind KEIN Fehler und können auch nicht behoben werden; dies ist das gewünschte Verhalten des Blockers. Tägliche Aktualisierungen der IP-Blacklists führen dazu, dass einige bekannte IPs und Bereiche auf die Blacklist gesetzt werden old value "1" diese werden dann ganz am Ende von globalblocklist auf die Whitelist gesetzt, was der Ladereihenfolge entspricht, wodurch IPs, von denen wir wissen, dass sie gut sind, auf ihren neuen value "0" gesetzt werden und damit auf die Whitelist kommen. So ist es seit Tag 1 des Blockers und wird auch so bleiben. Dies sind einfache [WARN]-Meldungen, keine [EMERG]-Meldungen, und sie beeinträchtigen den Betrieb von Nginx in keiner Weise.
(Über 4000 schlechte Referrer, Spam-Referrer, User-Agents, böse Bots, schlechte IPs, Porno-, Glücksspiel- und Clickjacking-Seiten, lukrative SEO-Unternehmen, WordPress-Theme-Detektoren und es werden mehr)
Tausende Stunden Programmierung und Tests sind in dieses Projekt geflossen, zeigen Sie etwas Liebe
Bots versuchen, sich durch Verschleierung ihres User-Agents als andere Software oder Websites auszugeben. Ihre User-Agent-Namen mögen harmlos, ja sogar vollkommen legitim erscheinen.
Zum Beispiel „^Java“, aber laut Project Honeypot ist es tatsächlich eines der gefährlichsten, ABER viele legitime Bots da draußen haben „Java“ in ihrer User-Agent-Zeichenkette. Der Ansatz, den viele verfolgen, um „Java“ zu blockieren, ist daher nicht nur ignorant, sondern blockiert auch sehr legitime Crawler, einschließlich einiger von Google und Bing, und macht mir sehr deutlich, dass die Leute, die Bot-Blocking-Skripte schreiben, diese selten testen.
Spam-Referrer und Spam-Domainnamen nutzen sehr clevere Techniken, um von Ihren Websites abzuspringen und sehr lukrative Clickjacking- und Click-Redirecting-Kampagnen auszuführen, die ahnungslosen Internetnutzern Werbung liefern oder sogar Malware, Adware oder Ransomware in deren Browser einschleusen, die dann Teil ihres lukrativen Bot-Netzwerks werden.
Dieser Bot-Blocker enthält Hunderte von Domainnamen und IP-Adressen, die die meisten Menschen nicht einmal in ihren Nginx-Protokollen sehen werden. Dies ist das Ergebnis all meiner Websites, die mit SSL laufen und Content-Security-Policy (CSP) verwenden, die Dinge blockiert, bevor sie überhaupt zu Nginx gelangen. Dabei habe ich einige der schlimmsten Domains und Bots da draußen aufgespürt und tue das weiterhin.
Eine große Menge an Porno-, Glücksspiel- und Fake-News-Websites wird ebenfalls in diesem Blocker-Skript blockiert, das zudem schnell wächst.
Leider sind die meisten Bot-Blocker-Skripte da draußen einfach von anderen Skripten kopiert und eingefügt und so gestaltet, dass sie wie eigene Arbeit aussehen. Dieses hier wurde von dem von https://github.com/mariusv erstellten inspiriert. Ich habe zu diesem Projekt beigetragen, bin dann aber zu einem völlig neuen Layout übergegangen, habe es stark aufgeräumt und von Grund auf neu begonnen. Es ist jetzt ein völlig unabhängiges Projekt. Es ist sauber, funktioniert und wurde gründlich getestet.
Diese Nginx-Bad-Bot-Blocker-Liste ist als globale Nginx-Include-Datei konzipiert und verwendet die Nginx-Direktiven map $http_user_agent, map $http_referer und geo $validate_client.
Auf diese Weise wird die .conf-Datei von Nginx einmal in den Speicher geladen und steht allen Websites, die Sie betreiben, zur Verfügung. Sie müssen nur eine Include-Anweisung in einer Nginx-Vhost-Conf-Datei verwenden.
Das Schöne daran ist, dass es sich um eine zentrale Datei handelt, die von allen Ihren Websites verwendet wird. Das bedeutet, es gibt nur einen Ort, an dem Änderungen vorgenommen werden können, d.h. das Hinzufügen neuer Bots, die Sie in Ihren Protokolldateien entdecken. Alle Änderungen werden nach einem einfachen „sudo service nginx reload“ sofort auf alle Websites angewendet. Aber natürlich sollten Sie vor dem Neuladen immer ein sudo nginx -t ausführen, um Konfigurationsänderungen zu testen.
Die Datei ist winzig klein. Zum Zeitpunkt dieses Schreibens und des ersten öffentlichen Commits beträgt die Dateigröße einschließlich aller Kommentare, „die Nginx ignoriert“, derzeit nur 185 kb groß und enthält bereits über 5000 böse Domains, böse Bots und böse IP-Adressen. Sie ist so leichtgewichtig, dass Nginx nicht einmal merkt, dass sie da ist. Sie enthält bereits Tausende von Einträgen – Gesamtstand aktualisiert am Anfang dieser README.
Anders als viele andere Bad-Bot-Blocker für Nginx und Apache, bei denen Leute einfach Listen von anderen kopieren und einfügen, wurde diese Liste von Grund auf neu aufgebaut und gründlich getestet, und ich meine gründlich, seit über 10 Monaten. Sie stammt aus echten Serverprotokollen, die täglich überwacht werden, und es kommen fast täglich mindestens 3-10 neue Einträge hinzu.
Sie wurde auch ausführlich auf falsche Positive getestet, mit monatelangen konstanten und regelmäßigen Tests und der Überwachung von Protokolldateien.
Alle Websites, die in den schlechten Referrern aufgeführt sind, werden einzeln überprüft, bevor sie hinzugefügt werden. Einfach irgendetwas, das in Ihrer Protokolldatei verdächtig aussieht, zu kopieren und es zu einem solchen Blocker hinzuzufügen, ohne zuerst zu sehen, was es ist ... nun, das ist gelinde gesagt töricht.
Nginx hat einen schönen Fehler namens 444, der die Verbindung buchstäblich fallen lässt. Alle diese Regeln geben eine 444-Antwort aus. Wenn also eine Regel zutrifft, erhält die anfragende IP einfach keine Antwort, und es scheint, als ob Ihr Server für sie nicht existiert oder offline wäre.
Ein Test mit curl und einer der in der Datei /conf.d/globalblacklist.conf dokumentierten Test-Befehlszeilen ergibt eine einfache „curl: (52) Empty reply from server“-Antwort, und die bekommen die bösen Referrer und Bots.
Für Bots oder Spider, die Sie weiterhin zulassen möchten, deren Besuchsrate Sie aber begrenzen möchten, können Sie die von mir integrierten Rate-Limiting-Funktionen verwenden. Die Datei ist durchgehend umfangreich kommentiert, sodass Sie es herausfinden sollten; andernfalls schreiben Sie mir einfach eine Nachricht, wenn Sie Probleme haben.
oder um eigene schlechte Referrer, Bots beizusteuern oder Korrekturen an fälschlich blockierten Bots oder Domains vorzunehmen, forken Sie bitte eine Kopie dieses Repositorys und senden Sie Pull Requests auf den einzelnen Dateien hier und senden Sie dann einen Pull Request (PR).
bezüglich falscher Einträge oder anderer Probleme im Issues-System; sie werden untersucht und bei Bedarf entfernt. Ich reagiere sehr schnell auf Benutzerprobleme und habe unzähligen Benutzern tagelang geholfen, ihren Bot-Blocker zum Laufen zu bringen. Man könnte sagen, ich bin verrückt (umstritten), aber ich helfe gerne Menschen und ignoriere keine Issues oder Leute mit Problemen, dies zum Laufen zu bringen.
Viele Listen da draußen legen seltsame Domains in ihre Hosts-Datei. Ihre Hosts-Datei und DNS werden das nicht verstehen. Diese Liste verwendet konvertierte Domains, die im korrekten DNS-Format vorliegen, um von jedem Betriebssystem verstanden zu werden. Vermeiden Sie Listen, die die korrekt formatierte Domainstruktur nicht in ihre Listen aufnehmen.
Zum Beispiel Die Domain:
lifehacĸer.com (beachten Sie das K)
übersetzt sich tatsächlich in:
xn--lifehacer-1rb.com
Sie können auf jedem Betriebssystem einen nslookup durchführen, und er wird korrekt aufgelöst.
`nslookup xn--lifehacer-1rb.com````xn--lifehacer-1rb.com origin = dns1.yandex.net mail addr = iskalko.yandex.ru serial = 2016120703 refresh = 14400 retry = 900 expire = 1209600 minimum = 14400 xn--lifehacer-1rb.com mail exchanger = 10 mx.yandex.net. Name: xn--lifehacer-1rb.com Address: 78.110.60.230 xn--lifehacer-1rb.com nameserver = dns2.yandex.net. xn--lifehacer-1rb.com text = "v=spf1 redirect=_spf.yandex.net" xn--lifehacer-1rb.com nameserver = dns1.yandex.net.
- Siehe: https://www.charset.org/punycode für weitere Informationen hierzu.
************************************************
## ÜBERWACHE IMMER, WAS DU TUST:
**STELL SICHER, dass du deine Webseiten-Logs überwachst**, nachdem du dies implementiert hast. Ich empfehle dir, dies zuerst auf einer Website zu laden und auf mögliche False Positives zu überwachen, bevor du es auf allen deinen Websites produktiv einsetzt.
Stecke nicht wie ein Vogel Strauß deinen Kopf in den Sand: Ein verantwortungsvoller Serverbetreiber und Website-Besitzer zu sein bedeutet, dass du deine Logs regelmäßig überwachen musst. Ein Grund, warum viele von euch überhaupt erst hier gelandet sind, ist, dass ihr üble Dinge in euren Nginx-Logdateien gesehen habt.
Überwache deine Logs außerdem täglich auf neue schlechte Referrer und User-Agent-Strings, die du blockieren möchtest. Die beste Quelle, um diese Liste zu erweitern, sind deine eigenen Server-Logs, nicht meine.
Zögere nicht, schlechte Referrer aus deinen eigenen Logs per Pull Request (PR) zu diesem Projekt beizutragen. Du kannst dich jedoch auf diese Liste verlassen, um 99 % der Bösewichte fernzuhalten.
************************************************
## SO ÜBERWACHST DU DEINE LOGS TÄGLICH (Der einfache Weg):
**Mit großem Dank und Anerkennung an**
https://blog.nexcess.net/2011/01/21/one-liners-for-apache-log-files/
Um täglich die Top-Referrer aus den Logdateien einer Website zu überwachen, verwende die folgenden einfachen Cron-Jobs, die dir jeden Morgen eine Liste der Top-Referrer / User-Agents aus den Logdateien einer bestimmten Website per E-Mail senden. Dies ist ein Beispiel für nur einen Cron-Job für eine Website. Richte für jede Website, die du überwachen möchtest, mehrere ein. Hier ist ein Cron-Job, der jeden Morgen um 8 Uhr läuft und mir das bereinigte Log der Referrer per E-Mail sendet. Wenn ich „bereinigt“ sage, meine ich, dass die Domain der Website und andere Referrer wie Google und Bing aus den Ergebnissen entfernt werden. Natürlich musst du in den folgenden Beispielen den Logdateinamen, den Domainnamen und deine E-Mail-Adresse ändern. Der zweite Cron-Job zum Sammeln von User-Agents entfernt keine Referrer, aber du kannst diese Funktion hinzufügen, indem du die awk-Anweisung !~ aus dem ersten Beispiel kopierst.
##### Cron zur täglichen Überwachung von Referrern auf Nginx
`00 08 * * * tail -10000 /var/log/nginx/mydomain-access.log | awk '$11 !~ /google|bing|yahoo|yandex|mywebsite.com/' | awk '{print $11}' | tr -d '"' | sort | uniq -c | sort -rn | head -1000 | mail -s "Top 1000 Referers for Mydomain.com" [email protected]`
Dies sendet dir täglich eine Liste von Referrern, wobei ein awk-Befehl verwendet wird, um Domains wie google, bing und deine eigene Domain auszuschließen.
##### Cron zur täglichen Überwachung von User-Agents auf Nginx
`00 08 * * * tail -50000 /var/log/nginx/mydomain-access.log | awk '{print $12}' | tr -d '"' | sort | uniq -c | sort -rn | head -1000 | mail -s "Top 1000 Agents for Mydomain.com" [email protected]`
Dies sendet dir eine Liste der Top-User-Agents, die deine Website in den letzten 24 Stunden besucht haben – hilfreich, um ungewöhnliche oder verdächtig aussehende User-Agent-Strings zu erkennen.
************************************************
## AGGRESSIVE BOTS MIT FAIL2BAN AUF FIREWALL-EBENE BLOCKIEREN:
Ich habe einen eigenen Fail2Ban-Filter und eine eigene Action hinzugefügt, die ich geschrieben habe und die deine Nginx-Logs auf Bots überwacht, die eine große Anzahl von 444-Fehlern erzeugen. Dieses eigene Jail für Fail2Ban durchsucht Logs über einen Zeitraum von 1 Woche und sperrt den Übeltäter für 24 Stunden.
Es hilft sehr dabei, einige Wiederholungstäter fernzuhalten und zu verhindern, dass sie deine Logdateien mit 444-Fehlern füllen.
Siehe den Fail2Ban-Ordner für Anweisungen zur Konfiguration dieses großartigen Add-ons für den Nginx Bad Bot Blocker.
************************************************
## GOOGLE ANALYTICS „GHOST“-SPAM STOPPEN:
Allein die Verwendung des Nginx-Blockers stoppt den Google-Analytics-„Ghost“-Referral-Spam nicht, da dieser Analytics direkt trifft und nicht unbedingt immer deine Website berührt.
Du solltest in Analytics Regex-Filter verwenden, um Ghost-Referral-Spam zu verhindern.
Dafür gibt es mehrere google-exclude-0*.txt-Dateien, die für dich erstellt wurden und die gleichzeitig mit dem Nginx Blocker aktualisiert werden. Wenn die Liste wächst, werden weitere Exclude-Dateien erstellt.
************************************************
## UM „GHOST“-SPAM AUF GOOGLE ANALYTICS ZU STOPPEN, BEFOLGE DIE EINFACHE VISUELLE ANLEITUNG UNTEN
Befolge die unten stehenden Schritt-für-Schritt-Anweisungen, um diese google-exclude-Dateien als Segmente zu deiner Website hinzuzufügen.
<table style="width:100%;margin:0;">
<tr>
<td align="left"><img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/google-analytics-ghost-spam-01.jpg" alt="Google Analytics - Adding Segments to Stop Ghost Spam"/></td>
</tr>
<tr>
<td align="left"><img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/google-analytics-ghost-spam-02.jpg" alt="Google Analytics - Adding Segments to Stop Ghost Spam"/></td>
</tr>
<tr>
<td align="left"><img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/google-analytics-ghost-spam-03.jpg" alt="Google Analytics - Adding Segments to Stop Ghost Spam"/></td>
</tr>
<tr>
<td align="left"><img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/google-analytics-ghost-spam-04.jpg" alt="Google Analytics - Adding Segments to Stop Ghost Spam"/></td>
</tr>
<tr>
<td align="left"><img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/google-analytics-ghost-spam-05.jpg" alt="Google Analytics - Adding Segments to Stop Ghost Spam"/></td>
</tr>
<tr>
<td align="left"><img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/google-analytics-ghost-spam-06.jpg" alt="Google Analytics - Adding Segments to Stop Ghost Spam"/></td>
</tr>
<tr>
<td align="left"><img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/google-analytics-ghost-spam-07.jpg" alt="Google Analytics - Adding Segments to Stop Ghost Spam"/></td>
</tr>
</table>
************************************************
## SPAM-DOMAINS MIT DER GOOGLE SEARCH CONSOLE / DEN WEBMASTER-TOOLS BLOCKIEREN
(So verwendest du die Datei google-disavow.txt)
Ich habe die Erstellung einer Google-Disavow-Textdatei namens google-disavow.txt hinzugefügt. Diese Datei kann in den Google-Webmaster-Tools verwendet werden, um all diese Domains als Spam- oder schlechte Links zu blockieren. Mit Vorsicht verwenden.
************************************************
## ROBOTS.txt-VERSION für diejenigen, die diesen vollständigen Blocker nicht verwenden können?
Viele Menschen sind ihrer Hosting-Firma ausgeliefert und haben keinen Root-Zugriff auf den Server, der hinter ihrer Website läuft. Wenn das auf dich zutrifft, wirf einen Blick auf die automatisch generierte robots.txt-Datei, die dir bis zu einem gewissen Grad hilft, viele Bad Bots und User-Agents von deinen Websites fernzuhalten.
************************************************
## .htaccess-VERSIONEN für diejenigen, die diesen vollständigen Blocker nicht verwenden können?
Viele Menschen sind ihrer Hosting-Firma ausgeliefert und haben keinen Root-Zugriff auf den Server, der hinter ihrer Website läuft.
Wenn das auf dich zutrifft, wirf einen Blick auf die automatisch generierten .htaccess-Versionen des Spam-Referrer-Blockers, die in <a href="https://github.com/mitchellkrogza/apache-ultimate-bad-bot-blocker/tree/master/.htaccess">diesem Repository</a> zu finden sind. Diese .htaccess-Methode (NUR FÜR APACHE-SITES) hilft dir, alle Spam-Referrer aus diesem Blocker von deiner Website fernzuhalten.
Dies wird hier lediglich erwähnt, weil viele Benutzer von CPanel-Systemen glauben, sie säßen hinter einem Nginx-Server, in Wirklichkeit aber auf einem Apache-Server laufen, der hinter einem Nginx-Proxy-Server sitzt. .htaccess funktioniert nicht auf Nginx-Sites.
Verwendest du keinen Nginx-Webserver? Dann sieh dir den [](https://github.com/mitchellkrogza/apache-ultimate-bad-bot-blocker) an.
************************************************
# ES FUNKTIONIERT VERDAMMT NOCH MAL !!!
************************************************
## Freu dich jetzt einfach darüber, was der Nginx Bad Bot Blocker für dich und deine Websites tun kann.
### Und hilf mit, dieses Projekt zu unterstützen
Tausende Stunden Programmierung und Tests sind in dieses Projekt geflossen, zeig etwas Liebe
[<img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/kofi4.png" alt="Buy me Coffee" width="300"/>](https://ko-fi.com/mitchellkrog)
************************************************
# WURDE DEINE WEBSITE GEHACKT?
[](mailto:[email protected]) um dir zu helfen, deine Website zu bereinigen und abzusichern.
************************************************
### EINIGE ANDERE GROSSARTIGE KOSTENLOSE PROJEKTE
- https://github.com/mitchellkrogza/apache-ultimate-bad-bot-blocker
- https://github.com/mitchellkrogza/Badd-Boyz-Hosts
- https://github.com/mitchellkrogza/Ultimate.Hosts.Blacklist
- https://github.com/mitchellkrogza/Stop.Google.Analytics.Ghost.Spam.HOWTO
- https://github.com/mitchellkrogza/The-Big-List-of-Hacked-Malware-Web-Sites
- https://github.com/mitchellkrogza/fail2ban-useful-scripts
- https://github.com/mitchellkrogza/linux-server-administration-scripts
- https://github.com/mitchellkrogza/Travis-CI-Nginx-for-Testing-Nginx-Configuration
- https://github.com/mitchellkrogza/Travis-CI-for-Apache-For-Testing-Apache-and-PHP-Configurations
- https://github.com/mitchellkrogza/Fail2Ban-Blacklist-JAIL-for-Repeat-Offenders-with-Perma-Extended-Banning
- https://github.com/funilrys/PyFunceble
- https://github.com/funilrys/dead-hosts
- https://github.com/mitchellkrogza/The-Big-List-of-Hacked-Malware-Web-Sites
- https://github.com/mitchellkrogza/Suspicious.Snooping.Sniffing.Hacking.IP.Addresses
- https://github.com/mitchellkrogza/Fail2Ban.WebExploits
************************************************
### SCHAU DIR AUCH DIE NEUE GROSSE LISTE GEHACKTER MALWARE- & WORDPRESS-WEBSITES AN
Dieses Repository enthält eine Liste aller Websites, auf die ich stoße, die mit Malware gehackt wurden.
Die meisten Website-Besitzer wissen nicht, dass ihre Websites gehackt wurden und dazu benutzt werden, Malware zu verbreiten.
Schau es dir an unter: https://github.com/mitchellkrogza/The-Big-List-of-Hacked-Malware-Web-Sites
************************************************
### INTERESSE AN FOTOGRAFIE?
Schau mal vorbei und besuch mich auf [mitchellkrog.com](https://mitchellkrog.com) oder [Facebook](https://www.facebook.com/MitchellKrogPhotography) oder folge mir auf Twitter <a href='https://twitter.com/MitchellKrog'><img src="https://img.shields.io/twitter/follow/MitchellKrog.svg?style=social&label=Follow" alt='Follow @MitchellKrog'></a>
************************************************
### DANKSAGUNGEN & MITWIRKENDE:
Vielen Dank an alle, die zu diesem Projekt beitragen.
Viele Teile der Generator-Skripte und des Codes, die hinter diesem Projekt stehen, wurden aus Snippets von Hunderten von Quellen übernommen.
Es ist tatsächlich so schwer, alle zu nennen, aber hier sind einige wichtige Personen, deren kleine Code-Snippets mir immer wieder geholfen haben, neue Funktionen einzuführen. Zeig ihnen etwas Liebe und schau dir auch einige ihrer Projekte an.
- Konstantin Goretzki @konstantingoretzki https://github.com/konstantingoretzki (Verbesserte Regex für den Fail2Ban-Filter)
- Stuart Cardall - https://github.com/itoffshore (Install-, Update- und Setup-Skripte & Alpine-Linux-Paketbetreuer)
- Mike van Eckendonk - https://github.com/Eckybrazzz
- Nissar Chababy @funilrys - https://github.com/funilrys/PyFunceble (Ausgezeichnetes Skript zum Prüfen von AKTIVEN, INAKTIVEN und ABGELAUFENEN Domains)
- Marius Voila https://github.com/mariusv
- Cătălin Mariș https://github.com/alrra
- deformhead https://github.com/deformhead
- bluedragonz https://github.com/bluedragonz
- Alexander https://github.com/shoonois
- Steven Black https://github.com/StevenBlack
- Fail2Ban - https://github.com/fail2ban
- Stevie-Ray Hartog https://github.com/Stevie-Ray
- Sir Athos from StackOverFlow - http://stackoverflow.com/users/2245910/sir-athos (Hilfe bei Travis-Build-Tagging und -Committing)
- StackOverflow - http://stackoverflow.com/ (Bash-Skripte aus Hunderten von Fragen und Antworten)
- SuperUser - http://superuser.com/ (Snippets aus verschiedenen Fragen und Antworten)
Wenn du glaubst, dass dein Name hierher gehört, schreib mir eine Nachricht.
************************************************
### Code wie diesen zu schreiben braucht viel Zeit !!
Tausende Stunden Programmierung und Tests sind in dieses Projekt geflossen, zeig etwas Liebe
[<img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/kofi4.png" alt="Buy me Coffee" width="300"/>](https://ko-fi.com/mitchellkrog)
<img src="https://raw.githubusercontent.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker/master/.assets/zuko.png"/>
************************************************
# MIT-Lizenz
## Copyright (c) 2017 Mitchell Krog - [email protected]
## https://github.com/mitchellkrogza
Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen
Dokumentationsdateien (die „Software“) erhält, kostenlos die Erlaubnis erteilt,
uneingeschränkt mit der Software zu handeln, einschließlich und ohne Einschränkung
der Rechte zur Nutzung, zum Kopieren, Modifizieren, Zusammenführen, Veröffentlichen,
Verteilen, Unterlizenzieren und/oder Verkaufen von Kopien der Software, und
es Personen, denen die Software zur Verfügung gestellt wird, zu gestatten, dies
unter den folgenden Bedingungen zu tun:
Der obige Urheberrechtshinweis und dieser Erlaubnishinweis müssen in allen
Kopien oder wesentlichen Teilen der Software enthalten sein.
DIE SOFTWARE WIRD „WIE BESEHEN“ BEREITGESTELLT, OHNE JEGLICHE GEWÄHRLEISTUNG,
AUSDRÜCKLICH ODER STILLSCHWEIGEND, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE
GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND
DER NICHTVERLETZUNG VON RECHTEN DRITTER. IN KEINEM FALL SIND DIE AUTOREN ODER
URHEBERRECHTSINHABER HAFTBAR FÜR ANSPRÜCHE, SCHÄDEN ODER SONSTIGE HAFTUNG, OB IN
EINER KLAGE, AUS VERTRAG, UNERLAUBTER HANDLUNG ODER ANDERWEITIG, DIE AUS ODER IN
VERBINDUNG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN GESCHÄFTEN MIT DER SOFTWARE ENTSTEHT.