WordPress mit Zwei-Faktor-Authentifizierung schützen

Die Zwei-Faktor-Authentifizierung (2FA) ist für WordPress eine relativ einfache Möglichkeit, um einen unerlaubten Zugriff auf Benutzer-Konten zu erschweren. Es existieren verschiedene  Varianten dieses zusätzlichen Schutzes, die ich in diesem Beitrag vorstellen und vergleichen möchte.

Warum sollte ich WordPress vor Hackern schützen!

Immer mehr Websites verwenden WordPress. Damit wird diese Plattform für Hackerangriffe immer attraktiver. Der Code von WordPress ist offen.  Schwachstellen und Sicherheitslücken sind mit entsprechendem Wissen leicht gefunden. Diese nutzen Hacker, um in das System von WordPress einzudringen. Ihr Ziel: Sie wollen in den Besitz von Benutzernamen und Passwörtern kommen! Damit das nicht so einfach ist, sollten Sie die Benutzer-Konten zusätzlich absichern.

Was ist eine Zwei-Faktor-Authentifizierung?

Die Zwei-Faktor-Authentifizierung lässt sich am besten mit einem Bild erklären. Stellen Sie sich vor WordPress wäre ein Haus. Dann sind die Benutzer-Konten Türen, durch die Sie ins Haus gelangen. Sie öffnen die Tür, indem Sie den Benutzernamen und das Passwort eingeben.  Der Fachbegriff für diesen Anmeldevorgang ist Authentifizierung.

Wenn sie nun ihr WordPress-Haus zusätzlich schützen wollen, können Sie die Türen durch ein zweites Schloss sichern. Das wäre dann der zweite Faktor – also wie ein zweiter Schlüssel! Das Betreten des Systems ist dann nur möglich, wenn jemand im Besitz von beiden Schlüsseln ist.

Welche 2FA-Verfahren gibt es?

Grundsätzlich gibt es verschiedene Verfahren für die Zwei-Faktor-Authentifizierung. Ich beschränke mich hier auf die Möglichkeiten, die WordPress bietet.

Folgende Verfahren stehen als zweiter Faktor für den Schutz der WordPress-Konten zur Verfügung:

  • Sie erhalten einen Authentifizierungscode an eine E-Mail Adresse.
  • Ein Programm (App) auf Ihrem Smartphone generiert ein zeitlich begrenztes Einmalpasswort (z.B. Authy, Google Authenticator etc.)
  • Sie verwenden ein Hardware-Token (U2F)  – z.B. ein USB-Gerät. Zugang zum System ist erst nach Bestätigung – z.B. Knopfdruck – möglich.

Alle Verfahren erfordern ein zusätzliches Gerät oder zumindest ein Email-Konto. Ein Zugang zum Konto ist ohne Gerät nicht möglich. Daher gibt es auch die Möglichkeit, sogenannte Backup-Verifizierungs-Codes zu verwenden. Das ist am besten vergleichbar mit einer TAN-Liste, wie sie im Online-Banking lange Zeit verwendet wurde. Diese Liste mit Einmalpasswörtern kommt im Notfall zum Einsatz.

Welches 2FA-Verfahren ist sicher?

Das sicherste Verfahren ist aktuell (Stand: Februar 2019) der Hardware-Token (U2F). Der Standard hierfür wurde von Google in Zusammenarbeit mit dem Hardware-Hersteller Yubico entwickelt. Die nichtkommerzielle FIDO-Allianz soll Offenheit des Standards garantieren. Sie können einen Hardware-Token für die Registrierung bei mehreren Systemen verwenden. Voraussetzung dafür ist, dass diese den U2F-Standard auch unterstützen.

Hier erfahren Sie, wer welche Verfahren der  Zwei-Faktor-Authentifizierung unterstützt!

Die Zwei-Faktor-Authentifizierung in WordPress einrichten

Voraussetzungen:

  • WordPress-Plugin für die Einrichtung der 2F-Authentifizierung

wahlweise:

  • Email-Konto
  • Smartphone (Google Android / Apple IOS) und 2FA-App (z.B. Authy, Google Authenticator)
  • Hardware-Token (z.B. yubikey), verschlüsselte Website (SSL)  und Browser Chrome / Firefox

–> Achtung: nicht alle Browser unterstützen U2F!

Installation (U2F):

Im WordPress Codex befindet sich eine Auswahl von verfügbaren Plugins. Ich habe mich für das Plugin Two-Factor entschieden. Es unterstützt alle beschriebenen Verfahren. Leider ist ein Plugin gleichzeitig auch das grösste Risiko. Es gab bereits Sicherheitslücken in 2FA-Plugins. Daher ist es um so wichtiger, diese (wie alle anderen Plugins auch!) immer aktuell zu halten. Und der Support des Plugins muss garantiert sein.

Ich empfehle zwei Hardware-Schlüssel zu kaufen. So sind Sie bei Verlust nicht ausgesperrt!

  1. Installieren Sie ein Plugin für die Zwei-Faktor-Authentifizierung.
  2. Verbinden Sie Ihren Hardware-Token mit Ihrem Rechner.
  3. Rufen Sie die Benutzer-Seite und wählen Sie bearbeiten für das gewünschte Benutzerkonto.
  4. Klicken Sie am Seitenende auf Neuen Key registrieren.
  5. Damit die Hardware registriert werden kann, müssen Sie jetzt den Vorgang mit Klick am Gerät bestätigen.
  6. Ein neues Gerät erscheint in der Liste und kann mit einen eigenen Namen versehen werden.
  7. Wiederholen Sie den Vorgang für den zweiten Hardware-Token.
  8. Wählen Sie FIDO Universal 2nd Factor (2UF) aus.
  9. Speichern Sie den Benutzer über Profil aktualisieren. Fertig!
Zwei-Faktor-Authentifizierung | Verfahren in WordPress
Zwei-Faktor-Authentifizierung | Verfahren in WordPress

Anmeldung:

  1. Melden Sie sich jetzt mit Benutzernamen und Passwort für Ihre Website an.
  2. Verbinden Sie Ihren Hardware-Token mit Ihrem Rechner.
  3. Über ein Klick am Gerät bestätigen Sie den Vorgang. Erst dann erscheint die Verwaltungsebene (Backend) von WordPress.

Sie haben noch Fragen? Gerne unterstütze ich Sie bei der Absicherung Ihrer Website! Kontaktieren Sie mich für eine kostenlose Beratung!  

Website und Online-Shop mit SSL verschlüsseln

Die Website mit SSL zu verschlüsseln ist seit Januar 2017 aus mehreren Gründen wichtiger geworden. Einserseits spielt das Thema Sicherheit im Netz für Anbieter und Nutzer von Internetdiensten eine immer größere Rolle. Gleichzeitig bringt eine verschlüsselten Website einige zusätzliche positive Nebeneffekte.

Vorteile von verschlüsselten Websites:

Zuerst möchte ich kurz auf die Vorteile einer verschlüsselten Website hinweisen. Zur Sicherheit im Netz können alle beitragen. Aus meiner Erfahrung steht dem allerdings manchmal die eigene Bequemlichkeit im Weg. Die folgenden Vorteile sollen Sie also motivieren, die notwendigen Schritte zu einer verschlüsselten Website einzuleiten:

  • sichere Kommunikation und Datenschutz – persönliche Daten der Nutzer schützen
  • Vertrauen und Kundenbindung – Nutzer fühlen sich sicherer und vertrauen Ihrem Angebot
  • verbessertes Ranking in Suchmaschinen – HTTPS beeinflusst Googles Ranking-Faktor positiv
  • Performance und Geschwindigkeit – eine verschlüsselte Website kann den neuen schnelleren HTTP/2-Standard verwenden

Not-Secure-Hinweis im Browser

Seit Anfang des Jahres signalisiert der Browser Chrome und auch andere moderne Browser-Alternativen den Besuchern einer Website, wenn diese nicht mit einem SSL-Zertifikat verschlüsselt ist. Besucher einer unverschlüsselten Website erhalten eine Nachricht, dass die Website evtl. nicht sicher ist.

Diese Nachrichten können Verunsicherung bei den Besuchern Ihrer Website auslösen. Was soll ich tun? Kann ich der Website noch vertrauen? Und das auch dann, wenn Ihre Website eigentlich kein Sicherheitsrisiko darstellt.

HTTP/2 – das schnelle Internet

Seit der Einführung des neuen Übertragungsprotokolls HTTP/2 im Jahre 2015 hat sich einiges getan. Anfangs war es schwer den neuen Standard auch tatsächlich für die eigene Websites einzusetzen. Inzwischen bieten schon einige Webhoster die erforderlichen Voraussetzungen, um in Zukunft auf das deutlich schnellere Protokoll HTTP/2 zurück zu greifen.

Let’s Encrypt – kostenlose Zertifikate

Voraussetzung für eine Übertragung mit HTTP/2 ist jedoch eine verschlüsselte Verbindung über ein SSL-Zertifikat. Bisher waren Sie da gezwungen, zusätzliche Kosten für das SSL-Zertifikat in Kauf zu nehmen. Inzwischen gibt es eine kostenlose Alternative. Die Zertiefizierungsstelle Let’s Encrypt bietet offene SSL-Zertifikate ohne zusätzliche Kosten. Ziel der Initiative ist es, die Verschlüsselung von Websites zu vereinfachen und so für mehr Sicherheit im Web zu sorgen.

Vorteile:

  • kostenloses Zertifikat
  • automatische Aktualisierung alle drei Monaten

Nachteile:

  • Webhoster muss Einbindung unterstützen
  • schwache Validierung der Website / nur der Doimaininhaber wird geprüft
  • mögliche Sicherheitsprobleme durch autorisierte Systemzugriffe

Fazit: Als Einstieg oder zum Testen einer Verschlüsselung der Website kann ein kostenloses Zertifikat eingesetzt werden. Let’s Encrypt Zertifikate eignen sich nicht für Websites mit aufwendigen Internetdiensten und Online-Shops.

WordPress auf https umstellen

  1. SSL-Zertifikat einrichten
    Ein SSL-Zertifikat muss im Backend des Webhosters eingerichtet werden. Oft kann dort auch eingestellt werden, dass nur noch das https-Protokoll zum Aufruf der Website verwendte wird. Das Einrichten der SSL-Zertifikate ist bei den Webhostern immer etwas unterschiedlich, daher kann ich hier kein Screenshot anbieten.
  2. Datenbank sichern
    Für die Umstellung der Website von http auf https müssen Änderungen in der Datenbank vorgenommen werden. Ziel ist es alle Verlinkungen auf Medien und Seiten auf https umzustellen. Und wie immer bei Änderungen an der Datenbank empfiehlt sich eine vorherige Sicherung!
  3. Umstellung der Adresse der Website im WP-Backend
    Unter EinstellungenAllgemein kann im Backend die „WordPress Adresse (URL)“ und „Website-Adresse (URL)“ geändert werden. Diese Änderung reicht jedoch nicht aus. Zusätzlich müssen in der Datenbank alle Links auf Medien und Seiten aktuell sein. Sonst werden manche Links noch über das alte http-Protokoll aufgerufen.Webadresse in WordPress auf https umstellen
  4. Verlinkungen in der Datenbank auf https setzen
    Um die Links auf alle Seiten und Medien zu aktualisieren empfehle ich das Plugin Better Search Replace. Damit kann die Aktualisierung direkt im Backend von WordPress erledigt werden. Erfahrungen im Umgang mit Datenbanken ist nicht erforderlich.
  5. Better Search Replace
    Nach der Installation und Aktualisierung kann das Plugin unter WerkzeugeBetter Search Replace aufgerufen werden. Wählt die Tabelle wp_post aus und gebt in das Formular die alte und neue Webadresse (URL) ein. Ihr könnt erst einen Testlauf machen. Danach allerdings muss das entsprechende Häkchen vorher entfernt werden.Better Search Replace
  6. Aktualisierung Themedateien  – optional
    Sollten Sie im Theme Änderungen gemacht und direkte Links für Bilder (z.B. Hintergrundbilder in CSS) eingesetzt haben, müssen auch diese Links aktualisiert werden. Hinweis darauf kann sein, dass das Schlosssymbol in der Adresszeile gelb ist und auf Mixed Content hingewiesen wird.
  7.  .htaccess ändern
    Damit in Zukunft nur noch https:// aufgerufen wird, empfehle ich eine Änderung an der .htaccess Datei. Manche Webhoster haben dafür auch Einstellungen im eigenen Backend. In jedem Falle bekommt man dort auch die passenden Informationen. Hier ein
    Code-Beispiel. Sie müssen natürlich example.com durch Ihre Domain ersetzen.RewriteEngine On
    RewriteCond %{HTTP_HOST} ^example\.com [NC]
    RewriteRule ^(.*)$ https://example.com/$1 [R,L]