Certificaat installeren: NGINX

Om je certificaat te installeren in NGINX heb je drie bestanden nodig in PEM-formaat:

  • De eerder gegenereerde of gedownloade geheime sleutel, in dit voorbeeld met de naam private_key.pem.
  • Het verstrekte certificaat, in dit voorbeeld met de naam certificate.pem.
  • De verstrekte intermediate certificaten of chain, in dit voorbeeld met de naam chain.pem.

In dit voorbeeld gaan we er vanuit dat deze bestanden zijn geplaast in de directory /etc/ssl/nginx. NGINX wil graag de chain en het certificaat in één bestand, dit doe je met:

cd /etc/ssl/nginx
cat certificate.pem chain.pem > certificate_and_chain.pem

Beveilig ook je private key:

chown root /etc/ssl/nginx/private_key.pem
chmod og-rwx /etc/ssl/nginx/private_key.pem

Aan de server-section die je wilt beveiligen met HTTPS voeg je het volgende toe:

listen 443 ssl;
listen [::]:443 ssl;
ssl_certificate /etc/ssl/nginx/certificate_and_chain.pem;
ssl_certificate_key /etc/ssl/nginx/private_key.pem;

Let op: bovenstaande geeft alleen de basisconfiguratie. Het is waarschijnlijk aan te bevelen om eigen Diffie Hellman-parameters te genereren en daarnaar te verwijzen, oudere TLS-versies uit te schakelen en op te geven welke ciphers je wilt accepteren. Je kunt ook NGINX een header Strict-Transport-Security laten toevoegen om HTTPS blijvend te forceren voor je website.

Na herstart zou je website via HTTPS te benaderen moeten zijn.