WordPress Sicherheit erhöhen

WordPress ist ein wirklich tolles Blog- und CMS-System, das leider in Bezug auf Sicherheit nicht völlig ausgereift ist. Durch die Anpassung von Standardeinstellungen und mit Hilfe einiger Plugins kann man seine Webseite vor Angriffen jedoch sehr gut schützen. Einige wichtige Tipps zur Optimierung der WordPress Sicherheit habe ich für dich zusammengestellt.

1. WordPress Sicherheit durch Updates

WordPress stellt regelmäßig Updates zur Verfügung, Diese bringen nicht nur neue Features, sondern beheben auch die bekannt gewordenen Sicherheitslücken. Durch ein Update auf die aktuelleste Version verringerst Du also das Risiko von Angriffen.

wordpress sicherheit - updates

2. Nutze “Admin” nicht als Benutzername

Admin ist der erste Benutzername, mit dem ein Angreifer versuchen wird Deine Webseite zu hacken. Lösche am besten den Benutzer “Admin” und lege einen neuen Administrator an.

So gehts’s:

  • Logge Dich zuerst mit dem bestehenden Admin-Account ein.
  • Anschließend legst Du einen neuen Benutzer an. Natürlich musst Du ihm noch die Rolle “Administrator” zuweisen.
  • Jetzt kannst Du Dich mit Deinem neuen Admin-Account anmelden und den alten Admin-Benutzer löschen.

3. Starke Passwörter verwenden

Passwörter wie “12345” sind noch immer sehr verbreitet und für Hacker leicht zu erraten. Daher solltes Du starke Passwörter verwenden. Diese sollten mindestens 8 Stellen haben, Sonderzeichen (%, #,…) und Zahlen beinhalten.

starke passwörter

4. Login-Bereich umbenennen

Der WordPress-Adminbereich ist standardmäßig unter www.meineseite.de/wp-admin erreichbar. Um diesen Zugang zu schützen, kannst du Ihn einfach mit dem Plugin Rename wp-login.php umbenenn. So wird er dann beispielsweise unter www.meineseite.de/meine-anmeldung erreichbar sein.

5. Anzahl der Login-Versuche beschränken

WordPress bietet leider keine Möglichkeit, die Anzahl der Login-Versuche zu begrenzen. Um Brute-Force Attacken vorzubeugen, empfiehlt sich die Installation des Plugin Limit Login Attempts.

Dort kannst Du in den Einstellungen die Anzahl der Anmeldeversuche festlegen. Zusätzlich können auch IP-Adressen gesperrt werden. Wenn Du möchtest, kannst Du Dich auch per Email über fehlgeschlagene Login-Versuche informieren lassen.

login

6. WordPress Login-Bereich schützen

Die beste Methode den Login-Bereich abzusichern, ist ein serverseitiger Schutz. Dadurch wird die Anmeldeseite selbst durch Benutzername und Passwort geschützt. Nachteil: Du musst diesen Schutz über die .htaccess-Datei einrichten. Und Du musst Dir zusätzliche Login-Daten merken.

Dafür ist man aber vor Brute-Force-Attacken auf den Login-Bereich recht gut geschützt.
Wie Du den WP Login mit dieser Methode absichern kannst, habe ich in diesem Tutorial genau beschrieben.

Zusatz-Login per htaccess
Vorgeschalteter Login

7. Tabellen-Präfix ändern

Bei der Installation von WordPress werden alle Tabellen nach dem Muster “wp_” benannt. Dies kann man ganz einfach über die Konfigurations-Datei wp-config.php ändern.

Ersetze den Standard-Präfix durch einen neuen:

$table_prefix  = 'wp_';
$table_prefix  = 'y2rmd_';

8. Bearbeitung von Theme-Files über das Admin-Panel verbieten

Hat ein Hacker sich Zugang zum Admin-Panel verschafft, kann er über den Design- und Plugin-Editor problemlos Änderungen vornehmen. Und natürlich Malware installieren.
Diese Option kann man ganz einfach mit einer Code-Zeile in der Datei wp-config.php deaktivieren.

define('DISALLOW_FILE_EDIT',true);

9. Sicherheitsschlüssel ändern

Wenn sich ein Benutzer in WordPress einloggt, werden automatisch Cookies mit Benutzerinformationen generiert. Damit diese nicht manipuliert werden können, sollte man auf jeden Fall die Sicherheitsschlüssel in der Datei wp-config eintragen.

define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here');

Ersetze ‘put your unique phrase here’ durch einen zufällig generierten Sicherheitsschlüssel. Den kannst Du auf der Seite https://api.wordpress.org/secret-key/1.1/ erstellen lassen.

10. FTP Dateiberechtigungen überprüfen

Auf dem Webserver kannst Du für Dateien und Ordern bestimmte Rechte (lesen, schreiben, ausführen) festsetzen. Am besten weist Du den Ordnen 775  und den Dateien 644 zu.

11. Backup

Die WordPress-Datenbank und die Inhalte solltest Du in regelmäßigen Abständen sichern. Am einfachsten kannst Du das über Backup Plugins wie beispielsweise UpdraftPlus einrichten. Zusätzlich kannst Du auch die komplette Seite mit Duplicator klonen.

Wie wichtig regelmäßige Backups sind und wie man WordPress mit UpdraftPlus sichert, habe ich in der Anleitung WordPress Backup mit UpdraftPlus erstellen erklärt.

WordPress Backup Plugin UpdraftPlus

12. SSL nutzen

Stelle WordPress auf HTTPS um. Durch die SSL-Verschlüsselung wird die Datenübertragung abgesichert. Dadurch werden nicht nur Formulareingaben, sondern auch die Login-Daten zum Adminbereich verschlüsselt.

Weiterführende Informationen zum Thema WordPress Sicherheit:

Hardening WordPress

Wie hat Dir dieser Beitrag gefallen? Gar nichtNa jaOKGutSehr gut
(1 Stimmen, Ø: 5,00 von 5)

Dieser Beitrag hat 9 Kommentare

  1. User Avatar

    Hi, ich habe eine dringende Frage bezüglich htaccess:

    Die Login-URL meiner WordPress Seite soll nicht mehr über den Standard Login Bereich domain…/wp-admin aufrufbar sein.
    Im Moment ist mein Login Bereich bereits über einen htaccess Passwortschutz geschützt.

    Ich möchte kein Plugin für die Änderung einsetzen.
    Wie müsste der Code für die htaccess lauten um den Login Bereich in z.B. domain…/privat zu ändern?
    Der Standard Login Bereich domain…./wp-admin soll nicht mehr funktionieren.
    Der htaccess Passwortschutz soll vorhanden bleiben.

    Folgenden Code hatte ich im Web gefunden: RewriteRule ^admin$ http:// webseite. com/wp-login.php [NC,L]
    Wenn ich bei diesem Code admin durch privat ersetze, kann ich mich zwar über domain…../privat einloggen aber domain…/wp-admin ist nach wie vor zum einloggen vorhanden.

    Meine Webseite ist auf https umgestellt, müsste ich in dem Code https anstatt http eingeben?

    Vielen Dank:)

  2. User Avatar

    Hallo Sonia vielen Dank für Deine Rückantworten:)

    Könntest Du mir mitteilen, was Deine persönliche Meinung zu dem Einrichten der WordPress Webseite mit oder www. ist?(Also http://www.beispiel.com oder beispiel.com.)

    Danke!

    1. Webtimiser

      Hallo Paul,
      Du meinst aus SEO-Sicht? Dabei spielt es eigentlich keine Rolle. Wenn der Domainname sehr lange ist, würde ich das www weglassen. Ist für den Benutzer dann angenehmer.
      VG Sonia

  3. User Avatar

    Hallo Webtimiser Team,

    sehr guter Artikel!!
    Ist es möglich bei WordPress den Theme Namen zu verstecken, damit Theme Dectectoren das Theme nicht erkennen können und somit die Webseite als WordPress Webseite aufdecken?
    Und wie lässt sich am besten verdecken, das WordPress genutzt wird?

    Gruß Paul

    1. Webtimiser

      Hallo Paul,
      vielen Dank!
      Um das Theme zu verbergen müsste man den Theme-Ordern ummbenennen und den Eintrag in der Style.css. Bei einem gekauften Theme wird es aber dann Probleme geben.
      Dass die Seite mit WordPress läuft, kannst Du über eine kleine Anpassung in der functions.php verbergen:
      remove_action('wp_head', 'wp_generator');
      VG Sonia

      1. User Avatar

        Hallo Sonia, vielen Dank für Deine Antwort.
        Lässt sich dem dem Code:remove_action(‘wp_head’, ‘wp_generator’); auch die WordPress Version verbergen?
        Und ist es ratsam diesen Code in die function.php des Childtheme oder des Parenttheme einzutragen?

        Gibt es noch weitere Maßnahmen, welche man zur Absicherung der WordPress Webseite umsetzen kann?

        Viele Grüße Paul

        1. User Avatar

          Hallo Sonia hier ist nochmal Paul,

          mir ist gerade eingefallen, das ich noch nach einer Absicherung für XML-RPC fragen wollte.
          Wie ist das am besten umzusetzen?

          Vielen Dank !
          Viele Grüße Paul

        2. Webtimiser

          Hallo Paul,
          Anpassungen machst Du am besten in der functions.php des Child-Themes oder einem eigenen Plugin. Sonst wird alles bei einem Theme-Update überschrieben.
          Die WordPress-Version kannst Du so verbergen: remove_action('wp_head', 'wp_generator');
          Zur Deaktivierung von xmlrpc gibt es den Filter: add_filter('xmlrpc_enabled', '__return_false');
          Zusätzlich schreibe ich noch in die .htaccess:
          Order Deny,Allow
          Deny from all

          Darüber hinaus kann man natürlich noch einige weitere Security-Maßnahmen – 100% Sicherheit gibt es aber nicht.
          VG Sonia

  4. User Avatar

    Guter Artikel! Leider kümmern sich die wenigsten Blogger um die Absicherung von WP.

Schreibe einen Kommentar

Menü schließen