Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriel:comment_creer_un_certificat_ssl [Le 28/11/2010, 04:30]
12.168.203.132 UInJLkdUCfFvvKQIqO
tutoriel:comment_creer_un_certificat_ssl [Le 01/09/2022, 00:09] (Version actuelle)
moths-art Passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-dRLbzs  ​<a href="http://tttmfbtyvnve.com/">tttmfbtyvnve</a>, [url=http://gzhielonxefd.com/]gzhielonxefd[/url], [link=http://pjabcetjqmyc.com/]pjabcetjqmyc[/link], http://xjovajyofnwk.com/+{{tag>​trusty serveur sécurité tutoriel}} 
 + 
 +---- 
 + 
 +====== Comment créer un certificat SSL ? ====== 
 + 
 + 
 + 
 +===== Introduction ===== 
 + 
 +Dans plusieurs documents du wiki, on aborde la question de la création de certificat SSL. 
 + 
 +Il existe beaucoup de sites expliquant comment créer un certificat SSL. Voici une technique qui fonctionne mais dans laquelle je ne donne pas de détails. 
 +===== Pré-requis ===== 
 + 
 +Le paquet ''​openssl''​ doit être installé par la commande : 
 + 
 +<code> 
 +sudo apt-get install openssl 
 +</​code>​ 
 + 
 + 
 +===== Marche à suivre ===== 
 + 
 +==== Clef privée du serveur ==== 
 + 
 +Placez-vous dans le répertoire ''/​etc/​ssl''​ et créez la clé : 
 +<​code>​ 
 +cd /etc/ssl 
 +sudo openssl genrsa -out server.key 2048 
 +</code> 
 + 
 +Cette commande va créer la clé privée avec l'​algorithme RSA 2048 bits. 
 + 
 +==== Demande de signature du certificat ==== 
 + 
 +Ensuite il faut générer un fichier de « demande de signature de certificat », en anglais CSR : Certificate Signing Request ​ : 
 + 
 +<​code>​ 
 +sudo openssl req -new -key server.key -out server.csr 
 +</​code>​ 
 + 
 +Vous allez devoir répondre à un certain nombre de questions. Veillez surtout à mettre le nom du serveur tel qu'il est appelé de l'​extérieur dans le champ « Common Name » (par exemple : "www.example.com"​). 
 + 
 +Optionnel : pour visualiser le contenu du fichier généré : 
 +<code> 
 +openssl req -text -noout -in server.csr 
 +</code> 
 +==== Signature du certificat ==== 
 + 
 + 
 +Enfingénérez ou récupérez le certificat signé au format x509 suivant la méthode 1 ou 2 : 
 +  - certificat auto-signé pour 365 jours (1 an) :<​code>​ 
 +sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt 
 +</​code>//​Remarque : ce certificat n'est authentifié par aucune autorité, vous aurez donc un message d'​avertissement quand vous vous connectez au serveur. // 
 +  - certificat signé par une autorité tierce, par exemple : 
 +    * [[https://www.cacert.org|CACert]] : copier/coller la demande (le fichier server.csr) à l'​autorité qui va signer le certificat à utiliser ([[https://​www.cacert.org/​account.php?​id=10|ici pour cacert]]). 
 +    * [[https://​letsencrypt.org/​|Let'​s Encrypt]], avec l'​option --csr du client letsencrypt (CSR au format DER : option // -outform der// pour openssl) 
 + 
 +===== Usage avancé ===== 
 + 
 +==== Usage non interactif ==== 
 + 
 +Pour éviter de répondre aux questions de la localisation jusqu'​au domaine, il est possible de passer l'​argument subject à la commande openssl. Ajouter le paramètre ​: //-subj "/​OU=Domain Control Validated/​CN=exemple.fr"//​ 
 + 
 +<note help>//​Domain Control Validated// indique simplement que seule la vérification du domaine est effectuée. Ce paramètre peut être omis. Il existe une vérification DV (celle indiquée) et EV, plus complète. Plus de détails sur [[https://​certsimple.com/blog/​are-ev-ssl-certificates-worth-it|ce blog]] (en).</note> 
 + 
 +==== Paramétrage fin de la CSR ==== 
 + 
 +Les CSR permettent de valider plusieurs domaines avec un même certificat. Pour l'​utiliser,​ créer un fichier //​openssl_SAN.cnf//​ comme-suit : 
 +<​file>​ 
 +[req] 
 +req_extensions = v3_req 
 +distinguished_name = req_distinguished_name 
 + 
 +[req_distinguished_name] 
 + 
 +[v3_req] 
 +# Extensions to add to a certificate request 
 +basicConstraints = CA:FALSE 
 +keyUsage = digitalSignaturekeyEncipherment 
 + 
 +[SAN] 
 +subjectAltName=DNS:exemple.fr,​DNS:​www.exemple.fr 
 +</file> 
 + 
 +Et ajouter les paramètres suivants à la commande openssl : //-config openssl_SAN.cnf -reqexts SAN// 
 + 
 +===== Voir aussi ===== 
 + 
 +  * **(fr)** [[https://​www.magdiblog.fr/​divers/​creer-une-passerelle-securisee-avec-un-raspberry-pi/​|Qu'​est ce qu'un certificat, comment créer une CA ainsi qu'un exemple d'​authentification par certificat client]] 
 +  * **(en)** [[https://​www.tty1.net/​blog/​2015/​using-letsencrypt-in-manual-mode_en.html|Utilisation détaillée avec Let's Encrypt]] 
 + 
 +---- 
 + 
 +// Contributeur 5: [[utilisateurs:​Jeremy]] // 
  • tutoriel/comment_creer_un_certificat_ssl.1290915001.txt.gz
  • Dernière modification: Le 18/04/2011, 14:50
  • (modification externe)