Kennisbank ssl certificaten en https uitgelegd
gemiddeld 01 June 2026

ssl certificaten en https uitgelegd

SSL-certificaten en HTTPS uitgelegdDit artikel legt uit hoe SSL/TLS-certificaten en HTTPS werken, bedoeld voor ontwikkelaars die een website beveiligd willen
Ssl Certificaten En Https Uitgelegd
✦ ✦ ✦

Ssl Certificaten En Https Uitgelegd

HistorieCheck Redactie  ·  01 June 2026  ·  Geschiedenis

SSL-certificaten en HTTPS uitgelegd

Dit artikel legt uit hoe SSL/TLS-certificaten en HTTPS werken, bedoeld voor ontwikkelaars die een website beveiligd willen hosten bij Pixzo.

Vereisten

- Een domeinnaam die naar jouw server verwijst - Toegang tot de serverconfiguratie (root of sudo) - Basiskennis van de terminal - OpenSSL versie 1.1.1 of hoger (controleer met `openssl version`)

Stappen

1. Genereer een private key en CSR

Maak een private key van 2048 bits en een Certificate Signing Request (CSR). Vervang `jouwdomein.nl` door jouw domein.

```bash openssl req -new -newkey rsa:2048 -nodes -keyout jouwdomein.nl.key -out jouwdomein.nl.csr ```

Dit commando genereert een keypair en vraagt om organisatiegegevens. De domeinnaam (Common Name) moet exact overeenkomen met jouw website.

2. Dien de CSR in bij een Certificate Authority (CA)

Stuur het CSR-bestand (`jouwdomein.nl.csr`) naar een CA zoals Let's Encrypt, DigiCert of Sectigo. Let's Encrypt biedt gratis certificaten via Certbot. Installeer Certbot en voer uit:

```bash sudo apt-get install certbot -y sudo certbot certonly --standalone -d jouwdomein.nl -d www.jouwdomein.nl ```

Certbot vraagt om een e-mailadres en regelt de domeinverificatie automatisch. De certificaten verschijnen in `/etc/letsencrypt/live/jouwdomein.nl/`.

3. Download de volledige certificaatketen

Zorg dat je naast het domeincertificaat ook de intermediate certificates downloadt. Let's Encrypt regelt dit automatisch, maar bij andere CA's moet je dit handmatig doen. Het ketenbestand bevat alle certificaten tussen jouw domeincertificaat en de root-CA.

4. Configureer de webserver voor HTTPS

Voorbeeld voor Nginx (versie 1.18 of hoger). Plaats dit in het serverblock van jouw site-configuratie:

```nginx server { listen 443 ssl http2; server_name jouwdomein.nl www.jouwdomein.nl;

ssl_certificate /etc/letsencrypt/live/jouwdomein.nl/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/jouwdomein.nl/privkey.pem;

ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5;

root /var/www/jouwdomein.nl; index index.html index.htm; } ```

5. Stel HTTP-naar-HTTPS redirect in

Voeg een apart serverblock toe dat al het HTTP-verkeer doorstuurt naar HTTPS:

```nginx server { listen 80; server_name jouwdomein.nl www.jouwdomein.nl; return 301 https://$server_name$request_uri; } ```

Test de Nginx-configuratie voordat je herlaadt:

```bash sudo nginx -t sudo systemctl reload nginx ```

6. Schakel HSTS in (optioneel, alleen na grondige test)

Voeg deze regel toe aan het HTTPS-serverblock. Begin met `max-age=0` om risico's te minimaliseren:

```nginx add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always; ```

Alleen doen als HTTPS foutloos werkt voor alle pagina's en subdomeinen.

7. Stel automatische vernieuwing in

Certificaten zijn maximaal 398 dagen geldig sinds september 2020. Let's Encrypt-certificaten verlopen na 90 dagen. Voeg een cronjob toe die wekelijks controleert:

```bash sudo crontab -e ```

Voeg deze regel toe:

``` 0 3 1 /usr/bin/certbot renew --quiet && /usr/bin/systemctl reload nginx ```

Dit voert elke maandag om 03:00 een controle uit en herlaadt Nginx na een geslaagde vernieuwing.

Verificatie

Gebruik deze commandos om te controleren of de configuratie klopt:

```bash Controleer of HTTPS bereikbaar is curl -I https://jouwdomein.nl

Controleer certificaatdetails openssl s_client -connect jouwdomein.nl:443 -servername jouwdomein.nl 2>/dev/null | openssl x509 -noout -dates -issuer -subject

Controleer de hele keten curl --verbose https://jouwdomein.nl 2>&1 | grep -i "certificate" ```

Bezoek ook [www.ssllabs.com/ssltest/](https://www.ssllabs.com/ssltest/) voor een externe scan.

Veelgestelde problemen

Certificaat wordt niet vertrouwd Oorzaak: de certificaatketen is incompleet. Controleer of `ssl_certificate` verwijst naar het bestand met de volledige keten (fullchain.pem) en niet alleen naar het domeincertificaat.

NET::ERR_CERT_DATE_INVALID Oorzaak: certificaat verlopen of systeemtijd onjuist. Controleer de datum (`date` commando) en vernieuw het certificaat minstens 30 dagen voor vervaldatum.

HTTP werkt, HTTPS geeft fout 404 Oorzaak: de `root` en `index` paden ontbreken in het HTTPS-serverblock of verwijzen naar een andere directory. Kopieer deze regels van het HTTP-blok naar het 443-blok.

— ✦ —
← Terug naar kennisbank