Inhalt
- So verwenden Sie Cloudflare zum Sichern Ihrer WordPress-Site
- Whitelist Ihre IP-Adresse
- 1. Blockieren Sie wp-login.php-Angriffe
- 2. Blockieren Sie xmlrpc.php-Angriffe
- 3. Schützen Sie den wp-admin-Bereich
- 4. Blockieren Sie No-Referer-Anfragen an Plugins
- 5. Reduzieren Sie Spam, indem Sie direkte Anfragen an wp-comment-post.php blockieren
- Ihre Website ist jetzt etwas sicherer!
- Weiterführende Literatur
- Fragen & Antworten
Ich verwende Cloudflare für alle meine Wordpress-Websites - nicht nur, um sie schneller, sondern auch sicherer zu machen.
So verwenden Sie Cloudflare zum Sichern Ihrer WordPress-Site
Dieses Handbuch richtet sich an sicherheitsbewusste Webmaster, die eine WordPress-Site oder ein Blog in einer Cloudflare-fähigen Domain betreiben. Im kostenlosen Plan gewährt Cloudflare fünf Firewall-Regeln, die standardmäßig leer sind.
Durch Hinzufügen von WordPress-spezifischen Regeln, die ich auf dieser Seite beschreibe, können Sie Ihre Site sichern und Angriffe blockieren, bevor sie überhaupt den Server Ihres Webhosts erreichen.
Haftungsausschluss: Ich bin in keiner Weise mit Cloudflare verbunden, aber ich bin seit mehreren Jahren ein zufriedener Benutzer ihrer Dienste.
Whitelist Ihre IP-Adresse
Bevor Sie Firewall-Regeln implementieren, sollten Sie zunächst Ihre eigene IP-Adresse auf die Whitelist setzen. Auf diese Weise sind Sie nicht betroffen, wenn Sie sich entscheiden, Ihren WordPress-Administrationsbereich vor Außenstehenden zu schützen (was ich gleich erläutern werde).
Dies können Sie erreichen, indem Sie auf Ihr Cloudflare-Dashboard zugreifen und auf klicken Firewall, dann Werkzeuge, geben Sie Ihre IP * ein und wählen Sie Whitelist im Dropdown-Menü.
* Sie haben hier mehrere Möglichkeiten in der Reihenfolge abnehmender Sicherheit:
- Whitelist your genau IP Adresse. Optimale Wahl, wenn Ihr ISP Ihnen eine statische IP gewährt. Beachten Sie, dass Sie Ihre IP-Adresse erneut eingeben müssen, damit Sie nicht aus Ihrem WordPress-Administrationsbereich ausgeschlossen werden.
- Whitelist des gesamten IP-Bereichs Ihres ISP. Gute Wahl, wenn Sie eine dynamische IP haben.
- Whitelist deines Landes. Dies schützt Sie nicht vor Angriffen aus Ihrem eigenen Land, kann jedoch eine bequeme Option sein, wenn Sie häufig reisen und Wi-Fi verwenden, um eine Verbindung zu Ihrer WordPress-Site herzustellen.
Eine IP-Adresse oder ein Land, das auf diese Weise auf die Whitelist gesetzt wurde, ist davon ausgenommen alle Firewall-Regeln, sodass Sie nicht für jede einzelne Regel Ausnahmen hinzufügen müssen.
1. Blockieren Sie wp-login.php-Angriffe
Wenn Sie sich Ihre Serverprotokolle ansehen, werden Sie wahrscheinlich zahlreiche IPs aus der ganzen Welt finden, die versuchen, auf Ihre Datei wp-login.php zuzugreifen. Dies ist bei weitem der häufigste Angriff auf WordPress-Installationen. Hierbei handelt es sich normalerweise um automatisierte Scans, die keine große Bedrohung darstellen. Sie können sie jedoch aus Sicherheitsgründen blockieren.
Dies setzt natürlich voraus, dass Sie (der Administrator) der einzige Benutzer auf Ihrer Website sind. Wenn Sie mehrere Benutzer haben oder ein Mitgliedschafts-Plugin verwenden, möchten Sie diese Regel wahrscheinlich überspringen.
Klicken Sie in Ihrem Cloudflare-Dashboard auf Firewall Drücken Sie noch einmal die blaue Taste Erstellen Sie eine Firewall-Regel Taste. Nennen Sie es wie Sie möchten und geben Sie Folgendes ein:
- Feld: URI-Pfad
- Operator: enthält
- Wert: /wp-login.php
[Aktion: Blockieren]
Wenn Sie es richtig gemacht haben, sollten Sie Folgendes in der Ausdrucksvorschau Sektion.
(http.request.uri.path enthält "/wp-login.php")
Speichern Sie die Regel und sie sollte automatisch aktiviert werden. Cloudflare blockiert jetzt jeden Versuch, eine Verbindung zu wp-login.php herzustellen, mit Ausnahme der IP, die Sie auf die Whitelist gesetzt haben.
Diese Brute-Force-Versuche verschwinden aus Ihren Serverprotokollen, aber Sie können sie in Cloudflare verfolgen Firewall-Ereignisse Abschnitt, wenn Sie überprüfen möchten, ob der Schutz funktioniert.
2. Blockieren Sie xmlrpc.php-Angriffe
Nach wp-login.php ist xmlrpc.php das zweithäufigste Angriffsziel. XML-RPC hat legitime Verwendungszwecke, z. B. das Bloggen von einem Smartphone oder das gleichzeitige Posten von Inhalten auf mehreren WordPress-Websites. Wenn Sie das nicht tun, kann es sicher blockiert werden. Gehen Sie wie zuvor vor und erstellen Sie die Regel:
- Feld: URI-Pfad
- Operator: enthält
- Wert: /xmlrpc.php
[Aktion: Blockieren]
Sie sollten Folgendes in der sehen Ausdrucksvorschau Sektion.
(http.request.uri.path enthält "/xmlrpc.php")
3. Schützen Sie den wp-admin-Bereich
Jetzt machen wir es so, dass Sie und nur Sie auf Ihren Admin-Bereich zugreifen können. Diese Regel ist etwas komplexer, da Sie zwei Ausnahmen machen müssen.
Das erste ist /wp-admin/admin-ajax.php, das von bestimmten Plugins verwendet wird, um dynamischen Inhalt auf Ihrer Website anzuzeigen. Obwohl es sich im Ordner / wp-admin / befindet, muss es von außen zugänglich sein.
An zweiter Stelle steht /wp-admin/theme-editor.php, das jedes Mal eine Fehlerprüfung durchführt, wenn Sie Ihr Thema über den integrierten Editor bearbeiten, indem Sie eine Loopback-Anforderung an Ihre Homepage erstellen. Wenn Sie diese Ausnahme nicht hinzufügen, schlägt die Überprüfung mit der Meldung "Kommunikation mit der Site zur Überprüfung auf schwerwiegende Fehler nicht möglich" fehl und Ihre Änderungen werden nicht gespeichert.
Erstellen Sie die folgende Regel:
- Feld: URI-Pfad
- Operator: enthält
- Wert: / wp-admin /
[UND]
- Feld: URI-Pfad
- Operator: enthält nicht
- Wert: /wp-admin/admin-ajax.php
[UND]
- Feld: URI-Pfad
- Operator: enthält nicht
- Wert: /wp-admin/theme-editor.php
[Aktion: Blockieren]
Oder klicken Sie einfach Ausdruck bearbeiten und fügen Sie Folgendes ein.
(http.request.uri.path enthält "/ wp-admin /" und nicht http.request.uri.path enthält "/wp-admin/admin-ajax.php" und nicht http.request.uri.path enthält "/ wp-admin / theme-editor.php ")
4. Blockieren Sie No-Referer-Anfragen an Plugins
Die meisten WordPress-Sites werden durch unsichere Plugins gehackt. Der beste Ansatz ist natürlich, sie nicht erst zu installieren, sondern Sie können auch eine Firewall-Regel erstellen, die den direkten Zugriff auf / wp-content / plugins / blockiert.
Berechtigte Anfragen, die über Ihre Website eingehen, haben etwas in der Art von "http://yoursite.com/page" als HTTP-Referer und sollten zugelassen werden. Möglicherweise möchten Sie auch bekannte gute Bots (z. B. den Google-Crawler) zulassen, falls diese versuchen, etwas - z. B. ein Bild - in Ihrem Plugins-Ordner zu indizieren.
Erstellen Sie die folgende Regel:
- Feld: URI-Pfad
- Operator: enthält
- Wert: / wp-content / plugins /
[UND]
- Feld: Referer
- Operator: enthält nicht
- Wert: yoursite.com (Ersetzen Sie durch Ihre echte Domain)
[UND]
- Feld: Bekannte Bots
- Operator: gleich
- Wert: Aus
[Aktion: Blockieren]
Oder fügen Sie diesen Ausdruck einfach direkt ein (denken Sie daran, Ihre Site.com durch die tatsächliche Adresse zu ersetzen).
(http.request.uri.path enthält "/ wp-content / plugins /" und nicht http.referer enthält "yoursite.com" und nicht cf.client.bot)
5. Reduzieren Sie Spam, indem Sie direkte Anfragen an wp-comment-post.php blockieren
Ich bin ehrlich: Die Wirkung dieser Regel ist minimal, da Spam-Bots heutzutage so ausgefeilt sind, dass sie den Referrer fälschen. Dies blockiert nur Bots, die die Datei wp-comment-post.php direkt hämmern. Trotzdem wird der gleiche Tipp in WordPress Codex beschrieben (außer dass sie eine .htaccess-Regel anstelle von Cloudflare verwenden). Wenn es also gut genug für sie ist, ist es gut genug für mich.
Die Regel lautet wie folgt:
- Feld: URI-Pfad
- Operator: gleich
- Wert: /wp-comments-post.php
[UND]
- Feld: Anforderungsmethode
- Operator: gleich
- POST
[UND]
- Feld: Referer
- Operator: enthält nicht
- Wert: yoursite.com (Ersetzen Sie durch Ihre echte Domain)
[Aktion: Blockieren]
Und hier ist der Ausdruck, um Ihnen Zeit zu sparen.
(http.request.uri.path eq "/wp-comments-post.php" und http.request.method eq "POST" und nicht http.referer enthält "yoursite.com")
Ihre Website ist jetzt etwas sicherer!
Diese fünf Regeln sollten die häufigsten WordPress-Angriffe abdecken. Sie können sie jedoch jederzeit an Ihre Bedürfnisse anpassen und kombinieren.
Die meisten Angriffe, die Sie in Ihren Protokollen sehen, stammen von automatisierten Bots, die Websites nur dumm nach Schwachstellen durchsuchen. Sollte jedoch eine Person außerhalb Ihrer Whitelist-IPs versuchen, auf Ihren Administratorbereich zuzugreifen, wird sie mit einer solchen "Fehler 1020" -Seite begrüßt (Sie können) Bestätigen Sie dies, indem Sie über einen Proxy oder ein VPN darauf zugreifen.
Weiterführende Literatur
Wenn Sie auf Probleme stoßen oder mehr erfahren möchten, empfehlen wir Ihnen, die Wissensdatenbank von Cloudflare zu besuchen.
Dieser Artikel ist genau und nach bestem Wissen des Autors. Der Inhalt dient nur zu Informations- oder Unterhaltungszwecken und ersetzt nicht die persönliche Beratung oder professionelle Beratung in geschäftlichen, finanziellen, rechtlichen oder technischen Angelegenheiten.
Fragen & Antworten
Frage: Können wir alle oben genannten Anforderungen in einer Regel zusammenfassen?
Antworten: Sicher. Setzen Sie jede einzelne Regel in Klammern und verbinden Sie sie mit "oder" (wenn Sie blockieren möchten).
Frage: Informationen zur Regel zum Blockieren von No-Referer-Anforderungen an Plugins. Ich habe festgestellt, dass Ihre Anweisungen zum Erstellen der Regel den URI-Pfad "/ wp-content / plugins /" verwenden, der von Ihnen angegebene Ausdruck jedoch den URI-Pfad "/ plugins /" verwendet. Können Sie bitte bestätigen, welcher URI-Pfadwert korrekt ist?
Antworten: Netter Fang, ich werde sie passend bearbeiten. Was Ihre Frage betrifft, spielt es keine Rolle, welchen Sie verwenden, es sei denn, Sie haben Ihren Ordner / wp-content / umbenannt oder haben aus irgendeinem Grund einen anderen Nicht-Wordpress-Ordner mit dem Namen / plugins /.