Mit Sicherheit: Umstellung auf https

SSL ist in aller Munde, gesichert aufrufbare Seiten bekommen Pluspunkte beim Ranking – Grund genug, sich mal näher mit der Materie zu beschäftigen.

Alles fängt damit an, dass man ein gültiges SSL-Zertifikat hat… Über meinen Hoster konnte ich mir ein selbst signiertes Zertifikat ausstellen – das bringt aber nur wenig, weil es vom Browser erstmal nicht automatisch anerkannt wird. Wie denn auch, schließlich ist die Sicherheit ja nicht durch irgendeine anerkannte Instanz bestätigt.

Zum Glück gibt es im Internet ja auch Anbieter, bei denen man gültige Zertifikate für kleines Geld bekommt; von den kostenlosen Zertifikaten von StartSSL bin ich wieder abgerückt, nachdem ich diesen Artikel gelesen hatte. Schließlich soll das ja erstmal nur ein Test sein, da möchte ich nicht im Zweifel gleich Kosten an der Backe haben, wenn ich mich dann doch gegen SSL entscheide.

Eine kurze Recherche brachte mich dann zu cheapsslshop.com: die verkaufen nicht nur die (hauseigenen) Zertifikate von Comodo für wesentlich weniger Geld als Comodo selbst , sondern auch Zertifikate anderer Anbieter (Thawte, GlobalSign, …). Im Zweifel kann man da also auch für den professionellen Einsatz fündig werden und seiner Website eine grüne Adresszeile spendieren. Soviel brauche ich aber nicht, mir reicht eine einfache Bestätigung. Bezahlung klappt mit Paypal, es gibt eine 30-tägige Testphase innerhalb derer man komplett vom Kauf zurücktreten kann und das Zertifikat selbst kam innerhalb von ein paar Minuten per Mail – mit Installation auf dem Server hat es nicht mal eine halbe Stunde gedauert, bis die Seite grundsätzlich auch via https erreichbar war. Wiedermal war ich froh, cPanel als Backend zur Administration zu haben und nicht auf eine Provider-spezifische Lösung angewiesen zu sein: mit ein paar Klicks ist die Anforderung (CSR) erzeugt, mit ein paar weiteren Klicks ist das fertige Zertifikat dann installiert.

Update:
Seit dem Umzug zu WebhostOne habe ich zwar kein cPanel mehr zur Verfügung, dafür aber die Möglichkeit, ein kostenloses Zertifikat von Let’s Encrypt einzubinden.

Das ist ja aber leider erst die halbe Miete, WordPress erfordert ja auch noch ein paar Einstellungen bevor es wirklich komplett und ausschließlich über gesicherte Verbindungen arbeitet:

  • interne Links unabhängig vom Protokoll
    Als erste Maßnahme wurden sämtliche internen Links in den Widgets und Theme-Dateien/-Einstellungen vom Protokollaufruf befreit: statt

    http://mysite.net/

     steht jetzt nur noch

    //mysite.net/

     im Code – somit kann diese Ressource gesichert oder ungesichert aufgerufen werden, ohne dass der Browser eine Fehlermeldung wegen gemischter Inhalte auswirft.

  • http auf https umleiten
    Das erfordert ein paar zusätzliche Zeilen in der .htaccess. Bei der Gelegenheit fällt auf, dass jede Menge Einträge zum Caching in der Datei stehen, die allesamt noch mit ungesicherter Verbindung arbeiten – also erstmal das Caching-Plugin deaktivieren, damit diese ganzen Regeln verschwinden. Wenn alle Einstellungen auf https gesetzt sind, wird Caching wieder aktiviert und schreibt dann automatisch die gesicherten Rewrite Rules.
    Damit Besucher und Suchmaschinen sich auch den neuen gesicherten Aufruf merken, bekommen sie gleiche einen Returncode 301 (permanent redirect) mitgeliefert; beim nächsten Besuch sollte dann direkt die gesicherte Seite aufgerufen werden.

    # BEGIN redirect all to https
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
    # END redirect all to https
  • URLs in der Datenbank umstellen
    WordPress speichert etliche URLs in der Datenbank, natürlich komplett mit Protokoll – die sollte man ebenfalls von http:// auf https:// umstellen, um sich unerwartete Probleme an anderen Stellen zu ersparen.
    Dazu habe ich im Web drei passende SQL-Anweisungen gefunden, die man nach einer Sicherung (!!) einfach über die eigene Datenbank laufen lassen kann:

    UPDATE wp_posts SET guid = replace(guid, 'http://www.site.com','https://www.site.com');
    UPDATE wp_posts SET post_content = replace(post_content, 'http://www.site.com', 'https://www.site.com');
    UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://www.site.com', 'https://www.site.com');

    Und ein praktisches Beispiel, warum man das tun sollte habe ich auch: Wie schon an anderer Stelle geschrieben habe ich auch die Titelbilder hier im Blog responsive gemacht. Das ging aber nur mit einem kleinen Trick, ich mußte aus der Bild-URL die ID in der Datenbank bestimmen. Genau an der Stelle wird es problematisch, wenn WP eine https:// URL vorgibt und in der Datenbank nur http:// steht – auf einmal ist das Titelbild weg

  • WordPress umstellen
    Zu guter Letzt werden in den allgemeinen Einstellungen noch die URLs (WordPress-Adresse und Website-Adresse) auf https geändert.
    Wer mag, kann auf jeden Fall eine gesicherte Verbindung für die Administration erzwingen, indem er folgende Zeile in die wp-config.php (irgendwo vor /* That's all, stop editing!) einfügt:
    [php]define(‚FORCE_SSL_ADMIN‘, true);[/php]

Im Idealfall läuft jetzt alles korrekt – falls nicht, muss man sich auf Fehlersuche machen ;-).
Manchmal hilft schon ein Blick in den Quellcode der Seite, um die letzten http:// Aufrufe zu finden….

Gelegenheitsblogger, bekennender Unterstützer der deutschen Bark Alexander von Humboldt II (ab und an in der Bierwerbung einer norddeutschen Brauerei zu sehen) mit einem Faible für Ju-52 und Meer, reist, liest, arbeitet - alles in allem also ziemlich normal.

Schreibe einen Kommentar

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

https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_smilenew.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_biggrin2.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_sadnew.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_eek.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_shocked.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_confusednew.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_coolnew.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_lol.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_madnew.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_seb_zunge.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_blushnew.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_frown.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_twistedevil1.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_twistedevil2.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_rolleyesnew.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_wink2.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_idea2.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_neutral_new.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_biggrin.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_xd.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_xd2.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_ugly.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_freu.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_freu2.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_motz.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_lachtot.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_irre.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_helpnew.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_wallbash.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_gott.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_hurra3.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_skeptisch.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_bravo2.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_pfeif2.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_nicken.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_no_sad.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_aufsmaul.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_doh.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_smilina.gif 
https://the.mnbvcx.net/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_winken4.gif