Al langer was ik van plan om bij meerdere websites die ik beheer https te activeren. Deels omdat dat veiliger is (of in ieder geval bezoekers een veiliger gevoel geeft), deels omdat zoekmachines https-websites mogelijk beter waarderen. Mijn webhost Antagonist maakt de overstap naar https makkelijk door gratis SSL beschikbaar te stellen via Let’s Encrypt.
Basis-SSL
Deze basisversie van een SSL-certificaat is alleen gericht op encryptie, zodat het verkeer van en naar je website via een versleutelde verbinding gaat. Dit herken je aan een slotje in de adresbalk van je browser. Validatie van identiteit is bij dit eenvoudige certificaat niet inbegrepen, dus er wordt niet gecheckt of een domeinnaam hoort bij de organisatie die aangeeft er de eigenaar van te zijn. Hiervoor heb je een uitgebreider SSL-certificaat nodig, waar hogere jaarlijkse kosten aan verbonden zijn.
Activeren van SSL
Bij mijn webhost staat SSL standaard ‘aan’, maar je moet zelf nog zorgen dat bezoekers automatisch naar https-pagina’s gestuurd worden. Dit kan bijvoorbeeld met een enkele redirect-regels in een .htaccess-bestand.
Als je een cms als WordPress gebruikt, kun je hier ook een plugin voor gebruiken. De plugin Really Simple SSL neemt je bijna al het werk uit handen. De plugin zorgt ervoor dat pagina’s worden geredirect naar https-versies, en dat alle verwijzingen naar http-bestanden in je content (zoals afbeeldingen) ook worden omgezet in veilige adressen.
Vreemd genoeg had ik één site waarbij deze plugin ervoor zorgde dat het WordPress-dashboard niet meer goed laadde. Kennelijk was er een conflict met een andere plugin. Hier heb ik voor een alternatief gekozen: SSL Insecure Content Fixer.
Http-verwijzingen aanpassen
Browsers tonen pas een groen slotje bij een https-pagina als alle onderdelen van een pagina versleuteld zijn. Het kan voorkomen dat een browser op een https-pagina toch geen slotje of een slotje met een waarschuwingsteken toont. Dan heeft hij nog ‘onveilige’ http-verwijzingen op de pagina gevonden en is er sprake van ‘mixed content’ ofwel gemengde inhoud. Mogelijk wordt die inhoud dan geblokkeerd.
Bovengenoemde plugins regelen bijna alles voor je, maar soms moet je handmatig nog http-verwijzingen aanpassen. Die kun je op verschillende manieren opsporen. Zo schijnt de Pro-versie van Really Simple SSL een check voor je te doen. Zelf heb ik de Web Developer add-on voor de browser Mozilla Firefox gebruikt. Als je hierbij de ‘Web Console’ opent, en dan op de tab ‘Beveiliging’ klikt, zie je welke gemengde (onveilige) inhoud er is aangetroffen.
Nu is dat nog een kwestie van de betreffende verwijzingen aanpassen. In de gevallen die ik tegenkwam stonden de http-verwijzingen in het stylesheet van het gebruikte WordPress-thema. Zo werd er een achtergrondplaatje ingeladen met een ‘absolute’ url die begon met http. Ook vond ik in de css een http-link naar een Google Font. Nadat ik ook deze verwijzingen met https had laten beginnen, beloonde de browser dit keurig met een groen slotje.