Een SSL-certificaat versleutelt het verkeer tussen de browser van je bezoeker en de server waarop je website draait. Zonder een SSL-certificaat wordt alle informatie die iemand op je website invult, van wachtwoord tot bestelgegevens, als leesbare tekst over het netwerk verstuurd. In het kort zorgt een SSL-certificaat ervoor dat gegevens onderweg onleesbaar zijn voor iedereen die meekijkt.
SSL-certificaten in het kort
- SSL staat voor Secure Sockets Layer.
- HTTPS staat voor Hypertext Transfer Protocol Secure.
- TLS (Transport Layer Security) is de opvolger van SSL. De naam SSL is blijven hangen, de techniek erachter niet.
- Een SSL-certificaat regelt twee dingen: versleuteling van het verkeer en verificatie dat de server is wie hij zegt te zijn.
- Een basiscertificaat is gratis via bijvoorbeeld Let's Encrypt en bij de meeste hosters met één klik te activeren.
Wat is SSL precies?
SSL is een beveiligingsprotocol dat een versleutelde verbinding opzet tussen een webserver en een browser. Het werd in de jaren negentig ontwikkeld door Netscape. De techniek achter SSL is echter al jaren geleden vervangen en opgevolgd door TLS. De naam SSL is daarmee blijven hangen en wordt in de volksmond nog altijd zo genoemd. Vraag je om een SSL-certificaat dan krijg je in de praktijk dus een TLS-certificaat. Beide termen kom je tegen maar gaan dus over hetzelfde.
Wat is HTTPS?
HTTPS is het gewone HTTP-protocol met TLS-versleuteling eromheen. Je browser praat nog steeds dezelfde taal met de webserver alleen zit deze communicatie in een beveiligde envelop die onderweg niet geopend kan worden.
Het verschil tussen HTTP en HTTPS
| HTTP | HTTPS | |
|---|---|---|
| Versleuteling | Geen | Versleuteld |
| Poort | 80 | 443 |
| Adresbalk | Niet veilig | Slotje |
| Certificaat nodig | Nee | Ja |
| Meekijken mogelijk | Ja | Nee |
| Effect op SEO | Nadelig | Licht positief |
Het praktische verschil merk je op een openbaar wifi-netwerk. Vult iemand op een station een inlogformulier in op een HTTP-site, dan kan een ander op datzelfde netwerk dat wachtwoord meelezen. Bij HTTPS ziet die meelezer alleen dat er verbinding is met jouw domein, verder niets.
Hoe werkt een SSL-certificaat?
De verbinding komt tot stand in een paar stappen, de zogenaamde "handshake". Dit duurt in de praktijk slechts een fractie van een seconde. Om dit te realiseren dient het certificaat geactiveerd te worden op de website. Concreet verloopt dit als volgt:
- Aanvraag en uitgifte
Je vraagt een certificaat aan bij een certificaatautoriteit (CA). Die controleert of jij daadwerkelijk zeggenschap hebt over het domein en geeft het certificaat uit. - Installatie
Het certificaat komt op je webserver te staan, samen met de bijbehorende publieke sleutel. - De handshake
Een bezoeker opent je site. De server stuurt zijn certificaat, de browser controleert of het geldig is en of het is uitgegeven door een CA die hij vertrouwt. - Sleuteluitwisseling
Browser en server spreken samen een tijdelijke sessiesleutel af waarmee ze de rest van het gesprek versleutelen. - Versleuteld verkeer
Alles wat daarna over de lijn gaat is onleesbaar voor derden. - Einde sessie
De sessiesleutel wordt weggegooid. Het volgende bezoek begint met een nieuwe handshake.
Indien de handshake faalt, dan krijgt je bezoeker een waarschuwingsscherm te zien in plaats van je website. Hierover verderop in dit artikel meer.
Is HTTPS altijd veilig?
Dit is helaas een misverstand. Een slotje in de adresbalk van de browser betekent dat de verbinding versleuteld is. Over de bedoelingen van de eigenaar van de website zegt het niets. Phishingsites configureren net zo makkelijk een certificaat als jij en realiseren daarmee een beveiligde verbinding.
De versleuteling beschermt dus de communicatie tussen jou als gebruiker en de website maar zegt niet of deze deugt. Beoordeel daarom altijd zelf de domeinnaam in de adresbalk en doe onderzoek voordat je hiermee zaken doet.
Welke soorten certificaten zijn er?
Er zijn verschillende soorten SSL-certificaten beschikbaar, afhankelijk van je behoeften:
- Domein Validatie (DV): Deze certificaten bieden basis versleuteling en worden snel uitgegeven na verificatie van het eigendom van het domein.
- Organisatievalidatie (OV): Deze certificaten bieden een hoger niveau van beveiliging omdat ze naast domeinverificatie ook de identiteit van de organisatie controleren.
- Extended Validation (EV): Deze bieden het hoogste niveau van controle en beveiliging van de drie. Vroeger werd er met een EV certificaat een groene balk in de browser getoond. Deze wordt sinds 2019 niet meer vertoond omdat uit onderzoek bleek dat vrijwel niemand hierop lette. Een EV-certificaat is technisch niet veiliger dan een DV-certificaat waarmee het zichtbare voordeel is verdwenen en de investering vaak niet meer loont.
- Wildcard SSL: Hiermee kun je een onbeperkt aantal subdomeinen beveiligen met één certificaat.
- Multi-domein SSL: Hiermee kun je meerdere domeinen en subdomeinen beveiligen met één certificaat.
De versleuteling is bij alle vijf identiek. Bij OV- en EV-certificaten betaal je echter extra voor het validatietraject van de certificaatautoriteit.
Wat kost een SSL-certificaat?
In de meeste gevallen kost dit niets. Let's Encrypt geeft gratis DV-certificaten uit en vrijwel elke Nederlandse hoster heeft dat standaard beschikbaar, inclusief automatische verlenging. Let's Encrypt-certificaten zijn 90 dagen geldig en vernieuwen zichzelf.
Voor OV- en EV-certificaten moet je rekenen op enkele tientjes tot een paar honderd euro per jaar.
De bekendste foutmeldingen
Problemen met het SSL-certificaat van je website kunnen meerdere oorzaken hebben. Hieronder de meest voorkomende problemen die je tegenkomt:
NET::ERR_CERT_DATE_INVALID
Het certificaat is verlopen. Dit gebeurt bijna altijd bij handmatig geïnstalleerde certificaten waarvan de automatische verlenging niet werkt. Wij zien dit regelmatig langskomen bij websites zonder onderhoudscontract: het certificaat loopt af, de site wordt geblokkeerd door de browser en de eigenaar moet het uiteindelijk van een klant horen.
NET::ERR_CERT_COMMON_NAME_INVALID
Het certificaat is uitgegeven voor een andere domeinnaam. Dit kan in sommige gevallen te maken hebben met het configureren van het certificaat voor zowel de "www" als de "non-www" versie van de website.
NET::ERR_CERT_AUTHORITY_INVALID
De browser vertrouwt de uitgever niet, of de tussenliggende certificaten (de chain) zijn niet compleet geïnstalleerd.
SSL en SEO
Google bevestigde in 2014 al dat HTTPS meetelt als rankingfactor. Het gewicht ervan is echter klein dus verwacht geen enorme sprong in de resultaten van alleen het certificaat.
Het echte effect zit in wat eromheen gebeurt. Websites die geen gebruikmaken van een beveiligde verbinding worden vaak eerst met een waarschuwingsscherm getoond. Voor vrijwel elke bezoeker is dit gelijk het teken om te vertrekken laat staan je website actief te gebruiken. HTTPS is inmiddels een absolute basisvereiste voor je website.
Meer over SSL en SEO in onze complete SEO-checklist.
Certificaat is geregeld, en dan?
Een geldig certificaat is één onderdeel van een veilige website. Verouderde extensies, uitgestelde updates en zwakke wachtwoorden zijn in de praktijk veel vaker de oorzaak van een hack dan een ontbrekend slotje. In ons artikel over de basis voor een veilige Joomla- of WordPress-website staat wat daar verder bij komt kijken.
Twijfel je of jouw certificaat goed staat, of loopt er binnenkort een af? Wij controleren het kosteloos en zorgen dat de verlenging voortaan vanzelf gaat. Neem contact op en we kijken met je mee.
