Comment installer un certificat SSL sur Nginx en Ubuntu 20.04
Pour utiliser le HTTPprotocole S sur un site web, vous devez obtenir le certificat TLS/SSL et configurer Nginx. Vous pouvez obtenir un certificat auprès d'une autorité de certification de confiance pour de l'argent dans un grand nombre de services. La version gratuite est possible grâce au Let's Encrypt service et est décrit ici à l'étape 3.Vous devez également effectuer Essentiel Nginx paramétrage. Si vous utilisez des certificats auto-signés, le navigateur affichera une erreur lors de la vérification de la sécurité.
Dans le Serverspace vous pouvez créer un serveur avec l'application déjà installée "Nginx".
Configuration SSL de base
Si vous avez acheté un certificat SSL, vous devez créer une chaîne complète de votre certificat à partir de la clé publique reçue et de la chaîne des centres de certification. Pour ce faire, placez le contenu du fichier de chaîne à la fin du fichier de clé publique. Les fichiers peuvent avoir le .pem or .crt extension.
cat cert.pem chain.pem > fullchain.pem
Copiez maintenant les fichiers sur votre serveur. Un bon choix est de mettre la clé privée (.key ou .pem) sur le /etc/ssl/prive/ dossier, et le chaîne complète.pem à la /etc/ssl/certs/.
Ouvrez maintenant le fichier de configuration de votre hôte virtuel (/etc/nginx/sites-available/domain-name.com) et ajoutez les lignes suivantes :
server {
listen 443 ssl;
server_name domain-name.com; # Your website's domain name
ssl_certificate /etc/ssl/certs/fullchain.pem; # Path to the full chain of your SSL certificate
ssl_certificate_key /etc/ssl/private/privkey.pem; # Path to the private key of your SSL certificate
}
N'oubliez pas de régler le racine et indice parameters dans cette section, tout comme dans le HTTP .
Recommencer Nginx.
systemctl restart nginx
Vous pouvez maintenant vérifier votre certificat SSL et votre configuration à l'aide de https://www.ssllabs.com/ssltest/ et procéder à des réglages qui ne correspondent pas à la classe A.
Désactivation des protocoles obsolètes et activation de la priorité pour les chiffrements de serveur
Spécifiez l'utilisation des versions 1.2 et 1.3 de TLS et la priorité des chiffrements de serveur. Ouvrez le / Etc /nginx/nginx.conf fichier et corrigez ou ajoutez les lignes suivantes dans le http .
http {
...
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
...
}
Recommencer Nginx.
systemctl restart nginx
Rediriger depuis HTTP à HTTPS
Pour configurer le site pour qu'il fonctionne uniquement sur HTTPS vous devez ajouter une redirection avec HTTP. Ouvrez le fichier de configuration de votre hôte virtuel (/etc/nginx/sites-available/nom-de-domaine.com), supprimez le HTTP section:
server {
listen 80;
…
}
Maintenant, ajoutez-en un nouveau avec le pa suivantramètres :
server {
listen 80;
server_name domain-name.com; # Your website's domain name
return 301 https://$host$request_uri; # Redirect
}
Redémarrez maintenant Nginx.
systemctl restart nginx