WPLake > Lernzentrum > WordPress absichern: 5 Essentials zum Schutz Ihrer Website
  • English
  • Español
  • Français
  • Italiano

WordPress absichern: 5 Essentials zum Schutz Ihrer Website

Schützen Sie Ihre Website, indem Sie die Login-URL ändern, die nicht autorisierte REST-API, das Durchsuchen von Verzeichnissen, den Zugriff auf .git-Ordner und xmlrpc.php deaktivieren.

Die wichtigsten Punkte auf einen Blick

  1. Theme- und Plugin-Überprüfung: Überprüfen Sie Themes und Plugins vor der Installation, um Sicherheitsrisiken vorzubeugen; laden Sie sie vorzugsweise aus dem offiziellen WordPress-Repository oder aus vertrauenswürdigen Quellen herunter.
  2. Ändern der Anmelde-URL und des Captcha: Schützen Sie WordPress vor Brute-Force-Angriffen, indem Sie die Anmelde-URL ändern und mit Plugins wie WPS Hide Login und hCaptcha ein Captcha auf der Anmeldeseite hinzufügen.
  3. Deaktivieren der REST-API für nicht autorisierte Benutzer: Verhindern Sie den unbefugten Zugriff auf Benutzernamen, indem Sie die REST-API für unbefugte Benutzer deaktivieren und gleichzeitig die Funktionalität für autorisierte Redakteure und Administratoren sicherstellen.
  4. Deaktivieren des Directory Browsing: Deaktivieren Sie das Durchsuchen von Verzeichnissen, um Hacker daran zu hindern, auf Dateistrukturen zuzugreifen und Schwachstellen in Plugins und Themes zu finden.
  5. Zugriff auf .git-Ordner verweigern: Schützen Sie den Quellcode Ihrer Website, indem Sie den Zugriff auf den .git-Ordner, der häufig von Entwicklern verwendet wird, über die Serverkonfiguration verweigern.
  6. Verweigerung des Zugriffs auf die Datei xmlrpc.php: Schützen Sie WordPress vor Brute-Force-Angriffen mit Passwörtern, indem Sie den Zugriff auf die Datei xmlrpc.php verweigern, die einen Einstiegspunkt für Angreifer darstellt.

Inhaltsübersicht

Einige Leute sind faul, wenn es um Sicherheit geht, und befolgen die grundlegenden Anweisungen nicht. Natürlich nur, solange ihre Website nicht gehackt wird. Andere werden verrückt und sperren alles, was möglich ist, was die Benutzererfahrung verschlechtert. Lassen Sie uns die goldene Mitte finden und WordPress vor den häufigsten Bedrohungen schützen, ohne dabei paranoid zu werden. Wenn Sie diese Tipps befolgen, ersparen Sie sich den Einsatz schwerer und teurer Sicherheits-Plugins.

Basics für Anfänger

Hier muss ich ein paar Worte über sehr grundlegende Dinge sagen, die mit der Sicherheit zu tun haben. Die nächsten Informationen sind nur für Anfänger, Sie können sie überspringen, wenn Sie sich in grundlegenden Sicherheitsfragen sicher fühlen.

So müssen Sie wissen, dass die meisten Hacks nicht durch eine Schwachstelle im Code, sondern durch grobe Fehler bei der Benutzung der Software entstehen. Lesen Sie Was muss ein guter WordPress-Entwickler wissen, um zu verstehen, was Sie lernen sollten, um WordPress richtig zu nutzen.

Passwörter

1. Verwenden Sie keine schwachen Passwörter

Jedes Passwort muss mindestens 16 zufällige Zeichen enthalten, einschließlich Sonderzeichen. Hacker haben Listen mit häufig verwendeten Phrasen und verwenden diese in Brute-Force-Angriffen. Wenn Ihr Kennwort keine zufällige Zeichenfolge ist, können sie sich leicht Zugang zu Ihrem Verwaltungsbereich verschaffen. Verwenden Sie niemals Namen oder Wörter in Ihrem Passwort.

2. Geben Sie Ihre Passwörter nicht an Dritte weiter

Auch mit Entwicklern. Wenn Sie eine Arbeit von ihnen erledigen lassen müssen, erstellen Sie für sie ein separates Konto. Und ändern Sie immer das Passwort für dieses Konto, nachdem sie ihre Aufgaben erledigt haben.

3. Passwörter an einem sicheren Ort aufbewahren

Auf Papier zu schreiben ist eine schlechte Idee. Auch das Speichern in Online-Diensten kann eine schlechte Idee sein. Der beste Fall ist die Verwendung einer Offline-App. Es gibt viele Programme, die eine sichere Speicherung von Passwörtern ermöglichen. Zum Beispiel verwendet unsere Agentur für die Aufbewahrung aller Anmeldedaten, einschließlich der Kunden, KeePassXC.

4. Geben Sie keine Passwörter über unsichere Kanäle weiter

Tun Sie es über sichere Kanäle oder ändern Sie das Passwort in kurzer Zeit nach der Weitergabe. Selbst wenn Sie ein Passwort mit Ihrem Kunden teilen müssen, bitten Sie ihn, das Passwort zu ändern, nachdem Sie es erhalten haben. Slack- oder Messenger-Kanäle sind für dieses Ziel nicht geeignet.

Ein sicherer Kanal bedeutet nicht offline. Es kann sich um verschiedene Dienste handeln, die einen einmaligen Link bereitstellen, oder sogar um einen E-Mail-Anbieter wie Proton, der passwortgeschützte E-Mails anbietet.

Ungeprüfte Themen und Plugins

Das ist der häufigste Fehler von Anfängern. Sie sehen, wie viele Möglichkeiten es gibt, eine Website anzupassen und fangen an, alle Plugins zu installieren und alle Themes auszuprobieren, die man finden kann. Normalerweise bevorzugen sie kostenlose oder nulled (gehackte). Die meisten dieser Plugins werden Viren oder Schwachstellen enthalten, das ist der Preis der Zugänglichkeit.

Wenn wir über kostenlose Plugins sprechen, können Sie Ihr WordPress sichern, indem Sie Plugins NUR aus dem official WordPress repository herunterladen. Oder über den eingebauten Eintrag Plugins in Ihrem WordPress-Verwaltungsmenü, der derselbe ist. Überprüfen Sie auch die Anzahl der aktiven Installationen, die größer als 100 sein muss. Und achten Sie auf das Datum der letzten Aktualisierung, die weniger als ein Jahr zurückliegen muss.

Wenn wir über kostenpflichtige Pro-Plugins sprechen, stellen Sie sicher, dass Sie auf einer offiziellen Website kaufen, und dass es unabhängige Bewertungen gibt, die die Qualität des Plugins bestätigen. Sicherlich nicht durch Worte auf ihrer Website, sondern durch andere Quellen.

Das Überprüfen von Dingen vor der Installation ist eine sehr wichtige Fähigkeit. Ein schlechtes Theme oder Plugin macht Ihre Website nicht nur unsicher, sondern bremst sie auch aus.

5 Profi-Tipps zur Sicherung von WordPress

1. Ändern Sie Ihre Login-Url und fügen Sie ein Captcha hinzu

Das Erzwingen von Anmeldedaten ist die häufigste Praxis von Hackern. Sie senden Hunderte von Anfragen an Ihre Website über die Anmeldeseite. Selbst wenn Sie ein sicheres Passwort haben, wird Ihre Website dadurch zusätzlich belastet. Außerdem können Sie als Entwickler nicht garantieren, dass der Eigentümer oder seine Redakteure keine schwachen Passwörter verwenden. Dieser Schritt ist ein zusätzlicher Schutz für Administratorkonten.

Um WordPress vor Brute Force zu schützen, verwenden wir das WPS Hide Login Plugin, um die Login-URL zu ändern. Das ist einfach zu bewerkstelligen, und außerdem ändert es nicht die Admin-Url für autorisierte Benutzer. Es sperrt also nur wp-admin und wp-login.php für unautorisierte Benutzer, Redakteure und Admins müssen eine neue URL besuchen, um sich einzuloggen, und können dann das normale wp-admin benutzen, um auf das Adminpanel zuzugreifen.

Sie können das hCaptcha- oder das Simple Google Captcha-Plugin verwenden, um ein Captcha auf der Anmeldeseite hinzuzufügen. Beide funktionieren gut mit dem obigen Plugin und fügen ein Captcha über Code-Hooks hinzu. Das heißt, sie funktionieren mit jeder benutzerdefinierten Anmelde-URL. Wir empfehlen die Verwendung des hCaptcha-Plugins, da der Dienst im Gegensatz zu Google Captcha die Privatsphäre der Nutzer respektiert.

Beide Plugins fügen den Captcha-Code hinzu, richten aber kein Dienstkonto für Sie ein. Sie müssen sich anmelden und Anmeldeinformationen von hCaptcha.com oder Google ReCaptcha erhalten, je nach gewähltem Plugin.

2. REST API für nicht autorisierte Benutzer deaktivieren

Die REST-API ermöglicht es, ohne Probleme eine Liste von Benutzernamen zu erhalten. Hacker brauchen immer noch ein Passwort, aber hey, machen wir ihnen das Leben noch schwerer. Außerdem können sogar die Namen (Benutzernamen) der Redakteure Ihrer Website ein Teil der privaten Informationen sein, was ist das Ziel, sie mit der ganzen Welt zu teilen? Die REST-API wird in WordPress zum Beispiel vom Gutenberg-Editor (und verschiedenen Plugins) verwendet, so dass eine vollständige Deaktivierung die Arbeit einer WordPress-Website unterbrechen würde.

Die goldene Mitte ist die Deaktivierung der REST-API für nicht autorisierte Benutzer. Es wird keine Probleme für autorisierte Redakteure und Admins schaffen, aber WordPress gegen das Durchsickern von Benutzernamen an Drittparteien absichern.

Wir verwenden das Disable REST API Plugin für dieses Ziel, und standardmäßig ist es so konfiguriert, dass es nur nicht autorisierte Benutzer deaktiviert, so dass Sie das Plugin einfach aktivieren können und keine zusätzlichen Schritte unternehmen müssen.

3. Verzeichnisdurchsuchung deaktivieren

Directory Browsing ist eine unsichere Funktion, die es erlaubt, eine Liste von Dateien in einem Anfrageordner über den Browser zu sehen, falls die Datei 'index.php' fehlt. Um Schwachstellen in Ihren Plugins und Themes zu finden, müssen Hacker deren Dateistruktur kennen.

WordPress hat den index.php Stub für alle grundlegenden Ordner, wie /wp-content/, /wp-content/plugins/ und /wp-content/themes/, kann aber nicht garantieren, dass jeder Plugin- oder Theme-Entwickler das Gleiche tut. Um dieses Ziel zu erreichen, müssen Sie sicherstellen, dass Ihr Webserver das Durchsuchen von Verzeichnissen nicht zulässt.

Versuchen Sie, YOUR_DOMAIN/wp-includes/ in Ihrem Browser aufzurufen. Wenn Sie die Meldung "Nicht gefunden" sehen, bedeutet dies, dass Ihr Server dies bereits nicht zulässt; Sie können diesen Punkt überspringen. Falls Sie eine Liste von Dateien sehen, müssen Sie zusätzliche Maßnahmen ergreifen, um das Durchsuchen von Verzeichnissen zu deaktivieren.

Zu diesem Zweck müssen wir die .htaccess-Datei ändern. Ich empfehle nicht, diese Datei per FTP zu bearbeiten, wie viele andere. Das liegt daran, dass diese Datei von vielen Plugins regelmäßig neu erstellt wird. Z.B. alle Cache-Plugins oder ähnliches. Das bedeutet, dass Ihre Änderung höchstwahrscheinlich nach einiger Zeit verloren geht. Wir können unsere Änderung mit folgendem Codeschnipsel, den Sie in Ihre functions.php einfügen können, dauerhaft einfügen:

add_filter('mod_rewrite_rules', function ($rules) {
    return $rules . "\n" .
        "#Disable directory browsing\n" .
        "Options -Indexes\n";
});

Besuche dann die Seite Einstellungen-Permalinks in deinem Admin-Panel, sie wird WordPress zwingen, die .htaccess-Datei sofort neu zu erstellen. Danach kannst du YOUR_DOMAIN/wp-includes/ erneut besuchen, um sicherzustellen, dass jetzt die 404-Meldung angezeigt wird (was gut ist).

4. den Zugriff auf den Git-Ordner verweigern

Überspringen Sie diesen Schritt, wenn Sie ein einfaches Hosting verwenden oder die Website manuell, ohne GIT, hochgeladen haben.

Viele Entwickler verwenden GIT, das ein wunderbares Werkzeug ist. Die Verwendung von GIT in der Produktion ist auch eine gute Idee, aber in diesem Fall müssen Sie den Zugriff auf den .git Ordner über einen Browser deaktivieren. Andernfalls können sie mit Hilfe der Datei .git/HEAD den gesamten Baum der Übertragungen neu erstellen und den Quellcode Ihrer Website abrufen.

Für dieses Ziel müssen Sie alle /.git/* Anfragen sperren. Sie können sich an Ihren Systemadministrator oder Ihren Hosting-Provider wenden. Falls Sie über ausreichende Kenntnisse verfügen und Ihr Server NGINX verwendet, können Sie dies durch Hinzufügen des folgenden Codes erreichen (fügen Sie ihn in die NGINX-Konfigurationsdatei Ihrer Website ein)

# deny access to all special files and folders, like .git, .htaccess
location ~ /\. {
  deny all;
}

Vergessen Sie nicht, NGINX danach neu zu starten.

5. Zugriff auf die Datei xmlrpc.php verweigern

XML-RPC ist eine alte Funktion von WordPress. Die meisten Websites nutzen es nicht, und es existiert nur aus Kompatibilitätsgründen mit alter Software. Diese Funktion ermöglicht die direkte Interaktion mit Ihrer Website, ohne dass sie in einem Browser geöffnet werden muss. Das Schlimme daran ist, dass Hacker mit dieser Funktion Passwörter ausspionieren können, denn selbst wenn Sie die Login-URL geändert und ein Captcha aus den obigen Schritten hinzugefügt haben, bietet diese Funktion immer noch die Möglichkeit, Passwörter zu überprüfen.

Um den Zugriff auf die Datei zu verweigern, können Sie sich an Ihren Systemadministrator oder Hosting-Anbieter wenden. Wenn Sie über ausreichende Kenntnisse verfügen, finden Sie weiter unten Schnipsel, die dies ermöglichen:

NGINX

Wenn Ihr Server NGINX verwendet, können Sie ihn durch Hinzufügen des folgenden Codes erreichen (fügen Sie ihn in die NGINX-Konfigurationsdatei Ihrer Website ein):

# wordpress xmlrpc
location /xmlrpc.php {
  deny all;
}

Vergessen Sie nicht, NGINX danach neu zu starten.

DirectAdmin

Wenn Ihr Server über das DirectAdmin-Kontrollfeld verfügt, können Sie eine SSH-Verbindung zu Ihrem Server herstellen und das Ziel erreichen, indem Sie die folgenden Befehle ausführen;

// 1. create the custom folder in the directadmin config
cd /usr/local/directadmin/data/templates
mkdir custom/; cd custom

// 2. create the necessary files in the folder and setup rights
touch nginx_server.conf.CUSTOM.4.post nginx_server_secure.conf.CUSTOM.4.post 
touch nginx_server_secure_sub.conf.CUSTOM.4.post nginx_server_sub.conf.CUSTOM.4.post
chmod 644 nginx_server.conf.CUSTOM.4.post nginx_server_secure.conf.CUSTOM.4.post
chmod 644 nginx_server_secure_sub.conf.CUSTOM.4.post nginx_server_sub.conf.CUSTOM.4.post

// 3. enter the edit mode for the new (created) config
nano nginx_server.conf.CUSTOM.4.post

// and and the content below to the file
// this is the rule that will lock the xmlrcp file
location =/xmlrpc.php 
{
    deny all;
}

// 4. copy the main config to the others
cp -p nginx_server.conf.CUSTOM.4.post nginx_server_secure.conf.CUSTOM.4.post
cp -p nginx_server_secure.conf.CUSTOM.4.post nginx_server_secure_sub.conf.CUSTOM.4.post
cp -p nginx_server_secure_sub.conf.CUSTOM.4.post nginx_server_sub.conf.CUSTOM.4.post

// 5. make the build
cd /usr/local/directadmin/custombuild/
./build rewrite_confs

Schlussfolgerungen

Wir haben uns die 5 wichtigsten Schritte angesehen, um WordPress vor Hackern zu schützen. Die Schritte 3 bis 5 können von einem Systemadministrator (oder einem Hosting-Provider) nur einmal durchgeführt werden und gelten für alle Websites auf Ihrem Konto. Wenn Sie diese Schritte durchgeführt haben, können Sie sicher sein, dass Sie ein sehr gutes Schutzniveau haben, und Sie müssen keine Sicherheits-Plugins kaufen, die oft schwerfällig sind und eine Website verlangsamen.

War dieser Artikel hilfreich? Vielen Dank für Ihr Feedback!

Völlig nutzlos

Geringfügig hilfreich

Sehr hilfreich

FAQ-Modus

/

Lernmodus

  1. Wie kann ich Passwörter sicher mit Drittentwicklern teilen?

    Erstellen Sie separate Konten für Entwickler und ändern Sie das Passwort nach Abschluss der Aufgaben, um die Sicherheit zu gewährleisten.

  2. Warum ist es wichtig, Themes und Plugins vor der Installation zu überprüfen?

    Durch die Überprüfung von Themes und Plugins wird sichergestellt, dass sie aus vertrauenswürdigen Quellen stammen, was das Risiko von Sicherheitslücken und Verstößen verringert.

  3. Welche Schritte kann ich unternehmen, um Brute-Force-Angriffe auf meine WordPress-Anmeldeseite zu verhindern?

    Das Ändern der Anmelde-URL und das Hinzufügen eines Captcha zur Anmeldeseite mit Plugins wie WPS Hide Login und hCaptcha können Brute-Force-Angriffe verhindern.

  4. Wie kann ich sensible Daten wie Benutzernamen vor dem Zugriff durch nicht autorisierte Benutzer schützen?

    Die Deaktivierung der REST-API für nicht autorisierte Benutzer verhindert den Zugriff auf Benutzernamen, während die Funktionalität für autorisierte Benutzer erhalten bleibt.

  5. Warum ist es wichtig, das Durchsuchen von Verzeichnissen auf meiner WordPress-Website zu deaktivieren?

    Die Deaktivierung des Directory Browsing verhindert, dass Hacker auf Dateistrukturen zugreifen und Schwachstellen in Plugins und Themes finden können.

  6. Welche Maßnahmen kann ich ergreifen, um den Quellcode meiner Website zu schützen, wenn ich GIT in der Produktion verwende?

    Durch die Verweigerung des Zugriffs auf den .git-Ordner über die Serverkonfiguration wird die Sicherheit des Quellcodes gewährleistet.

  7. Wie kann ich die Sicherheit von WordPress weiter erhöhen, indem ich den Zugriff auf bestimmte Dateien verweigere?

    Die Verweigerung des Zugriffs auf Dateien wie xmlrpc.php verhindert potenzielle Einstiegspunkte für Angreifer und erhöht so die allgemeine Sicherheit der Website.

Kurs-Navigation: WordPress-Kenntnisse

Inhaltliche Links (13)

Über den Autor

Maxim Akimov

Certified WordPress expert from Ukraine with over 8 years of experience. Advocate of the BEM methodology and the overall modular approach. Loves sporting activities and enjoys going to the gym and regularly plays table tennis.

0 Kommentare

    Hinterlassen Sie einen Kommentar

    Antwort an 

    Bitte seien Sie rücksichtsvoll, wenn Sie einen Kommentar hinterlassen.

    Nicht öffentlich gezeigt

    Got it