====== Création certificat SSL ====== ---- - [[https://www.remipoignon.fr/generez-un-certificat-ssl-auto-signe-pour-passer-en-https/|Article de référence]] - [[https://www.webhi.com/how-to/fr/comment-installer-un-certificat-ssl-sur-un-serveur-nginx/|Article de référence]] openssl genrsa -out certificat.key 4096 openssl genrsa -aes256 -out certificat.key 4096 openssl rsa -in certificat.key -out certificat.decrypted.key openssl req -new -key certificat.lock -out certificat.csr openssl x509 -req -days 365 -in certificat.csr -signkey certificat.lock -out certificat.crt ===== Étape 1 : Générer une clé privée et une demande de signature de certificat (CSR). ===== Pour générer une clé privée et une CSR, vous pouvez utiliser l’outil openssl en ligne de commande. Voici un exemple de la procédure à suivre : # Générer un certificat auto-signé sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /path/to/your/private.key -out /path/to/your/certificate.crt Country Name (2 letter code) []: State or Province Name (full name) []: Locality Name (eg, city) []: Organization Name (eg, company) []: Organizational Unit Name (eg, section) []: Common Name (eg, fully qualified host name) []: your_ip_address Email Address []: Cette commande génère un certificat X.509 auto-signé à l’aide d’OpenSSL. Voici ce que fait chaque option : * req : Cette sous-commande spécifie que nous voulons utiliser la gestion de demande de signature de certificat (CSR) X.509. * -x509 : Cette option spécifie que nous voulons créer un certificat auto-signé au lieu de générer une demande de certificat. * -nodes : Cette option spécifie que nous ne voulons pas chiffrer la clé privée. * -days 365 : Cette option spécifie que le certificat sera valide pendant 365 jours. * -newkey rsa:2048 : Cette option spécifie que nous voulons générer une nouvelle clé RSA de 2048 bits. * -keyout /path/to/your/private.key : Cette option spécifie où enregistrer le fichier de clé privée. * -out /path/to/your/certificate.crt : Cette option spécifie où enregistrer le fichier de certificat. ===== Étape 2 : Obtenir un certificat SSL ===== La première étape consiste à obtenir un certificat SSL auprès d’une autorité de certification (CA) de confiance. Vous pouvez acheter un certificat SSL auprès d’un fournisseur tiers, ou vous pouvez générer un certificat SSL gratuit à l’aide de Let’s Encrypt. ===== Étape 3 : Installer NGINX ===== Vous devez avoir le serveur web NGINX installé sur votre système. Si ce n’est pas déjà fait, vous pouvez le faire en exécutant la commande suivante : $ sudo apt-get update $ sudo apt-get install nginx ===== Étape 4 : Configurer NGINX pour utiliser SSL ===== Ensuite, vous devez configurer NGINX pour utiliser SSL. Pour ce faire, suivez ces étapes : Créez un nouveau répertoire pour votre certificat SSL : $ sudo mkdir /etc/nginx/ssl Copiez votre certificat SSL et votre clé privée dans le nouveau répertoire : $ sudo cp /chemin/vers/votre/certificat.crt /etc/nginx/ssl/ $ sudo cp /chemin/vers/votre/clé.privée /etc/nginx/ssl/ Ouvrez le fichier de configuration NGINX dans un éditeur de texte : $ sudo nano /etc/nginx/sites-available/default Ajoutez les lignes suivantes au fichier, à l’intérieur du bloc server : listen 443 ssl; ssl_certificate /etc/nginx/ssl/certificat.crt; ssl_certificate_key /etc/nginx/ssl/clé.privée; Enregistrez et fermez le fichier. Testez le fichier de configuration NGINX : $ sudo nginx -t S’il n’y a pas d’erreurs, rechargez NGINX : $ sudo service nginx reload