Certificaat

Een certificaat (voluit: TLS-certificaat of X.509-certificaat) is een digitaal document dat een publieke sleutel koppelt aan een domeinnaam of organisatie. Het bewijst dat je echt praat met de server die je denkt te benaderen, en maakt versleuteling mogelijk.

Wat staat er in een certificaat?

  • Domeinnaam (bijv. linuxtips.nl)
  • Publieke sleutel
  • Geldigheidsperiode (van/tot)
  • Uitgevende certificaatautoriteit (CA)
  • Digitale handtekening van de CA

Certificaatautoriteit (CA)

Een CA is een vertrouwde partij die certificaten uitgeeft en ondertekent. Browsers en besturingssystemen bevatten een lijst van vertrouwde CA's. Bekende CA's zijn:

  • Let's Encrypt — gratis, geautomatiseerd
  • DigiCert, Sectigo, GlobalSign — commercieel

Certificaat bekijken

# Certificaat van een website opvragen
openssl s_client -connect linuxtips.nl:443 </dev/null 2>/dev/null \
  | openssl x509 -noout -text

# Vervaldatum controleren
openssl s_client -connect linuxtips.nl:443 </dev/null 2>/dev/null \
  | openssl x509 -noout -dates

# Lokaal certificaatbestand inspecteren
openssl x509 -in certificaat.pem -noout -text

Zelfondertekend certificaat

Een self-signed certificate is ondertekend door jezelf in plaats van een CA. Browsers vertrouwen het niet standaard, maar het is nuttig voor interne services of testomgevingen.

openssl req -x509 -newkey rsa:4096 -keyout sleutel.pem \
  -out cert.pem -days 365 -nodes

Zie ook

  • tls — het protocol dat certificaten gebruikt
  • pki — de infrastructuur rondom certificaten
  • gpg — alternatief systeem voor digitale handtekeningen
  • openssl — certificaten beheren op de commandoregel
beveiligingnetwerktls