Beveilig de hele website met SSL - waar moet je op letten

De meeste CA's (uitgevers van certificaten) adviseren tegenwoordig om niet alleen de pagina's waarop vertrouwelijke informatie wordt achtergelaten, maar de hele website met SSL te beveiligen. Dit wordt inmiddels door onder andere grote organisaties als Google, Twitter en Facebook gehanteerd. Niet alleen is dit veiliger, ook verhoogt het de positie van je website in de zoekresultaten van Google. In dit artikel beschrijven we waar je op moet letten, om te voorkomen dat het juist negatieve gevolgen heeft.

Om te beginnen heb je voor het opzetten van de SSL verbinding een SSL certificaat nodig. Je kunt deze online aanvragen.

Certificaat aanvragen

SSL en zoekmachines

De volgende tips kunnen voorkomen dat het instellen van https:// op de gehele website negatieve gevolgen heeft voor de vindbaarheid van een website vanuit de verschillende zoekmachines.

Het kan zo zijn dat door het implementeren van SSL voor de gehele website er voor de zoekmachines twee versies van je website bestaan met dezelfde inhoud; een beveiligde versie en een onbeveiligde versie. In dit geval wil je dat klanten ook vanuit de zoekmachine altijd naar je met SSL beveiligde website worden gestuurd. Dit probleem kan op een aantal manieren opgelost worden:

  • Vertel de zoekmachine welke inhoud zij moeten opnemen in de index

Dit kan door van de https pagina voor de website een canonical URL te maken. Een canonical pagina is de pagina die de voorkeur krijgt uit meerdere pagina's die sterk op elkaar lijken. Je stelt deze als volgt in: Voeg een rel="canonical" link toe aan elk <head> segment voor de HTML pagina's die voorrang moeten krijgen boven de gelijknamige pagina's. Je kunt dan als volgt een link toevoegen aan de betreffende pagina: <link rel="canonical" href="https://www.domeinnaam.nl/voorbeeld"/>. Als er op beide pagina's ook inhoud staat maak je van een van de twee pagina's als volgt een canonical URL: <link rel="canonical" href="https://www.domeinnaam.nl/voorbeeld"/>. Deze plaats je op het <head> segment van de https://www.domeinnaam.nl/voorbeeld pagina.

  • Stel de XML Sitemap zo in dat deze naar de https versie van de inhoud verwijst

Een sitemap zorgt ervoor dat er bij het crawlen (het doorzoeken van webpagina's door zoekmachines) de beveiligde pagina's beter worden gevonden dan de onbeveiligde.

Deze wijzigingen zorgen ervoor dat bezoekers vanuit de zoekmachine meteen doorgestuurd worden naar de https website. Zo komt de bezoeker sneller op je website terecht en kunnen 'man in the middle' aanvallen worden voorkomen omdat de website niet wordt aangeboden op http.

Omdat door het gebruik van https er voor zoekmachines twee versies kunnen bestaan dient de robots.txt file aangeboden te worden in beide directories; die voor http en die voor https. Met een robots.txt file kun je ervoor zorgen dat de crawlers die zoekmachines gebruiken bepaalde delen van je website overslaan; bijvoorbeeld de delen waarop je klanten vertrouwelijke informatie achterlaten.

  • Maak een redirect aan naar je https website

Laat al het verkeer voor je website doorsturen van http naar https door een permanente (301) redirect in te stellen.

  • Stel een preferred domein in voor Google

In Search Console (voorheen Webmaster Tools) van Google kun je een preferred domein instellen. Het preferred domein is de versie van je website die door Google wordt geïndexeerd. Hier kun je de https versie van de website opgeven.

Social Media

Ook voor social media heeft de verandering gevolgen. De Facebook likes springen bijvoorbeeld in één keer terug naar 0 wanneer de URL wordt aangepast. Om dit voor te zijn moet er in de metadata van je website een og:url tag opgenomen worden.

Laadtijd

Een argument tegen het beveiligen van de gehele website, is dat het de laadtijd van de website negatief kan beïnvloeden. Een beveiligde pagina laadt langzamer dan een onbeveiligde pagina omdat de browser bij de met SSL beveiligde pagina moet wachten op de bevestiging van de CA dat het certificaat geldig is. Echter werken alle CA's eraan om deze laadtijd zo kort mogelijk te maken, en zo het verschil met onbeveiligde pagina's te verkleinen. Een methode die de laadtijd verkort is het gebruik van OCSP Stapling. Hierbij wordt de geldigheid van een certificaat gecontroleerd door de browser waardoor er geen aparte verbinding gemaakt hoeft te te worden met de website van de CA. Meer informatie over het instellen van OCSP Stapling vind je hier.

Secure Cookies

Cookies zijn kleine tekstbestandjes die op de harde schijf van een computer worden geplaatst wanneer een website wordt bezocht. Cookies zijn vooral bedoeld om gebruikers van elkaar te onderscheiden, en zorgen er bijvoorbeeld voor dat de bezoeker van een website ingelogd blijft of dat de inhoud van een winkelmandje bewaard blijft. Daarnaast zijn zij een handig middel voor adverteerders om advertenties op het surfgedrag van gebruikers af te kunnen stemmen.

Bezoekers gebruiken vaak geen https wanneer zij het webadres opgeven in de adresbalk en daarom zijn hun gegevens tijdens het maken van de verbinding niet beschermd. Wanneer je je website beveiligt is het daarom raadzaam om ook de cookies over een beveiligde verbinding te versturen.

HTTPS afdwingen

Stel daarom redirects van HTTP naar HTTPS in om ervoor te zorgen dat bezoekers van een website altijd gebruik maken van een beveiligde verbinding. 

Wanneer je gebruik maakt van HTTP Strict Transport Security (HSTS) wordt de browser geinstrueerd verbinding te maken met een door SSL beveiligde pagina in plaats van een onbeveiligde pagina. Als er geen beveiligde verbinding mogelijk is krijgt de bezoeker een foutmelding te zien, en wordt de verbinding geweigerd. Daarnaast kan het gebruik van HSTS 'man in the middle' aanvallen voorkomen, omdat je website op deze wijze niet omgeleid kan worden naar een onbeveiligde pagina. 

SSLCheck

De SSLCheck controleert of je certificaat goed op je server is geïnstalleerd en of er mogelijke problemen zijn.