Een veiliger Vakblog met HTTPS (en waar je op moet letten als jij jouw blog wilt omzetten)

Google kondigde vorig jaar aan het gebruik van de HTTPS standaard op websites – waarbij gegevens beveiligd tussen de site en de bezoeker gaan – extra te gaan promoten vanaf 2017. Enerzijds door (op termijn) reguliere HTTP sites als niet-veilig te markeren in Chrome en anderzijds door voorrang in de Google ranking te geven aan websites die wel gebruik maken van HTTPS.

Helaas is het omzetten van een bestaande WordPress site van HTTP naar HTTPS geen kwestie van een paar klikken en klaar. Om er achter te komen wat de consequenties zijn nam ik de proef op de som. Ik zette Vakblog om naar HTTPS en keek wat er gebeurde.

Waarom HTTPS?

Iedereen weet wel dat als je een internetadres invoert in je browser dat het officieel met http:// begint. Dit is de naam van het internetprotocol waardoor, voor in dit geval een browser, duidelijk is dat het om een website gaat. Het is zo standaard geworden de laatste twintig jaar dat je internetadressen helemaal niet meer hoeft te voorzien van http:// in moderne browsers. Typ gewoon de URL zonder dat voorvoegsel en alle browsers weten wat je bedoelt. In Chrome en Firefox wordt het http:// deel ook niet eens meer getoond in de adresbalk.

Dit werkt(e) allemaal prima maar toen dit protocol ooit bedacht werd had niemand rekening gehouden met de mogelijkheden om de gegevens te onderscheppen tussen een website en een bezoeker ervan. Het is helaas eenvoudig gebleken voor hackers om informatie te onderscheppen en zelfs te vervalsen. Er ontstond dus de noodzaak om een veiligere variant van het HTTP-protocol te bedenken en dat werd het HTTPS-protocol. Het doet precies hetzelfde – serveren van webpagina’s – maar doet dat middels een veilige verbinding tussen degene die een site bezoekt en de site zelf. Ook als de internetverbinding zelf niet veilig is omdat je bijv. gehacked bent of iemand op hetzelfde wifi-netwerk probeert mee te kijken.

Sites waarbij gebruik gemaakt wordt van gevoelige informatie (zoals betalingsgegevens) maken al bijna twintig jaar gebruik van HTTPS maar voor ‘gewone’ sites zoals die van jou en mij bestond die noodzaak simpelweg niet. Zo gevoelig en vertrouwelijk is de informatie niet die je als bezoeker op een blog kunt achterlaten.

Maar het gaat bij websites tegenwoordig niet meer alleen om vertrouwelijke en gevoelige informatie. Aanbieders van gratis wifi kunnen reclames toevoegen aan sites die door gebruikers van die wifinetwerken via het HTTP protocol bezocht worden. Anderen kunnen zich met een nepsite voordoen alsof ze jouw site zijn en het is hoe dan ook kinderspel om allerlei gegevens over een site en de bezoekers te verzamelen omdat die gegevens onbeveiligd over de lijn gaan.

En dus kondigden zowel Mozilla (al in 2015) als Google (vorig jaar) aan dat ze op termijn het gebruik van HTTP op webpagina’s willen terugdringen en ontmoedigen. Google gebruikt daarbij het wortel en stok principe door enerzijds het gebruik van HTTPS te belonen in de ranking van de zoekmachine en anderzijds geleidelijk het gebruik van HTTP ‘af te straffen’.

En als Google het wil ….

Nu moet je natuurlijk niet iets gaan doen omdat Google het wil. Iedereen vindt het een goed idee dat het internet veiliger wordt maar er komt voor een eigenaar van een site wel wat bij kijken om de overstap te maken naar HTTPS.

Voor HTTPS heb je namelijk een HTTPS-certificaat (ook nog wel SSL-certificaat genoemd) nodig op de webserver. Met zo’n certificaat toon je aan dat je ook daadwerkelijk de eigenaar bent van het domein waar de site aan gekoppeld is (domeinvalidatie). Dit moet je aanvragen bij een partij die certificaten mag uitgeven en die verifiëren ook daadwerkelijk of het klopt. En dat kost geld.

Er zijn ook nog twee andere soorten certificaten waarbij behalve het domein ook de organisatie die de eigenaar is wordt geverifieerd. Die herken je omdat de naam van de organisatie dan – in wit of in groen – in de adresbalk erbij komt te staan. Deze zijn daarmee duurder omdat dan ook de Kamer van Koophandel en andere bronnen worden geraadpleegd om vast te stellen dat het betrouwbaar en authentiek is. Voor een blog heb je echter voldoende aan een domeinvalidatie.

Het probleem hierbij is dat de meeste webhosts nog niet heel erg behulpzaam zijn om er voor te zorgen dat hun klanten makkelijk en goedkoop gebruik kunnen maken van HTTPS. Dankzij het Let’s Encrypt project is het weliswaar mogelijk om gratis domeinvalidatie-certificaten te krijgen (als site-eigenaar) en aan te bieden (als je webhost bent) maar zijn er maar een handjevol webhosts die dit ook actief aanbieden en ondersteunen.

Je zult dus bij je eigen webhost moeten informeren of ze je kunnen helpen bij het installeren en activeren van een HTTPS-certificaat. Mijn webhost (Siteground) is toevallig één van de webhosts die Let’s Encrypt aanbiedt maar dat kan en zal anders zijn bij jouw webhost. Vaak is er wel de mogelijkheid om een certificaat te laten installeren maar zul je daar enkele tientjes per jaar voor moeten betalen. Wil je een gratis Let’s Encrypt certificaat gebruiken dan zul je samen met je webhost nog diverse technische handelingen moeten verrichten vrees ik.

Of je dit allemaal moet gaan doen hangt daarom ook vooral af van hoeveel je webhost voor je kan doen, hoeveel je zelf kunt en wilt doen en of je bereid bent er tijd (en eventueel geld) in te steken.

En of de wortel en de stok van Google belangrijk genoeg voor jou zijn. Zelf denk ik dat een betere ranking met HTTPS niet opweegt tegen de moeite die je er voor moet doen (helemaal omdat Google niet aangeeft in welke mate het daadwerkelijk een rol speelt) maar ik ben wel gevoelig voor het stok-argument. Versie 56 van Chrome introduceert eerst een waarschuwing in de adresbalk voor niet-veilige sites als je over een invoerformulier beschikt waar om een wachtwoord of betalingsgegevens wordt gevraagd. Het idee is echter dat op termijn alle HTTP-sites een dergelijke waarschuwing gaan krijgen met een rood icoontje erbij dat op gevaar duidt.

Ik wil toch echt voorkomen dat bezoekers van dit blog dat icoontje ooit te zien krijgen.

Wat als je het HTTPS-certificaat hebt?

Helaas ben je er ook nog niet als je besloten hebt om de overstap te maken naar HTTPS en het certificaat netjes geïnstalleerd is op je webserver. Je site maakt immers standaard gebruik van HTTP en je moet dat wijzigen naar HTTPS om er voor te zorgen dat je bezoekers ook die pagina’s via dat protocol te zien krijgen.

In het geval van WordPress is dat niet heel lastig. Bij Instellingen -> Algemeen kun je de basis URL van je blog aanpassen en simpelweg https:// voor de URL zetten. Vanaf dat moment is dat de URL van je blog en krijgen nieuwe blogposts ook het https:// voorvoegsel mee bij de individuele URL’s. Het is vervolgens een kwestie van even opletten dat je de URL van embedded plaatjes in je theme, zoals je logo of bij mij het Creative Commons logootje in de widgets, ook aanpast naar https://. Alle content die van je blog wordt verstuurd moet via het HTTPS protocol gaan, ook de content die embedded is!

En dat zou voldoende zijn als dit je nieuwe blanco WordPress blog was waar je nog niet eerder een blogpost op gepubliceerd hebt.

Helaas heb je waarschijnlijk al tientallen of honderden bestaande blogposts gepubliceerd die toen allemaal een http:// link hebben gekregen. Zo heb jij ze ook verspreid via social media en, nog belangrijker, dat zijn de links die je in Google hebt staan. Je zult er voor moeten zorgen dat als iemand op een bestaande http link van een blogpost tikt, die automatisch uitkomt bij de https versie.

Daarvoor zul je het .htaccess bestand moeten aanpassen op je webserver en een stukje code moeten toevoegen die er ongeveer zo uit ziet maar kan verschillen per webhost. Controleer ook hiervoor eerst wat je webhost geregeld heeft.

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://sitenaam.nl/$1 [R=301,L]

Zelfs dan ben je er nog niet want om dat begeerde ‘Secure’ slotje te behalen moet je er voor zorgen dat ALLES wat van je blog afkomstig is via HTTPS verstuurd wordt.

Doe je dat niet dan geeft de browser aan dat je site niet helemaal veilig is omdat de content ‘gemixed’ is: er wordt ook nog steeds data verstuurd via het http-protocol. Je zult dus in beginsel alle blogposts moeten nalopen en in de links van bijv. afbeeldingen in je blogposts HTTP moeten vervangen door HTTPS.

Gelukkig zijn er WordPress plugins die je daarbij kunnen helpen. Really Simple SSL is een plugin die zelfs je .htaccess voor je probeert aan te passen en er voor zorgt dat alle content via HTTPS naar je bezoekers gaat zonder dat je de links handmatig hoeft aan te passen. Bij mij kon die echter het .htaccess bestand niet aanpassen en moest ik het alsnog handmatig doen maar Really Simple SSL werkte wel heel goed om om die meldingen over ‘mixed’ content weg te krijgen in één keer. Je kunt bij de instellingen van de plugin aangeven dat je wel de ‘mixed content’ wilt fixen maar dat die niet het .htaccess bestand hoeft te wijzigen (als het bij jou ook niet werkt).

En als dat allemaal gelukt is heb je hopelijk het felbegeerde slotje te pakken.

secure https vakblog

Vergeet je bezoekers (en Google) niet!

Heb je het uiteindelijk voor elkaar? Dan heb je feitelijk een nieuwe URL voor je blog gecreëerd en moet je niet vergeten om alle verwijzingen naar je blog aan te passen, bijvoorbeeld in de handtekening van je mail of in je socialmediaprofielen. Ook al worden bezoekers automatisch doorgestuurd naar de HTTPS versie, je site werkt het snelste als bezoekers meteen al de goede URL gebruiken.

Een nieuwe URL betekent ook dat je een nieuwe ‘property’ moet aanmaken in de Google Search Console als je die gebruikt (en dat zou je wel moeten). Hiermee heb je invloed op hoe Google je site ziet en je wilt vanaf nu ook de HTTPS linkjes terugzien in de zoekmachine. Voeg daarom onder Crawlen->Sitemaps in de nieuwe ‘property’ ook de aangepaste sitemap URL toe zodat Google die kan gaan indexeren.

Ook in Google Analytics zul je een tweetal wijzigingen moeten doorvoeren maar hoef je geen nieuwe ‘property’ aan te maken gelukkig. Klik op je bestaande site, ga naar het tabblad Admin en klik vervolgens op Property Settings.

https google analytics

Bij de Default URL moet je aangeven dat je nu gebruik maakt van https:// en ook zul je deze ‘property’ nu moeten koppelen aan de nieuwe die je net in de Search Console hebt aangemaakt. Klik op Adjust Search Console om je Google Analytics te koppelen aan de correcte tegenhanger in Search Console.

Dat was een hoop werk voor alleen een slotje, vind je niet?

Meer lezen? Lees dan ook “Maak je website veilig en toekomstbestendig met HTTPS” op Eenmanierom.nl

#

Raymond Snijders

Sinds 1995 houdt Raymond zich bezig met de combinatie van ICT, bibliotheken en onderwijs vanuit het perspectief van (vooral) de bibliotheek en informatievoorziening. Thans is hij werkzaam bij de Hogeschool Windesheim als senior informatiebemiddelaar en houdt hij zich bezig met de digitale bibliotheek, contentlicenties, ebooks en auteursrecht. Over deze onderwerpen en de impact die ze (kunnen) hebben op het onderwijs en bibliotheken blogt hij sinds 2006 op zijn Vakblog. In 2013 won hij de Victorine van Schaickprijs voor zijn blog.

Comments (6) Write a comment

  1. PFFF ik weet dat ik het moet gaan doen, met blog en website en met onze trainingsomgeving. Toch even de tijd voor nemen dus en stappenplan van de host lezen :-)

    Reply

    • Ik zag er ook tegen op hoor. Als mijn host toevallig niet de gratis certificaten kant en klaar had neergezet dan was ik er waarschijnlijk ook nog niet aan begonnen. En ik ben nog wel heel benieuwd of Google alle bestaande blogposts netjes opnieuw indexeert want ik moet het voor mijn bezoekers echt wel hebben van deze zoekmachine :) Enfin, het is nu klaar dus ik zie het wel!

      Reply

  2. Jemig! Handig artikel. Een maand of twee geleden werd ik gebeld door mijn webhost / IT goeroe en hij raadde me inderdaad aan om voor https te gaan kiezen. Zou me dan – uit mijn hoofd – iets van 40 euro kosten en hij maakte het in orde.

    Nu ik dit lees is het me helder waarom hij belde en wat voor werk hij eigenlijk dan allemaal moet gaan doen. Dit jaar stap ik wel over, hopelijk snel. Maar dank dat je de verdere gevolgen heb gedeeld! Ik sla het artikele even op :)

    Reply

    • Als die (ca.) 40 euro een eenmalig bedrag is dan zou ik zeker niet aarzelen. Hou er rekening mee dat de certificaten jaarlijks verlengd moeten worden en dat als je webhost/goeroe dat doet, je daar afspraken over maakt zodat het niet ineens fout gaat na verloop van tijd.

      En wie weet, als het dan toch een goeroe is, kan hij ook helpen met het omzetten van de links (van afbeeldingen) in alle bestaande artikelen? Dat zou ook handig kunnen door met een query in de WordPress database alle http links van afbeeldingen die van Lilyrose afkomstig zijn, te vervangen door https linkjes. Ik durfde dat zelf niet te doen voor mijn blog omdat ik te bang ben dat ik iets heel erg stuk maak :)

      Reply

  3. Duidelijk verhaal Raymond! Heb onlangs ook de knoop doorgehakt en gekozen voor een domein SSL (ca. 30,- /1 jaar) voor mijn WordPress blog. Mijn webhost Antagonist had het voor mij ook kunnen activeren, maar wees mij op de Really Simple SSL plugin. Daarmee was voor mij in één klap het groene slotje geregeld. So far so good. Nu nog jouw tip om ook te kijken naar Google Search Console!

    Reply

Leave a Reply

Required fields are marked *.


This site uses Akismet to reduce spam. Learn how your comment data is processed.

  • © 2006- 2019 Vakblog – werken met informatie
    Aangedreven door WordPress en duizenden liters koffie // Theme: Tatami van Elmastudio
Top