Meine Seite ist unsicher. Ich bin der Teufel. Deshalb wird meine Seite bei Google bald markiert sein. Weil meine Seite sicher ganz böse ist. Das gehört zum großen Plan des Suchmaschinenriesens, das Internet jeden Tag ein bisschen besser zu machen. Und Google will es eben auch sicherer machen. Und da passen Seiten wie meine nicht so richtig dazu. Aber muss ich deshalb den Teufel an die Wand malen?
Meine Meinung zu SSL-Zertifikaten
Ich bin ja der Meinung, dass hier schon ein wenig übertrieben wird. Ich denke, es ist schon nicht von der Hand zu weisen, dass Webseiten, die ein Zertifikat ausweisen, sicherer sind. Das ist in meinen Augen aber meistens relevant für Unternehmen oder sonstwie geartete Webseiten mit unternehmerischem Zweck. Aber selbst wenn das für alle Webseiten relevant wäre, welche Nachteile hat man denn? In einschlägigen Blogs, Gruppen, Foren und dergleichen erzählen sie dir, dass der Leumund zählt, um eine Webseite als relevant darzustellen. Woanders erzählen sie dir, dass das „Ranking“ beeinflusst werden kann.
Ja, meine Güte, mir ist es doch nicht so wahnsinnig wichtig, auf welchem Rang meine Seite rangiert. Nur falls jemand Interesse hat: Es ist der Google Pagerank 3. Aber was sagt der aus? Nichts. Nur, dass meine Seite irgendwie prominenter ist als eine mit Pagerank 2. Also würde ich ganz sicher kein SSL Zertifikat nur wegen des „Rankings“ einführen. Da brauche ich schon wesentlich wichtigere Gründe. Und da kommt jetzt wieder Google ins Spiel. Die wollen nämlich Webseiten ohne SSL Zertifikat mit einem roten Kreuz im Google Chrome anzeigen. Das macht mir jetzt aber Angst.
Aber nehmen wir das Ganze mal nicht auf die leichte Schulter. Es ist nun einmal so, dass mit einem SSL Zertifikat und damit mit SSL nun einmal die Sicherheit erhöht wird. Das lässt sich nun einmal nicht wegdiskutieren. Wenn ich nun per Exchange ActiveSync mein geschäftliches Smartphone mit dem Exchange Server in der Firma verbinden möchte, geschieht das nun einmal über HTTPS. Das ist dann vertraulich, und die Integrität der Kommunikation zwischen Server und Client wird gewahrt. Und so ist das auch bei Webseiten. Der Server ist der Webserver, die Client ist der Browser.
Einrichtung für WordPress
Kommen wir aber mal zurück zu SSL-Zertifikaten für Webseiten. Wenn ich nun hergehen würde und beschließen würde, dass dieser Blog hier ein Zertifikat erhält und somit verschlüsselt wird, müsste ich ja geringfügig arbeiten. Nicht, dass mich Konfigurationsarbeiten am Blog stören würden. Aber es kann eben bei der Einführung von SSL auch einiges schief gehen.
- Wir machen zunächst einmal ein vollständiges Backup von Daten und Datenbank und all dem, was mit dem Blog zusammenhängt. Ich nutze dazu BackWPup. Und das habe ich schon mal beschrieben.
- Zunächst müsste ich ein Zertifikat anschaffen. Die gibt es im Bereich von Null, Nada, Niente bis sonstwie teuer. Bei meinem Hoster Alfahosting zum Beispiel (Partnerlink) gibt es gleich verschiedene Zertifikatsarten. Sie sehen ja die Preise. Was ist nun richtig? Ein kostenloses Zertifikat wie von Let’s Encrypt? Oder doch lieber von einem richtigen Anbieter? Von der Funktionsweise her sollten sich beide nicht unterscheiden. Gut, hätten wir das.
- Dann muss das erstandene Zertifikat in der Domain-Verwaltung hinterlegt werden. Auch wieder am Beispiel Alfahosting: Dort gibt es das Admin-Panel Confixx. Und darin kann ich sogar mit kostenfreien „Shared-SSL-Zertifikaten“ arbeiten. Das bietet sich an, wenn man nicht noch dazu eine dedizierte IP-Adresse haben will. Sein eigenes Zertifikat kann man beim Beispiel Alfahosting unter „Domains & SSL“ bestellen.
- In der WordPress-Administration muss unter Einstellungen -> Allgemein die URL des Blogs angepasst werden. Aus http://www.henning-uhle.eu wird dann https://www.henning-uhle.eu. Das muss gespeichert werden. Damit fliegt man aus WordPress raus und muss sich neu anmelden. Aber das lassen wir erstmal.
- Als nächstes muss die Datei wp-config.php bearbeitet werden. Dort ist nämlich auch die Adresse des Blogs hinterlegt. Die Einstellung WP_CONTENT_URL muss dergestalt bearbeitet werden, dass sie dann wie hier aussieht: define( ‚WP_CONTENT_URL‘, ‚https://www.henning-uhle.eu‘ ); – Und die neu gespeicherte Datei muss wieder per FTP auf den Server geladen werden.
- In der Datenbank müssen wir auch Anpassungen vornehmen. Die weiß nämlich jetzt noch nichts davon, dass die Adresse nun per HTTPS angesteuert wird. Ich habe oft gelesen, dass man hier mit äußerster Sorgfalt vorgehen sollte. Am zuverlässigsten soll das mit dem Tool „Database Search an Replace Script in PHP“ ablaufen.
- Damit dann auch noch alle (externen) Links funktionieren, muss noch mehr angepasst werden. Es wäre ja doof, wenn wir zwar das Zertifikat eingebaut haben und Geld dafür ausgeben, aber dann trotzdem noch Inhalte unverschlüsselt aufrufbar sind. Hier muss eine so genannte 301-Weiterleitung eingebaut werden, wie ich übereinstimmend lesen konnte / musste / durfte. Diese Anpassung geschieht in der Datei .htaccess, und ich zeige Ihnen das weiter unten. Die Datei muss dann natürlich auch wieder auf den Server geladen werden.
- Verwenden wir dann noch dazu ein Caching Plugin, wie z.B. WP Super Cache oder so etwas, wäre es jetzt an der Zeit, den Cache zu leeren. Andernfalls werden die zwischengespeicherten HTTP-Seiten ausgeliefert, und wir haben wieder nichts gewonnen.
- Und um die Geschwindigkeit durch SSL nicht allzu sehr einbrechen zu lassen, muss wieder in der .htaccess gearbeitet werden. Das steht auch wieder unten.
Das ist es im Großen und Ganzen. Wenn das Alles so durchgezogen wurde, soll die Webseite wieder funktionieren. Stimmt das? Hat das jemand von meinen Lesern schon mal so gemacht? Ich habe ein wenig Sorge, dass meine Seite dann gar nicht mehr erreichbar ist. Denn wie schnell hat man sich vertan. Dann sucht man stundenlang oder tagelang. Deshalb scheue ich mich auch ein wenig davor, auf SSL umzusteigen.
Die Sache mit der .htaccess
Ich hatte ja geschrieben, dass die .htaccess angepasst werden muss. Die liegt im Wurzelverzeichnis der WordPress-Installation. Und um nun nur noch HTTPS-Inhalte auszuliefern, muss eine Passage eingefügt werden, die folgendes beinhaltet:
RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]
Das habe ich mir nicht ausgeschwitzt, das steht unter anderem hier. Es gibt aber auch andere Lösungen. Jedenfalls muss erst einmal überschrieben werden. Das wird mit der ersten Zeile angeschaltet. Dann wird geprüft, ob es sich beim Server-Port nicht um Port 443 handelt. Der Port gilt für SSL. Ist das so, wird in Zeile 3 mittels 301 an die HTTPS-Seite weitergeleitet. Das ist eigentlich eine sehr smarte Sache, oder?
SSL, die Geschwindigkeitsbremse
Keine Frage, eine Webseite, die auf SSL umgestellt ist, ist langsamer als vorher. Das liegt daran, weil SSL erst einmal zwischen Server und Client ausgehandelt werden muss. Ohne die folgende Funktion würde ein Browser für jedes Element einer Webseite eine eigene Verbindung aufbauen. Und das Zertifikat ist ein eigenes Element. Das hält dann unnötig auf. Aus diesem Grund muss man die .htaccess prüfen und ggf. anpassen, nämlich so:
<ifModule mod_headers.c> Header set Connection keep-alive </ifModule>
SSL macht aber Werbung kaputt
Das ist die große Kehrseite. Werbebanner werden wohl im überwiegenden Teil per HTTP ausgeliefert. Wenn nun aber HTTPS im Einsatz ist, man also sicher ist, wird die Werbung geschreddert. Sie wird also nicht mehr angezeigt. Das kann nicht im Sinne des Bloggers sein. Und hier bin ich mir unsicher. Es wird sicherlich Werbeformate in SSL geben. Aber ich bin mir nicht sicher, wie die funktionieren.
Fazit
Es ist nicht SO viel Arbeit, die eigene Seite auf HTTPS umzustellen. Sie haben das sicherlich schon gesehen: Da erscheint in der Adresszeile ein grünes Schloss, ein grünes Feld oder so etwas. Dann folgt HTTPS und dann die Adresse. Im Prinzip ist mir das Vorgehen auch klar. Aber man hat eben Sorge, dass mehr kaputt geht, als die Sache wert ist. Und ich habe so meine Probleme, den Wert dieser Veranstaltung zu messen, wenn man mir mit „Ranking“ und dergleichen kommt.
Es gibt noch einen ganzen Sack voller Zusatzfragen, die mich da quälen. Funktionieren alle Plugins danach? Was mache ich, wenn mir SSL zu viel Aufwand bedeutet? Der Rückbau des Ganzen, das habe ich selbst am Rande bei einem meiner Partnerblogs mitbekommen, ist ein Fluch. Der hat nicht wirklich sauber geklappt. Macht man sich da zu viele Gedanken? Und am Ende stellt sich mir die Frage, ob der Zweck tatsächlich all die Mittel heiligt.
Ich meine, ich biete keine Dienstleistungen oder einen Shop an. Und ich habe irgendwo gelesen, dass HTTPS bei Privatpersonen eigentlich egal ist, was ich auch nicht ganz glaube. Und deshalb bin ich da so in einem Zwiespalt, ob ich das Zeug einführen soll oder nicht. Aber wenn, dann kann es durchaus sein, dass ich mich mit solchen Sachen wie Let’s Encrypt beschäftigen werde.
interessant wäre mal ein Vergleich zwischen diesem kostenlosen Let’s encrypt und dem Power SSL.
Denn u.U. ist das Zertifikat teurer als die Webseite mit Domain.
Das ist nicht ganz von der Hand zu weisen. Allerdings stehe ich in Sachen Webseiten-Zertifikat noch ganz am Anfang. Ich muss mich da noch viel belesen.
Ich gehe davon aus, dass es hier lediglich um die Art der Anzeige der SSL Zertifikate handelt. Also ob der komplette Name grün ist und eine hohe Stufe des Vertrauen geschaffen wurde etc.
Durch ein reines Zertifikat kann keine Geschwindigkeit verbessert werden. Meiner Ansicht nach.
Das ist auch so. Wo soll denn der Geschwindigkeitszuwachs auch herkommen? Ich denke eher, dass das in der Tat um die Vertrauensstufe geht.
Ich habe weniger wegen rankings umgestellt. Natürlich auch. Google hat aber selbst erhoben, dass Besucher Seiten mit dem grünen Schloss mehr vertrauen. Menschen, die sich auskennen, wird es weniger jucken, aber Wenigsurfer, die einen „Warnhinweis“ sehen, könnten da schon unsicher werden.
Laienhaft ausgedrückt: Ich merke keinen Unterschied in der Geschwindigkeit. Gemessen mag das ein wenig eine Rolle spielen.
Vielleicht ist das ein wichtiger Gedanke. Die Laien, die ja auch im Internet unterwegs sind, haben ja mehr Sorge vor nicht-HTTPS-Seiten. Aber nochmal: Geschwindigkeit kann kein Grund sein, das Abschneiden in Suchergebnissen ebenfalls nicht. Denn die werden mehr und mehr nach qualitativen Kriterien erstellt, wie ich vor kurzem mal las.
Hi Henning,
danke auch für deinen Artikel.
Ich habe es getan ^^ Der Umstieg von Host Europe (Webspace) auf einen Linux vServer von Strato.
Dort konnte ich automatisiert Let’s Encrypt über Plesk nutzen. Plesk ist echt super einfach zu bedienten.
Dann noch DB + Daten umziehen. Konfig anpassen. WordPress auf SSL umstellen nach allen Regeln der Kunst und es ist vollbracht. :D
Ich werde alles nochmal schriftlich und detaillierter zusammenfassen.