SSL en certificaten
Het slotje in de adresbalk. Een certificaat zorgt dat het verkeer tussen je bezoeker en je site versleuteld is, en dat de browser kan bewijzen dat hij écht met jouw domein praat. Voor de meeste mensen is het goede nieuws dat je hier niets h
Geschreven voor: Klant, Reseller, Beheerder
Het slotje in de adresbalk. Een certificaat zorgt dat het verkeer tussen je bezoeker en je site versleuteld is, en dat de browser kan bewijzen dat hij écht met jouw domein praat. Voor de meeste mensen is het goede nieuws dat je hier niets hoeft te doen. Deze pagina legt uit wat er vanzelf gebeurt, en wat je doet als het toch niet lukt.
Beeld — Paneel → Hosting → Accounts → jouw account → SSL/TLS. Bovenaan staat de kiezer Certificaat voor: elk domein heeft een eigen certificaat. Schermafdrukken worden gemaakt metopenwolf designqcen staan in.wolf/designqc-captures/.
Wat er vanzelf gebeurt
Voeg je een domein toe aan je account, dan vraagt de server een certificaat aan bij Let's Encrypt zodra het domein naar deze server wijst. Dat kost meestal minder dan een minuut. Daarna wordt het vanzelf verlengd, ruim vóórdat het verloopt — een certificaat is negentig dagen geldig en wordt rond de dertig dagen vóór het einde vernieuwd.
Je hoeft er dus niets voor te doen, behalve één ding: je DNS moet naar deze server wijzen. Zolang je domein nog naar je oude hosting wijst, kan Let's Encrypt niet vaststellen dat jij het bent, en komt er geen certificaat.
De status bekijken
Onder Wat er nu staat zie je het certificaat dat de webserver op dit moment aanbiedt:
- Herkomst — automatisch (Let's Encrypt) of een certificaat dat jij zelf hebt geïnstalleerd.
- Uitgegeven aan — de domeinnamen die erop staan.
- Verloopt — de einddatum. Binnen dertig dagen wordt dat een waarschuwing.
corectl ssl list
corectl ssl list | grep jouwsite.nlZelf een certificaat aanvragen
Ging het bij het toevoegen van je domein mis — de DNS wees nog nergens heen, bijvoorbeeld — dan klik je gewoon Certificaat aanvragen zodra het wél klopt.
corectl ssl issue jouwsite.nlWat er onder water gebeurt: de server plaatst een klein bestand op http://jouwsite.nl/.well-known/acme-challenge/…, Let's Encrypt haalt het op, en als het klopt krijg je je certificaat. Daarom is het belangrijk dat je domein bereikbaar is op poort 80 en niet meteen alles doorstuurt.
Wildcard: één certificaat voor al je subdomeinen
Heb je veel subdomeinen (shop., blog., klant1., …) dan wil je één certificaat dat ze allemaal dekt: *.jouwsite.nl.
Dat kan alleen als de DNS-zone van je domein op deze server staat, want een wildcard wordt niet via een bestand op je website bewezen maar via een TXT-record in je DNS. De server zet dat record neer, wacht tot het zichtbaar is en haalt het daarna weer weg.
corectl ssl issue jouwsite.nl --wildcard
corectl ssl issue jouwsite.nl --no-wildcard # weer alleen het domein zelfIn het paneel staat dit onder Automatisch certificaat als Ook voor alle subdomeinen.
Staat je DNS bij je registrar of bij Cloudflare, dan gaat een wildcard hier niet — vraag dan per subdomein een gewoon certificaat aan, wat prima werkt.
Vernieuwen
Verlengen gebeurt vanzelf, met een timer op de server. Wil je het nu forceren — bijvoorbeeld omdat je net een subdomein hebt toegevoegd:
corectl ssl renew jouwsite.nl # dit ene certificaat
corectl ssl renew # alles wat aan de beurt isVerlengen loopt niet tegen limieten aan zolang je het niet in een lus zet. Let's Encrypt telt wel aanvragen per week per domein; blijf dus niet herhaaldelijk opnieuw aanvragen als iets niet werkt — los eerst de oorzaak op.
Je eigen certificaat installeren
Heb je een certificaat elders gekocht (een EV-certificaat, of eentje van je werkgever), dan installeer je dat onder Eigen certificaat installeren. Je hebt drie dingen:
| Veld | Wat het is |
|---|---|
| Certificaat | het certificaat zelf, in PEM — begint met -----BEGIN CERTIFICATE----- |
| Privésleutel | de bijbehorende sleutel, in PEM. Verlaat je browser alleen naar deze server |
| Tussencertificaten | de keten van de uitgever, als je die apart hebt gekregen |
Plak ze, of kies de bestanden. Het paneel controleert vóór het opslaan of het echt PEM is, of het certificaat niet al verlopen is, en of de sleutel bij het certificaat hoort. Klopt het paar, dan zie je Gecontroleerd: dit paar hoort bij elkaar.
corectl ssl install jouwsite.nl \
--cert-file ~/jouwsite.crt \
--key-file ~/jouwsite.key \
--chain-file ~/tussencertificaten.pemLet op: een eigen certificaat wordt niet automatisch verlengd. Zet zelf een herinnering; de server waarschuwt je dertig dagen van tevoren, maar hij kan het niet voor je oplossen. Wil je terug naar automatisch, vraag dan gewoon weer een Let's Encrypt-certificaat aan — dat overschrijft het eigen certificaat.
Als het niet lukt
| Wat je ziet | Wat het meestal is |
|---|---|
| Geen certificaat na het toevoegen van een domein | De DNS wijst nog niet naar deze server. Controleer met dig +short A jouwsite.nl. |
| "Timeout during connect" bij de aanvraag | Poort 80 is dicht, of een firewall bij je domein blokkeert het. |
| Browser: "certificaat is niet geldig voor deze naam" | Je bezoekt www.jouwsite.nl maar het certificaat staat alleen op jouwsite.nl. Voeg het subdomein toe aan het account, of vraag een wildcard aan. |
| Browser: "de verbinding is niet privé" na een eigen certificaat | De tussencertificaten ontbreken. Vul het derde veld. |
| "Deze sleutel hoort niet bij dit certificaat" | Je plakte de sleutel van een ándere aanvraag. Gebruik het paar dat samen is aangemaakt. |
| Wildcard mislukt met "no such zone" | De DNS-zone staat niet op deze server. Zonder zone geen wildcard. |
Alles staat goed maar de site blijft op http:// | Je site zelf stuurt niet door. Voor WordPress: zet de site-URL op https://. |
Controleren wat de wereld ziet:
echo | openssl s_client -connect jouwsite.nl:443 -servername jouwsite.nl 2>/dev/null \
| openssl x509 -noout -subject -datesZie ook
- DNS-records beheren — waar het A-record en de wildcard-validatie vandaan komen.
- WordPress installeren — installeer pas als
https://werkt. - Waar een website draait — welke server jouw domein serveert.