WordPress absichern 2019 – Webserver absichern Teil 1

WordPress vor Angriffen absichern

Heute möchte ich mal keinen Beitrag über Netzwerksicherheit, UTM, etc. schreiben, sondern über das Absichern einer WordPress-Installation und den generellen Schutz eines Webservers informieren. 

Ihr werdet in diesem Beitrag erfahren, wie ihr WordPress absichern könnt, ob der Einsatz von WordPress Security Plugins sinnvoll ist, wie ihr euren Webserver absichern könnt und somit eure WordPress Installation vor Angriffe schützt.

Auch für diesen Blog wird das Content-Management-System WordPress eingesetzt. Dieses CMS ist einfach zu bedienen und genau für diesen Zweck entwickelt worden, daher bin ich vor langer Zeit auch von Joomla zu WordPress gewechselt. 

Wer diesen Blog kennt oder vielleicht später andere Beiträge auf dieser Seite liest, kann erahnen, dass ich mich natürlich auch in diesem Segment über die Sicherheitsaspekte von WordPress ausführlich informiert habe. 

Aufgrund das dieses Thema sehr umfassend ist, werde ich diesen Beitrag auf mehrere Unterbeiträge aufteilen.

01

WordPress absichern –
Manuelle Maßnahmen Teil 1

In diesem Teil geht es um manuelle Maßnahmen, um deine WordPress Installation vor Angriffen zu schützen.

02

Manuelle Maßnahmen Teil 2

Im zweiten Teil werde wir ebenfalls manuelle Maßnahmen nutzen, um deinen Webserver vor Angriffen zu härten / abzusichern.

03

WordPress Plugins

Vorstellung von WordPress Plugins die dir das Leben erleichtern und Plugins von denen du lieber die Finger lassen solltest.

WordPress absichern – Manuelle Maßnahmen

…zeige ich euch, wie ihr manuelle Maßnahmen ergreifen könnt, um eure WordPress Installation vor unbefugte Veränderungen zu schützen. Dies Maßnahmen erfordern in manchen Situationen ein gewisses Wissen über den Aufbau einer WordPress Installation, Umgang mit FTP-Clients, Verstehen von PHP-Code und so weiter. Dieses soll bedeuten, dass diese Art der Absicherung nicht für Laien gedacht ist.

WordPress-Plugins die dir Helfen können…

…stelle ich euch einige WordPress-Plugins vor, die diese Maßnahmen zur Absicherung eurer WordPress-Installation für euch übernehmen können.

Daher denke ich, dass hier für jeden etwas dabei sein sollte…

Bitte beachten!!!
Wie ihr ja alle wisst, gibt es leider keine 100 prozentige Sicherheit. Daher beachtet bitte, dass alle hier gezeigten Tipps und Tricks, von mir nach besten Gewissen veröffentlicht wurden, ich aber natürlich keine Garantie dafür gebe, dass eure Seit damit zu 100 Prozent vor Angriffe geschützt ist. Das Karussell von Angriff und Abwehr dieser, dreht sich immer weiter und bleibt damit ein Katz und Maus Spiel!

WordPress absichern – Allgemeine manuelle Tipps

Es gibt eine Menge an manuelle Möglichkeiten, wie ihr euren Webserver und eure WordPress Installation gegen Angriffe absichern könnt. Daher geht einfach Schritt für Schritt die unteren Tipps durch und härtet so eure WordPress Instanz.

Regelmäßige Backups erstellen 

Unverzichtbar, nicht nur bei WordPress, ist das regelmäßige anlegen von Datensicherungen (Backups). Ihr könnt natürlich auch das Erstellen von Backups mithilfe eines Backup-Plugins automatisieren lassen. Ein WordPress-Backup-Plugin stelle ich in diesem Artikel vor.

Man kann es nicht oft genug vorbeten, dass eine Datensicherung wichtiger Dateien (egal ob Webserver oder Computer Daheim) unverzichtbar ist und an erster Stelle bei einem IT-Sicherheitsplan stehen muss. Allzu oft erlebe ich es immer wieder, dass es keine oder keine aktuellen Backups von wichtigen Dateien gibt und diese dann nicht wiederhergestellt werden können. Als Stichwort nenne ich nur mal den Angriff per Ransomware. 

Sichere Passwörter für WordPress und Server 

Immer wieder unterschätzt, obwohl überall propagiert, ist die Verwendung von sicheren Passwörtern. Was nützt einem die beste Firewall oder Absicherung des Servers, wenn alle Sicherungsmaßnahmen mit unsicheren Passwörtern abgesichert werden.

Daher nutzt bitte, bitte immer sichere Passwörter!

Wie sichere Passwörter erstellt werden und wie man sich diese merken beziehungsweise aufbewahren kann, habe ich schon einmal in diesem Blog niedergeschrieben.

Beiträge zu diesem Thema:

Was macht ein sicheres Passwort aus?

Passwort Manager Test 2019

WordPress-Login mit Zwei-Stufen-Authentifizierung ausstatten 

Die Nutzung einer zweiten Authentfikationsstufe (2FA-Authentifizierung) ist eine weitere Möglichkeit das Login-Verfahren bei der Anmeldung zu seiner WordPress Instanz abzusichern und sollte auf jeden Fall eingesetzt werden. Für diese Art der Authentifikation gibt es mehrere Verfahren. Unterschieden werden bei der 2-FA Authentifizierung drei Verfahren:

Besitz: 

Das können zum Beispiel eine Smartcard, ein Sicherheitstoken in Form eines USB-Key (z.B. YubiKey), TAN-Liste und ähnliches sein 

Wissen:

Hier werden zum Beispiel ein zusätzlicher PIN benötigt.

Sein: 

Bei dieser Methode benötigt man einen Fingerabdruck, Irisscan, Venenscan oder ähnliches.

Alle haben gemein, dass zur Eingabe des Benutzername und Passwort zusätzlich noch einer der oben genannten zweiten Authentifizierung von Nöten ist, um sich erfolgreich anmelden zu können. 

Google Authenticator Plugin

Ein freies Plugin um den Google Authenticator zu nutzen findet ihr hier:

Plugin Google Authenticator herunterladen

WordPress via TLS verschlüsseln 

Absolut wichtig ist es, dass eure Webpräsenz via TLS (früher SSL) komplett verschlüsselt wird. Hier ist es wichtig, dass alle Anfragen (Login, Anhänge, etc.) über TLS verschlüsselt werden. So dass keine Daten unverschlüsselt zwischen Client und Server übertragen werden.  

WordPress SSL-Zertifikat

Warum ihr euren Blog mit einem SSL-Zertifikat absichern solltet?! Die Antwort erfahrt ihr in diesem Artikel „WordPress SSL-Zertifikat“.

Zur Verschlüsselung eurer WordPress Installation braucht ihr natürlich ein Sicherheitszertifikat einer öffentlichen Zertifizierungsstelle, ansonsten gibt es die Sicherheitshinweise in eurem Browser. Wenn möglich nutzt hier ein Zertifikat von Let´s Encrypt. Viele Webhoster bieten das heute an. Die Zertifikate sind hier kostenfrei. 

Nun müsst ihr noch dafür sorgen, dass jeglicher Anfragen via TLS verschlüsselt kommuniziert wird. Dies macht ihr dadurch, dass ihr in der wp-config.php die folgende Änderung vornimmt: 

define('FORCE_SSL_ADMIN', true); 

Zugriffsrechte der WordPress Ordner und Dateien auf dem Server setzen

Sehr wichtig ist unter anderem das richtige Setzen der Berechtigungen auf die Dateien und Ordner bei eurer WordPress Installation. Generell müssen hier die folgenden Berechtigungen gesetzt werden:

Ordner (inklusive Unterordner): 755

Dateien: 644

Es gibt mehrere Möglichkeiten, wie ihr diese Berechtigungen setzen könnt. Die einzelnen Möglichkeiten sind wie folgt:

Berechtigungen setzen via FTP (sFTP):

Um die Zugriffsrechte via ftp zu setzen, meldet euch mit euren Zugangsdaten im Webportal eures Hosters an und nehmt die Änderungen der Rechte mit dem Dateiexplorer (WebFTP) vor. Noch besser geht das Ganze via FTP-Client (FileZilla, WinSCP, Cyberduck, usw.). Hierfür müsst ihr dann eure FTP-Zugangsdaten im FTP-Client hinterlegen und dann eine sFTP-Verbindung (verschlüsselte FTP-Verbindung) zu euren Webserver herstellen.

Berechtigungen setzen via Shell:

Solltet euch der Zugang zu eurem Webserver via Shell möglich sein, dann ist die Rechteanpassung mit ein paar Zeilen erledigt. Wechselt hierzu nach erfolgreicher Anmeldung auf eurem Server in das Verzeichnis, in dem euer WordPress-Verzeichnis liegt und gibt hier die folgenden Befehle in die Kommandozeile ein.

Der Befehl, um in das Verzeichnis zu wechseln:

cd /var/www/deineWordPressSeite

Für /var/www/WordPressSeite müsst ihr natürlich eurem eigenen Pfad zum WordPress Verzeichnis eurer Seite einsetzen.

Die Befehle, um die Zugriffsrechte zu vergeben:

chown www-data:www-data -R * (ggf. den User anstatt www-data eintragen, mit dem die WordPress Installation angelegt wurde.)
find . -type d -exec chmod 755 {} \;  
find . -type f -exec chmod 644 {} \;

Zum Abschluss sollte der Zugriffsschutz für die Datei wp-config.php noch weiter nach unten gesetzt werden. Hierzu gibt ihr den folgenden Befehl ein:

wp-config.php chmod 440

WordPress-Standard-Account “Admin” ändern 

Sehr wichtig ist es, den Standard-Admin-Account “admin” auszutauschen. Dieses könnt ihr ganz einfach im Backend euer WordPress-Installation vornehmen. Zunächst meldet ihr euch im Backend als Admin an und legt ein neues Administratoren-Konto an, am besten mit einem Phantasienamen (also keinen Namen der im Wörterbuch vorkommt). Des Weiteren legt ihr noch ein Konto mit der Benutzerrolle „Autor“ an. Diesen User brauchen wir dafür, dass veröffentlichte Beiträge usw. vom Benutzer admin, auf das neue Autoren-Konto verschoben werden kann.

Danach könnt ihr das alte Admin-Konto „admin“ löschen. 

Einsatz von WordPress Plugins reduzieren 

Es gibt eine unzählige Anzahl an Plugins für WordPress, die nützlichen oder auch nicht so nützlichen Funktionen mitbringen.  

Jedes neue Plugin bedeutet natürlich auch zusätzlichen Code. Je nach den Fähigkeiten mancher Entwickler, kann mit schlechtem Code sich ein riesen Scheunentor in deiner Installation öffnen und ist somit für viele Angreifer ein nettes Geschenk! 

Daher ganz klar mein Rat an dich,
setze immer nur die allernötigsten Plugins ein und achte vor allem darauf, dass diese Plugins auch kontinuierlich aktualisiert werden!

WordPress und Plugins aktuell halten (Updates) 

Man kann es ja nie oft genug schreiben! Bitte spielt regelmäßig angebotene Updates für die von euch genutzten Plugins ein und dies gilt natürlich selbstklärend auch für angebotene Updates für eure WordPress Installation. Eine automatische Aktualisierung der WordPress Instanz und der installierten Plugins könnt ihr durch das Anlegen der folgenden Anweisungen in der „functions.php“ aktivieren. 

Automatisches Update von WordPress

add_filter( 'auto_update_core', '__return_true' );

Automatisches Ubdate von installierten Plugins

add_filter( 'auto_update_plugin', '__return_true' );

Automatisches Update von WordPress-Themes

add_filter( 'auto_update_theme', '__return_true' );

Automatisches Update von WordPress-Übersetzungen

Die Übersetzungsdateien für WordPress sowie Plugins brauchen nicht seperat in der functions.php aktiviert werden, da diese automatisch bei der Akualisierung von WordPress oder Plugins mitaktualisiert werden.

WordPress-Dateien mit .htaccess absichern

Eine weitere Schutzmaßnahme, um deine WordPress-Instanz abzusichern, ist der Dateischutz von der wp-config.php per .htaccess. In dieser Datei ist unter anderem das Passwort für die von WordPress genutzte Datenbank im Klartext hinterlegt. 

Die Schutzmaßnahme per .htaccess ist meines Erachtens die sicherste Lösung um einen Zugriff auf die wp-config.php zu verhindern. 

Mit dem folgenden Script könnt ihr den Zugriff auf folgende Dateien sperren: 

  • wp-config.php
  • Auf alle txt-Dateien
  • liesmich und readme-Datei
  • robot.txt
# Ab Apache 2.4
# Disallow access to important files
<FilesMatch "(^\.|wp-config\.php|(?<!robots)\.txt|(liesmich|readme)\.*)">
   Require all denied
</FilesMatch>

Offene Fragen?!

Solltet ihr noch Fragen haben oder ihr vermisst hier etwas, dann nutzt einfach die Kommentar-Funktion oder schreibt mir eine Mail!

Im nächsten Teil folgt…

Im zweiten Teil des Themas „WordPress absichern“ wird es um das Härten / Absichern eures Webservers gehen. Dieser Teil ist schon in Arbeit und wird bald folgen…
Über eine Bewertung würde ich mich freuen!

Wordpress absichern – WordPress Security Plugin

Jede Unterstützung ist Willkommen…

Patreon Spendenbild_250_114_transparent

 

Gerne würde ich euch noch mehr kostenfreie und vor allem werbefreie Inhalte hier sowie auf anderen Kanälen bereitstellen, doch ist der Aufwand für die Erstellung dieser Inhalte schon sehr zeitintensiv und vor allem langsam auch sehr kostenintensiv geworden (Kosten für Hosting, Equipment, Software und Arbeitszeit) und daher wird euch hier auf diesem Blog momentan noch Werbung angezeigt.

Daher möchte ich euch darum bitten, mich vielleicht durch eine kleine Spende zu Unterstützen.

Vielen Dank und lieben Gruß

Marcel

Hi mein Name ist Marcel und ich bin der Herausgeber von diesem Blog ‚SecureBits‘. Ich selbst bin schon ewig mit der IT verbunden und interessiere mich hauptsächlich für die Themen IT-Sicherheit, Programmierung und Gesellschaft und betreibe diesen Blog aus Leidenschaft. Gerne setze ich mich mit meinen Beiträgen für eine sichere IT-Landschaft ein, um so das Recht auf Privatsphäre auch mit kleinen Mitteln zu schützen. Freue mich immer über Kommentare von euch und wenn es mir möglich ist, helfe ich gerne und kostenlos (im privaten Bereich, ansonsten bitte mir eine Anfrage schicken) weiter. Meine Idee ist es, Interessierten der Informationstechnik, einfache Schritt- für Schritt-Anleitungen hier im Blog sowie auf meine noch jungen YouTube-Kanal zur Verfügung zu stellen, damit ihr diese Anleitungen für eure Projekte nutzen könnt. Viel Spaß beim Lesen. Gruß Marcel

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert