Hast du es mit einem Bot, Spammer oder Hacker zu tun, der deine Webseite ständig angreift? Je nach Schweregrad könnte es einen großen Einfluss auf deine Besuche und Bandbreite haben, in diesem Fall solltest du versuchen, sie zu blockieren.

Alle Kinsta-Tarife enthalten ein kostenloses IP Deny Tool, mit dem du bestimmte IP-Adressen und Bereiche blockieren kannst, damit sie nicht auf deine Webseite gelangen. In diesem Artikel stellen wir dir verschiedene Methoden vor, mit denen du IP-Adressen blockieren kannst.

Bist du bereit?

Dann lass uns loslegen!

Wie man problematische IP-Adressen identifiziert

WordPress ist ein dynamisches CMS, was bedeutet, dass nicht gecachte Seiten bei Bedarf von PHP Workern generiert werden. Da nicht zwischengespeicherte Anfragen deutlich mehr CPU- und RAM-Ressourcen benötigen (im Vergleich zu zwischengespeicherten Anfragen), ist es für einen böswilligen Akteur möglich, einen Server dazu zu bringen, nicht mehr zu antworten, indem er eine Menge Anfragen sendet.

Wenn du dich jemals in dieser Situation befindest, ist eine Strategie, die helfen kann, die Serverlast zu reduzieren, die Blockierung der störenden IP-Adressen.

Im Dashboard von MyKinsta kannst du dir eine Liste der wichtigsten IP-Adressen anzeigen lassen, die auf deine Webseite zugreifen. Um diese IP-Adressen zu sehen, gehe zu Analytics > Geo & IP und scrolle runter zu „Top Client IPs“.

Top Client IP Adressen.
Top Client IP Adressen.

 

Wenn du eine IP-Adresse siehst, die viel mehr Anfragen stellt als andere IPs (z.B. um den Faktor 5-10x), solltest du weiter untersuchen, um festzustellen, ob die IP ein Bot oder Spammer ist. Der einfachste Weg, um zu prüfen, ob eine IP bösartig ist, ist die Verwendung eines Reputationsprüfers wie CleanTalk oder Spamhaus.

Wenn der Reputations-Checker die IP-Adresse als Bot- oder Spammer-IP identifiziert, kannst du weitere Maßnahmen ergreifen, um die IP zu blockieren. Auch wenn der Reputations-Checker die IP nicht als bösartig einstuft, kann es einfach bedeuten, dass die IP noch nicht in ihrer Datenbank ist.

Wenn du siehst, dass die IP dazu führt, dass dein Server einen HTTP 502 Fehler zurückgibt oder komplett abstürzt, lohnt es sich zu testen, ob das Blockieren der IP-Adresse die Dinge besser macht.

Wie man IP-Adressen mit MyKinsta blockiert

Mit dem IP Deny Tool im MyKinsta Dashboard kannst du sowohl einzelne IP-Adressen als auch IP-Adressbereiche blockieren, ohne die Konfigurationsdateien des Webservers bearbeiten zu müssen. Wenn du auf Kinsta hostest, ist das IP Deny Tool die empfohlene Methode zum Blockieren von IP-Adressen.

Um eine IP-Adresse in MyKinsta zu blockieren, navigiere zu Websites > Deine Webseite > IP Deny.

IP Deny Tool in MyKinsta.
IP Deny Tool in MyKinsta.

Als nächstes klickst du auf die Schaltfläche „IP-Adressen hinzufügen“ in der oberen rechten Ecke der Seite.

IP-Adresse zum Blockieren hinzufügen.
IP-Adresse zum Blockieren hinzufügen.

Im „Add IP Addresses to Deny“-Modal kannst du IPV4-Adressen, IPV6-Adressen und CIDR (Classless Inter-Domain Routing) IP-Adressbereiche zur Blockliste hinzufügen. CIDR-Bereiche sind nützlich, um einen sequenziellen Bereich von IP-Adressen zu blockieren (z.B. 127.0.0.1 bis 127.0.0.255). Um einen gültigen CIDR-Bereich zu generieren, empfehlen wir ein Tool wie dieses zu verwenden.

Hier sind ein paar Beispiele von IP-Adressen, die du blockieren kannst:

  • IPV4 Adresse – 103.5.140.141
  • IPV6 Adresse – 2001:0db8:0a0b:12f0:0000:0000:0000:0001
  • CIDR Bereich – 128.0.0.1/32

Sobald du die zu blockierenden IP-Adressen hinzugefügt hast, klicke auf die Schaltfläche „IP-Adressen hinzufügen“.

Füge IP-Adressen zur Blockliste hinzu.
Füge IP-Adressen zur Blockliste hinzu.

Du solltest nun die IP-Adressen sehen, die zur Blockliste hinzugefügt wurden. Auf dieser Seite hast du auch Zugriff auf zwei Aktionen (Bearbeiten und Löschen) in der Spalte „Aktionen“. Mit der Aktion „Bearbeiten“ kannst du die IP-Adresse oder den Bereich aktualisieren, während du mit der Aktion „Löschen“ die blockierte IP-Adresse löschen kannst.

Blockierte IP-Adressen bearbeiten oder löschen.
Blockierte IP-Adressen bearbeiten oder löschen.

 

 

Wie man IP-Adressen in Cloudflare blockiert

Wenn du ein Cloudflare-Nutzer bist, kannst du das Tool „IP-Zugriffsregeln“ im Cloudflare-Dashboard nutzen, um IP-Adressen und IP-Bereiche zu blockieren.

Im Cloudflare Dashboard navigierst du zu Firewall > Tools.

Cloudflare Tools Dashboard.
Cloudflare Tools Dashboard.

Um eine neue IP-Zugriffsregel zu erstellen, füge eine IP-Adresse hinzu, wähle die Aktion „Blockieren“, wähle „Diese Webseite“ (oder „Alle Webseiten im Konto“, wenn die Regel für alle deine Cloudflare-Domains gelten soll) und klicke auf „Hinzufügen“.

Füge eine IP-Zugriffsregel hinzu.
Füge eine IP-Zugriffsregel hinzu.

Nachdem du die Zugriffsregel hinzugefügt hast, wird sie in der Liste „IP-Zugriffsregeln“ angezeigt. Hier kannst du Änderungen an der Zugriffsregel vornehmen, wie z.B. die Aktion ändern, Notizen hinzufügen oder die Regel löschen.

IP-Zugriffsregel im Cloudflare Dashboard.
IP-Zugriffsregel im Cloudflare Dashboard.

Neben der Aktion „Blockieren“ unterstützt Cloudflare auch „Fordern“, „Zulassen“ und „JavaScript Challenge“. Je nachdem, was du erreichen willst, solltest du eine dieser anderen Aktionen anstelle von „Blockieren“ verwenden.

IP-Bereich, Land und ASN in Cloudflare blockieren

Zusätzlich zu einzelnen IP-Adressen unterstützen die IP-Zugriffsregeln von Cloudflare auch IP-Bereiche, Ländernamen und ASNs (Autonomous System Numbers).

  • Um einen IP-Bereich zu blockieren, gib einen CIDR-Bereich für den Wert der IP-Zugriffsregel an.
  • Um ein Land zu blockieren, gib den Alpha-2 Ländercode
  • Um einen ASN zu blockieren (eine Liste von IPs, die von einem einzelnen Netzbetreiber kontrolliert werden), gib einen gültigen ASN an, der mit „AS“ beginnt.

Wie man IP-Adressen in Nginx blockiert

Wenn deine Webseite selbst mit dem Nginx Webserver gehostet wird, kannst du IP-Adressen direkt in der Webserver-Konfiguration blockieren. Obwohl diese Methode nicht so benutzerfreundlich ist wie das Blockieren von IPs mit dem IP Deny Tool von MyKinsta oder der Firewall von Cloudflare, kann es in bestimmten Situationen die einzige Option sein.

Um eine IP-Adresse in Nginx zu blockieren, logge dich per SSH in deinen Server ein und öffne deine Nginx-Konfigurationsdatei mit dem Texteditor nano wie folgt:

nano /etc/nginx/nginx.conf

Wie man eine einzelne IP-Adresse mit Nginx blockiert

Um eine einzelne IP (IPV4 oder IPV6) Adresse in Nginx zu blockieren, verwende die deny Direktive wie folgt:

deny 190.60.78.31;
deny 4b73:8cd3:6f7b:8ddc:d2f9:31ca:b6b1:834e;

Wie man einen CIDR-IP-Bereich mit Nginx blockiert

Um einen CIDR-IP-Bereich in Nginx zu blockieren, verwende die folgende Direktive:

deny 192.168.0.0/24;

Fortgeschrittene Nginx IP-Blocking-Techniken

Wenn du den Zugriff auf ein bestimmtes Verzeichnis (z.B. domain.com/secret-directory/) blockieren willst, kannst du die folgende Nginx-Direktive verwenden:

location /secret-directory/ {
        deny 192.168.0.0/24;
}

Die deny-Direktive akzeptiert all als Wert. Dies ist nützlich für Situationen, in denen du alle IP-Adressen zu deiner Webseite blockieren möchtest. Die deny all; Direktive wird oft in Verbindung mit der allow-Direktive verwendet – so kannst du bestimmte IP-Adressen zulassen und alles andere blockieren.

location /secret-directory/ {
        allow 192.168.0.0/16;
        deny all;
}

Speichere die Nginx-Konfiguration und lade Nginx neu

Wenn du mit der Bearbeitung der Konfiguration mit nano fertig bist, speichere deine Änderungen mit Strg + O. Nachdem du die Datei gespeichert hast, drücke Strg + X, um nano zu beenden.

Um die neuen IP-Block-Regeln zu aktivieren, musst du die Nginx-Konfiguration mit dem folgenden Befehl neu laden:

sudo systemctl reload nginx

Wie man IP-Adressen im Apache blockiert

Wenn deine Webseite selbst mit dem Apache Webserver gehostet wird, kannst du IP-Adressen direkt in der Webserver-Konfiguration blockieren. Um eine IP-Adresse im Apache zu blockieren, musst du eine .htaccess-Datei verwenden, die es dir ermöglicht, einzigartige Regeln auf bestimmte Verzeichnisse anzuwenden. Um die Regeln auf deine gesamte Webseite anzuwenden, sollte die .htaccess-Datei im Stammverzeichnis deiner Webseite platziert werden.

Um loszulegen, logge dich per SSH in deinen Server ein, navigiere zum Root-Verzeichnis deiner Webseite und erstelle die .htaccess Datei mit dem folgenden Befehl:

touch .htaccess

Als nächstes öffnest du die .htaccess Datei mit dem nano Texteditor wie folgt:

nano .htaccess

Die genauen Regeln zum Blockieren von IPs hängen davon ab, ob du Apache 2.2 oder 2.4 verwendest, daher werden wir Regeln für beide Versionen einfügen. Wenn du deine .htaccess-Datei bearbeitest, verwende die Regeln für deine Apache-Version.

Wie man eine einzelne IP-Adresse mit Apache blockiert

Um eine einzelne IP (IPV4 oder IPV6) Adresse im Apache zu blockieren, verwende die folgenden Regeln:

# Apache 2.2
order allow, deny
allow 192.168.0.0
deny from all

#Apache 2.4
Require all granted
Require not ip 192.168.0.0

Wie man einen CIDR IP Bereich mit Apache blockiert

# Apache 2.2
order allow, deny
allow 192.168.0.0/16
deny from all

#Apache 2.4
Require all granted
Require not ip 192.168.0.0/16

Zusammenfassung

Abhängig von der Konfiguration deiner Webseite gibt es verschiedene Möglichkeiten, IP-Adressen davon abzuhalten, deine Webseite zu erreichen. Wenn du ein Kinsta-Benutzer bist, empfehlen wir dir, das integrierte IP Deny Tool von MyKinsta zu benutzen.

Wenn deine Webseite nicht auf Kinsta gehostet wird, empfehlen wir dir, sie mit Cloudflare zu sichern, mit dem du einzigartige IP-Zugriffsregeln erstellen kannst, um IP-Adressen, Bereiche und mehr zu blockieren. Wenn du nicht in der Lage bist, Cloudflare für deine Webseite einzurichten, kannst du IP-Blockierungsregeln auch direkt in deiner Webserver-Konfigurationsdatei implementieren.