Wil je een SSL-certificaat installeren op een Unmanaged VPS die draait op NGINX? Dan maak je eerst een CSR aan. Vervolgens bestel je het SSL-certificaat. Als je na de bestelling de certificaten hebt ontvangen, dan kun je de stappen in deze handleiding volgen om het SSL-certificaat te installeren.
Let op:Het is belangrijk dat poort 443 openstaat op jouw server, anders kun je geen verbinding met SSL tot stand brengen. In CentOS 7 is deze poort standaard gesloten. Lees in onze handleiding hoe je poort 443 opent.
Uploaden
- Download de .txt-bestanden die je per e-mail hebt ontvangen.
- Upload de certificaten naar de map op jouw server waarin de private key ook staat opgeslagen. Meestal is dit de map '/etc/ssl/certs/'.
- Maak met jouw VPS een verbinding via SSH.
- Ga naar de locatie waar je certificaat is opgeslagen. Dit doe je met het volgende commando:
cd /etc/ssl/certs/
- Voeg na het uploaden de certificaten 'SectigoRSADomainValidationSecureServerCA.crt' en 'USERTrustRSAAddTrustCA.crt' samen tot één bestand. Gebruik hiervoor het onderstaande commando. Hierin wijzig je 'jouwdomeinnaam.nl' in jouw domeinnaam.
cat www.domeinnaam.ext.crt SectigoRSADomainValidationSecureServerCA.crt USERTrustRSAAddTrustCA.crt > jouwdomeinnaam.nl-bundle.crt
Installeren
- Zorg er met de volgende stap voor dat NGINX verzoeken via https (poort 443) kan verwerken.
- Open het configuratiebestand van jouw domeinnaam. Gebruik hiervoor het onderstaande commando. Hierin wijzig je 'jouwdomeinnaam.nl' in jouw domeinnaam.
[root@server]# nano /etc/nginx/sites-available/jouwdomeinnaam.nl.conf
- Voeg de onderstaande informatie van het bestand toe:
server {
listen 443;
ssl on;
ssl_certificate /etc/ssl/certs/jouwdomeinnaam.nl-bundle.crt;
ssl_certificate_key /etc/ssl/certs/jouwdomeinnaam.nl.key;
server_name www.jouwdomeinnaam.nl;
access_log /var/log/nginx/nginx.vhost.access.log;
error_log /var/log/nginx/nginx.vhost.error.log;
location / {
root /home/www/jouwdomeinnaam.nl/public_html/;
index index.html;
}
}
Het controleren van de configuratiebestanden
Na het installeren van het SSL-certificaat moet NGINX de nieuwe configuratiebestanden inladen voordat deze werken.
- Controleer eerst of jouw NGINX configuratiebestanden juist zijn ingesteld. Gebruik hiervoor het onderstaande commando:
[root@server]# service nginx configtest
- Als je de juiste syntax hebt gebruikt, krijg je het volgende bericht te zien:
nginx: configuration file /etc/nginx/nginx.conf test is successful
- Laad de configuratiebestanden opnieuw in om het SSL-certificaat te laten werken. Gebruik hiervoor het volgende commando:
[root@server]# service nginx reload
Http-verbindingen redirecten naar https
Het is mogelijk om de website op de server alleen bereikbaar te maken via een beveiligde SSL-verbinding. Hiervoor maak je een extra serverblok aan bovenin het configuratiebestand voor jouw domeinnaam.
- Open het configuratiebestand van jouw domeinnaam. Gebruik hiervoor het onderstaande commando. Hierin wijzig je 'jouwdomeinnaam.nl' in jouw domeinnaam.
nano /etc/nginx/sites-available/jouwdomeinnaam.nl.conf
- Voeg de onderstaande informatie aan het begin van het bestand toe:
server {
listen 80;
server_name www.jouwdomeinnaam.nl;
return 301 https://$host$request_uri;
}
#SSL configuratie
server{
listen 443;
ssl on;
}
- Laad de configuratiebestanden opnieuw om de doorverwijzing te activeren. Gebruik hiervoor het volgende commando:
[root@server]# service nginx reload