Zo implementeer je HTTPS op jouw website

Je webshop upgraden naar een veilige HTTPS-verbinding is niet altijd een vlekkeloos parcours. Zorg daarom dat je op voorhand weet waar je aan begint.

Je bent overtuigd van het nut van HTTPS voor jouw website, weet welk SSL-certificaat je nodig hebt, en hebt de nodige voorbereidingen getroffen om een migratie zo vlekkeloos mogelijk te laten verlopen. Tijd om over te gaan tot het echte werk.

De technische implementatie laat je wellicht over aan je (externe) webontwikkelaar of hostingprovider, maar het is goed om ook zelf op de hoogte te zijn van de verschillende stappen in het proces. Zo kan je beter anticiperen wanneer er eventuele obstakels opduiken.

1. Koop een SSL-certificaat

De eerste stap is het aankopen van een SSL-certificaat. Dat heeft als taak om de communicatie tussen de bezoeker en je website te beveiligen. In een vorig hoofdstuk zetten we reeds de verschillen tussen alle typen SSL-certificaten uiteen. Kijk naar jouw specifieke noden en kies aan de hand daarvan het geschikt certificaat.

Voordat je een SSL-certificaat kan aanvragen, moet je een Certificate Signing Request (CSR) genereren voor je server. Dat is een versleuteld bestand met enerzijds aanvraaginformatie zoals je domeinnaam en bedrijfsnaam, en anderzijds een digitale handtekening met een sleutellengte van 2048 bits.

Bij het aanmaken van de CSR worden een private en publieke sleutel gecreëerd. Deze zijn onmisbaar om het SSL-certificaat te laten functioneren. De private sleutel blijft geheim bewaard op je server, de publieke sleutel wordt in de CSR opgenomen en naar de certificaatautoriteit gestuurd.

2. Installeer het SSL-certificaat

Voor je een certificaat krijgt, moet de CSR worden gevalideerd door de certificaatautoriteit. Afhankelijk van het type SSL-certificaat dat je aanvraagt, kan dat vijf minuten (domeinvalidatie) tot enkele dagen (uitgebreide validatie) duren.

Eenmaal goedgekeurd, wordt de CSR digitaal ondertekend door de certificaatautoriteit, waardoor een SSL-certificaat ontstaat dat alleen kan worden gevalideerd met de private sleutel op jouw server. Hoe je dat SSL-certificaat vervolgens installeert, hangt af van welk type webserver je gebruikt. Wil je de installatie zelf uitvoeren, raadpleeg dan de informatie voor jouw type server.

Bewaar ook zeker een back-up van je SSL-certificaat op een veilige plaats. In het geval de server crasht of wordt vervangen, is het zo eenvoudiger om de nieuwe server opnieuw te beveiligen.

3. Update alle interne en externe links

De volgende stap kan een flink huzarenstukje zijn afhankelijk van de ouderdom en omvang van je website. De migratie naar HTTPS betekent in feite een migratie naar een nieuwe website. Alle pagina’s moeten worden gekopieerd van de HTTP-versie naar de nieuwe locatie van de HTTPS-versie. Vergeet hierbij zeker niet om de nieuwe HTTPS-links als canonieke url’s in te stellen om te vermijden dat Google je afstraft voor dubbele content.

Vervolgens moeten ook alle interne en externe links op en naar je website worden aangepast, zodat ze naar de nieuwe veilige pagina’s wijzen. Via een find and replace query op je database is dat gelukkig tamelijk eenvoudig. Voor bijvoorbeeld WordPress bestaan er bovendien gebruiksvriendelijke plug-ins die dit voor jou kunnen doen. Met een crawling tool als Screaming Frog kan je controleren of er geen pagina’s werden gemist.

Vergeet ook niet op alle andere plaatsen waar je naar je website linkt de url naar HTTPS te veranderen, bijvoorbeeld op je social mediapagina’s. Zijn er belangrijke derde partijen die linken naar een pagina op je website? Vraag hen vriendelijk of ze de link willen aanpassen naar de correcte HTTPS-pagina.

Door 301 redirects in te stellen, wijs je niet alleen je bezoekers, maar ook Google en andere zoekrobots de weg van de oude HTTP-pagina’s naar de nieuwe HTTPS-varianten.

4. Stel permanente 301 redirects in

Een 301 redirect is een permanente omleiding waarmee je mensen die een bepaalde pagina op je website bezoeken automatisch kan doorsturen naar een andere pagina. Dat is handig wanneer je een bepaalde pagina van je website wil verwijderen of de url aanpassen, zoals in het geval van een HTTPS-migratie.

Door 301 redirects in te stellen, wijs je niet alleen je bezoekers, maar ook Google en andere zoekrobots de weg van de oude HTTP-pagina’s naar de nieuwe HTTPS-varianten. Google zal de linkwaarde van de oude pagina grotendeels overdragen naar de nieuwe, zodat de schade aan je ranking en organisch zoekverkeer beperkt blijft.

Het opzetten van deze permanente omleidingen kan onder meer door het .htaccess-bestand op de Apache-webserver aan te passen of, in geval van WordPress, via een plug-in. Opnieuw kan je een tool als Screaming Frog gebruiken om te controleren of alle redirects goed zijn ingesteld.

Je denkt nu misschien dat het instellen van 301 redirects het vervangen van je interne links overbodig maakt, maar dat is niet helemaal waar. Zoals we reeds bespraken in het hoofdstuk rond valkuilen en uitdagingen van HTTPS, hebben redirects een effect op de snelheid waarmee een pagina laadt en bijgevolg op de gebruikservaring van je bezoeker en de linkwaarde in Google.

5. Implementeer HTTP Strict Transport Security

Wanneer je alleen beroep doet op 301 redirects om je bezoekers door te sturen van HTTP naar HTTPS, is er nog een kort moment waarin een aanvaller alsnog de SSL-encryptie kan omzeilen en de verstuurde gegevens onderscheppen. Het is daarom aangeraden (maar niet noodzakelijk) om HTTP Strict Transport Security (HSTS) te implementeren.

HSTS is een optionele beveiligingsmaatregel die een webbrowser verplicht om altijd gebruik te maken van een HTTPS-verbinding wanneer die met je server communiceert.

HSTS is een optionele beveiligingsmaatregel die een webbrowser verplicht om altijd gebruik te maken van een HTTPS-verbinding wanneer die met je server communiceert. Indien er geen beveiligde verbinding mogelijk is, krijgt de bezoeker een foutmelding te zien. Hij kan dus niet worden omgeleid naar een onbeveiligde pagina.

Bij een eerste bezoek aan een website, weet je browser evenwel nog niet of HSTS is geactiveerd en zal de verbinding niet onmiddellijk via HTTPS worden geforceerd. Om dat te verhelpen kan je je website toevoegen aan de HSTS preload list. Dat is een lijst met websites die hard gecodeerd staat in de populaire browsers, zodat ze uitsluitend via HTTPS bereikbaar zijn. Voor je dit overweegt, dien je er zeker van te zijn dat je volledige domein, inclusief alle subdomeinen, via HTTPS toegankelijk is.

6. Voeg alle varianten van je website toe aan Google Search Console

Als laatste stap ga je naar de Google Search Console, vroeger Webmaster Tools, en voeg je de HTTPS-website toe als nieuwe property. Via Search Console krijg je inzicht in hoe Google je website ziet. Je kan er onder meer in de gaten houden of je nieuwe HTTPS-pagina’s goed worden gecrawld en er geen indexeringsfouten opduiken.

Vermeld zowel de www- als de niet-www-varianten, zodat je uiteindelijk vier url’s in de Search Console hebt staan:

  • http://www.domein.be
  • https://www.domein.be
  • http://domein.be
  • https://domein.be

Vergeet ook niet opnieuw een sitemap toe te voegen voor de nieuwe property. Een sitemap is een bestand waarmee je Google en andere zoekmachines informeert over de structuur van je website. De zoekmachines gebruiken de informatie in dit bestand om je website efficiënter te crawlen.

Via Why No Padlock kan je controleren of er problemen zijn met de implementatie van je SSL-certificaat.

7. Verifieer je succesvolle HTTPS-migratie

Eenmaal je de migratie van HTTP naar HTTPS hebt afgerond, rest alleen nog een controle of alles goed werd omgezet. Ondanks je uitvoerige voorbereiding zijn er misschien toch nog pagina’s die onveilige elementen bevatten, waardoor de SSL-encryptie breekt. Met een online tool als Why No Padlock kan je snel controleren of er nog onveilige pagina’s op je website te vinden zijn.

beveiligingbusinesshttpstip

Gerelateerde artikelen

Volg ons

Het is Black Friday bij bol.com!

Het is Black Friday bij bol.com!

Deals scoren