Créer une demande de certification

Dernière mise à jour de l'article : 06/01/2016.

Comme nous l'avons vu précédemment, la certification X.509 est un sujet dense. Passons à la pratique.

Logo de OpenSSL
Logo de OpenSSL

Cet article décrit les étapes successives aboutissant à la création d'une demande de certification X.509 (certificate signing request, ou CSR) à soumettre à une autorité de certification. Pour cela, nous utiliserons OpenSSL sur une distribution Debian GNU/Linux. OpenSSL est un logiciel libre très répandu permettant de déployer un grand nombre de fonctionnalités cryptographiques, notamment liées au protocole de sécurisation TLS.

Informations techniques

Nom du programme : OpenSSL
Version utilisée : 1.0.1k
Licence : BSD
Éditeur : The OpenSSL Project
Site web : www.openssl.org

Distribution utilisée : Debian GNU/Linux 8.2 « Jessie »

Article Wikipédia : https://fr.wikipedia.org/wiki/OpenSSL
Certification X.509 (article Wikipédia) : https://fr.wikipedia.org/wiki/X509

Création d'une clef privée

Cette étape ne pose aucun problème particulier. Il suffit d'exécuter la commande suivante pour obtenir une clef privée de 4096 bits nommée EXAMPLE.COM_privatekey.pem :

openssl genrsa -out EXAMPLE.COM_privatekey.pem 4096

Il est possible d'en limiter les droits d'accès par la commande suivante :

chmod 400 EXAMPLE.COM_privatekey.pem

La seule vraie difficulté est d'assurer la confidentialité de ce fichier dans le temps.

Générer une demande de certification simple

Là encore, pas de problème particulier. Il suffit d'exécuter la commande suivante pour obtenir la demande de certification nommée EXAMPLE.COM_csr.pem :

openssl req -new -key EXAMPLE.COM_privatekey.pem -out EXAMPLE.COM_csr.pem

Plusieurs informations liées à notre identité sont demandées :

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:France
Locality Name (eg, city) []:Paris
Organization Name (eg, company) [Internet Widgits Pty Ltd]:MyCompany
Organizational Unit Name (eg, section) []:MySection
Common Name (e.g. server FQDN or YOUR name) []:EXAMPLE.COM
Email Address []:admin@EXAMPLE.COM

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

Il est aussi possible de générer la demande de certificat en une seule commande :

openssl req -new -key EXAMPLE.COM_privatekey.pem -subj "/C=FR/ST=France/L=Paris/O=MyCompany/OU=MySection/CN=EXAMPLE.COM/emailAddress=admin@EXAMPLE.COM" -out EXAMPLE.COM_csr.pem

Voire même de coupler la création de la clef privée avec la génération de la demande de certificat :

openssl req -new -newkey rsa:4096 -nodes -keyout EXAMPLE.COM_privatekey.pem -subj "/C=FR/ST=France/L=Paris/O=MyCompany/OU=MySection/CN=EXAMPLE.COM/emailAddress=admin@EXAMPLE.COM" -out EXAMPLE.COM_csr.pem

À noter que les informations données pourront être soumises à vérification par l'autorité de certification.

Le champ « Common Name », ou CN, requiert une attention toute particulière. Il s'agit du nom de domaine pour lequel vous souhaitez obtenir le certificat X.509. Ici, EXAMPLE.COM est donné. Mais cela aurait pu être www.EXAMPLE.COM, ftp.EXAMPLE.COM, etc. Le certificat sera valable uniquement pour le domaine donné. Renseigner EXAMPLE.COM n'implique pas que les sous-domaines soient également concernés. Renseigner *.EXAMPLE.COM est possible ; il s'agit d'une wildcard qui est valable pour tous les sous-domaines, mais pas pour le domaine racine.

Ceci fait, on peut visualiser la demande avec la commande suivante :

openssl req -text -noout -in EXAMPLE.COM_csr.pem

Ce qui donne :

Certificate Request:
    Data:
        Version: 0 (0x0)
        Subject: C=FR, ST=France, L=Paris, O=MyCompany, OU=MySection, CN=EXAMPLE.COM/emailAddress=admin@EXAMPLE.COM
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (4096 bit)
                Modulus:
                    00:b6:3d:7a:27:3b:c1:93:ce:84:b7:4f:09:14:63:
                    d1:14:9d:51:e0:dd:45:9e:be:e0:58:dc:e7:8a:1d:
                    cd:a9:0c:20:f6:1a:9b:af:c6:b1:8c:69:6f:bd:1f:
                    8e:b5:c5:3f:f0:c1:07:d5:7a:af:48:39:67:28:d7:
                    0f:4f:cd:72:3d:fd:d2:d0:8b:d6:77:be:75:16:26:
                    f0:69:e8:83:aa:90:9f:e2:9a:13:e0:86:89:5a:1c:
                    3a:c2:7a:f4:ff:50:ca:ff:04:2e:75:a2:b6:75:98:
                    36:1e:06:98:8b:0c:ba:3c:7e:46:6e:29:dc:c0:da:
                    f6:da:24:b8:90:37:f9:3b:da:07:b7:bc:10:1e:05:
                    45:0b:00:cf:73:6c:e3:80:2b:15:89:b8:ce:d5:15:
                    41:d2:c3:94:36:58:42:44:11:76:5f:9b:22:d6:8e:
                    e1:ee:1b:99:27:d0:b9:be:19:33:d4:0e:88:ed:69:
                    2f:20:f3:25:21:ff:95:f8:42:99:e4:f6:e5:11:47:
                    89:a4:d2:94:cb:11:fe:35:88:bd:93:a4:01:6f:22:
                    eb:86:e1:68:4c:16:85:12:ea:e7:37:e6:1c:4b:b2:
                    14:20:3c:3f:75:23:16:d3:ee:dc:5d:cd:17:c4:ce:
                    43:d9:0e:38:5e:44:13:9e:d1:14:5a:f2:df:2f:43:
                    07:1a:88:2f:5d:16:06:5f:e8:59:4f:c3:d3:e3:54:
                    ba:66:d1:61:41:78:dd:90:ab:c2:62:e6:a1:ee:7d:
                    4b:d9:41:cc:78:5f:af:e9:14:49:23:3a:55:03:1f:
                    a3:f8:7f:e2:32:cc:57:22:c1:8c:12:a4:c5:31:cc:
                    60:71:cc:99:9b:a8:1c:9c:c5:55:fb:69:a8:5e:47:
                    af:6d:27:7d:b8:c9:57:b8:0e:b2:7a:f6:0a:2b:84:
                    8a:d1:3d:f8:de:c3:b3:f9:51:7a:1e:3d:0b:9b:36:
                    68:ff:cc:35:ec:d3:64:25:fd:c8:56:8f:7b:cc:cd:
                    2a:09:f3:fa:92:fc:23:39:ae:90:58:2b:8f:20:0d:
                    59:a8:48:1e:f8:8c:20:75:0e:50:79:e7:fe:cc:1e:
                    6b:28:68:98:b2:26:46:d7:a8:83:47:1b:a5:39:ff:
                    a0:38:fb:45:12:84:15:62:f0:5c:eb:15:b1:64:6f:
                    ed:9d:73:fd:38:c6:e3:88:2f:c0:ee:ea:fa:7e:17:
                    3d:45:0d:38:b4:33:0f:5e:b6:54:4a:76:70:92:7f:
                    eb:40:2b:53:b6:86:57:a3:06:9d:f4:99:49:3f:98:
                    f3:50:ec:ff:be:49:52:cd:05:9f:fb:d9:e9:b5:59:
                    32:92:ba:4f:b7:c9:a2:5f:02:2c:1d:ad:24:7f:be:
                    f2:6c:39
                Exponent: 65537 (0x10001)
        Attributes:
            a0:00
    Signature Algorithm: sha256WithRSAEncryption
         7d:e6:b6:f7:37:f5:9d:8a:e8:f8:0b:a2:f8:e3:4a:77:dc:f3:
         f1:1c:e9:bf:ce:5e:36:e9:0d:31:2e:da:74:98:fb:fb:d9:0b:
         61:9b:c1:40:9e:f8:99:a0:82:8b:6d:cb:bd:79:ef:16:6d:24:
         aa:8c:a7:4d:27:3a:4c:b7:35:c1:96:bc:73:4a:cf:02:20:09:
         de:8d:c2:47:ce:ed:40:cb:18:d7:f7:7e:2a:c7:f0:0a:8e:06:
         a7:2b:ec:c7:df:3e:79:1b:6d:dd:2a:cd:e8:5d:93:62:66:29:
         11:49:28:72:92:83:38:01:cd:ea:c3:2c:a1:ed:f4:c5:b3:01:
         ef:46:82:f4:ec:23:77:2a:23:da:8c:0a:7e:6d:1f:c4:55:e6:
         c8:a7:3a:32:e5:fd:f9:5f:5f:b6:cf:40:38:ed:e9:cc:bf:f0:
         ca:7c:04:a5:76:e9:ac:f9:ee:81:c5:e6:6b:63:94:8b:64:1f:
         4e:d4:ee:6e:e9:b4:9a:76:ae:29:cd:9c:fe:db:52:84:f1:d3:
         06:cc:38:cd:30:2b:7f:e5:b8:1b:a7:3d:3d:89:44:5d:de:2f:
         30:71:ec:d5:ae:5e:2e:9f:6d:63:4d:90:c5:30:05:28:d7:7e:
         3d:d3:c4:d8:f9:2f:ad:d1:67:dd:f9:62:62:75:9e:64:04:b8:
         e5:e7:3f:e2:3e:19:e5:f4:c0:c2:25:a8:e8:a1:57:a5:81:3e:
         7e:0b:3f:c1:c1:fc:05:60:0a:f6:26:f8:d4:30:7c:c2:cf:55:
         fe:11:4e:36:24:cd:af:f5:3d:60:f7:c2:31:91:8b:e7:f8:6b:
         23:f3:91:46:9d:5f:2d:5e:3f:14:33:b1:c2:1a:a1:c0:df:ac:
         83:33:07:9f:3c:6a:86:d9:36:20:4f:9f:4a:18:60:5c:e3:0b:
         ed:b6:25:28:ec:8a:b7:a2:71:a1:45:a0:7b:e1:4f:bf:7e:25:
         e2:22:51:22:f9:ee:e8:13:af:42:3c:67:d2:f8:7a:4e:e7:5d:
         c9:44:11:53:30:b1:2c:44:cb:89:f8:ed:1e:a5:ac:34:eb:b2:
         b5:57:ce:85:e0:96:d4:6c:ce:f1:37:36:f5:48:c5:40:bf:d6:
         6b:10:b1:49:fd:b6:8e:94:81:cd:7a:4e:78:f5:53:5e:fb:f1:
         74:77:58:d7:f5:4d:4c:f2:1f:9d:60:b9:74:74:f2:f8:6c:30:
         fb:81:f1:7a:4b:30:d5:1d:b8:5d:b0:f1:26:4d:25:70:45:af:
         29:d1:47:1a:e4:55:c2:fd:6d:3e:bc:80:d2:1d:58:43:f4:92:
         07:6b:fe:40:3d:0c:5e:8c:8c:46:6d:84:27:11:93:6a:82:27:
         68:93:b8:d5:02:84:16:c7

C'est ce fichier EXAMPLE.COM_csr.pem qu'il faudra transmettre à l'autorité de certification. Parfois, seul son contenu est demandé. On l'obtient avec la commande suivante :

cat EXAMPLE.COM_csr.pem

Ce qui donne :

-----BEGIN CERTIFICATE REQUEST-----
MIIE1DCCArwCAQAwgY4xCzAJBgNVBAYTAkZSMQ8wDQYDVQQIDAZGcmFuY2UxDjAM
BgNVBAcMBVBhcmlzMRIwEAYDVQQKDAlNeUNvbXBhbnkxEjAQBgNVBAsMCU15U2Vj
dGlvbjEUMBIGA1UEAwwLRVhBTVBMRS5DT00xIDAeBgkqhkiG9w0BCQEWEWFkbWlu
QEVYQU1QTEUuQ09NMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtj16
JzvBk86Et08JFGPRFJ1R4N1Fnr7gWNznih3NqQwg9hqbr8axjGlvvR+OtcU/8MEH
1XqvSDlnKNcPT81yPf3S0IvWd751FibwaeiDqpCf4poT4IaJWhw6wnr0/1DK/wQu
daK2dZg2HgaYiwy6PH5GbincwNr22iS4kDf5O9oHt7wQHgVFCwDPc2zjgCsVibjO
1RVB0sOUNlhCRBF2X5si1o7h7huZJ9C5vhkz1A6I7WkvIPMlIf+V+EKZ5PblEUeJ
pNKUyxH+NYi9k6QBbyLrhuFoTBaFEurnN+YcS7IUIDw/dSMW0+7cXc0XxM5D2Q44
XkQTntEUWvLfL0MHGogvXRYGX+hZT8PT41S6ZtFhQXjdkKvCYuah7n1L2UHMeF+v
6RRJIzpVAx+j+H/iMsxXIsGMEqTFMcxgccyZm6gcnMVV+2moXkevbSd9uMlXuA6y
evYKK4SK0T343sOz+VF6Hj0LmzZo/8w17NNkJf3IVo97zM0qCfP6kvwjOa6QWCuP
IA1ZqEge+IwgdQ5Qeef+zB5rKGiYsiZG16iDRxulOf+gOPtFEoQVYvBc6xWxZG/t
nXP9OMbjiC/A7ur6fhc9RQ04tDMPXrZUSnZwkn/rQCtTtoZXowad9JlJP5jzUOz/
vklSzQWf+9nptVkykrpPt8miXwIsHa0kf77ybDkCAwEAAaAAMA0GCSqGSIb3DQEB
CwUAA4ICAQB95rb3N/Wdiuj4C6L440p33PPxHOm/zl426Q0xLtp0mPv72Qthm8FA
nviZoIKLbcu9ee8WbSSqjKdNJzpMtzXBlrxzSs8CIAnejcJHzu1AyxjX934qx/AK
jganK+zH3z55G23dKs3oXZNiZikRSShykoM4Ac3qwyyh7fTFswHvRoL07CN3KiPa
jAp+bR/EVebIpzoy5f35X1+2z0A47enMv/DKfASldums+e6BxeZrY5SLZB9O1O5u
6bSadq4pzZz+21KE8dMGzDjNMCt/5bgbpz09iURd3i8wcezVrl4un21jTZDFMAUo
134908TY+S+t0Wfd+WJidZ5kBLjl5z/iPhnl9MDCJajooVelgT5+Cz/BwfwFYAr2
JvjUMHzCz1X+EU42JM2v9T1g98IxkYvn+Gsj85FGnV8tXj8UM7HCGqHA36yDMwef
PGqG2TYgT59KGGBc4wvttiUo7Iq3onGhRaB74U+/fiXiIlEi+e7oE69CPGfS+HpO
513JRBFTMLEsRMuJ+O0epaw067K1V86F4JbUbM7xNzb1SMVAv9ZrELFJ/baOlIHN
ek549VNe+/F0d1jX9U1M8h+dYLl0dPL4bDD7gfF6SzDVHbhdsPEmTSVwRa8p0Uca
5FXC/W0+vIDSHVhD9JIHa/5APQxejIxGbYQnEZNqgidok7jVAoQWxw==
-----END CERTIFICATE REQUEST-----

Générer une demande de certification multi-domaines

Il est possible d'obtenir un certificat valide pour plusieurs domaines donnés. Toutes les autorités de certification ne le permettent pas forcément, et c'est généralement plus cher. Cela est rendu possible grâce au champ « SubjectAltName ». Pour l'exploiter, il est nécessaire de modifier le fichier de configuration de OpenSSL.

Copier le fichier de configuration dans le répertoire courant :

cp /etc/ssl/openssl.cnf .

Modifier le fichier de configuration :

vim openssl.cnf

Dans la section [req], il faut décommenter la ligne suivante :

# req_extensions = v3_req

Dans la section [v3_req], il faut ajouter les lignes suivantes :

subjectAltName = @alt_names

[alt_names]
DNS.1 = EXAMPLE.COM
DNS.2 = www.EXAMPLE.COM
DNS.3 = ftp.EXAMPLE.COM

Il est possible d'ajouter autant de champs DNS qu'on le souhaite. Pour un certificat valable pour le domaine racine ainsi que tout sous-domaine, deux champs suffisent :

[alt_names]
DNS.1 = EXAMPLE.COM
DNS.2 = *.EXAMPLE.COM

Il est aussi possible de renseigner des noms de domaines complètement différents :

[alt_names]
DNS.1 = EXAMPLE.COM
DNS.2 = www.EXAMPLE.ORG
DNS.3 = ftp.EXAMPLE54.COM18

On peut alors générer la demande de certificat de la même manière que précédemment, à condition de renseigner le fichier de configuration modifié :

openssl req -new -key EXAMPLE.COM_privatekey.pem -out EXAMPLE.COM_csr.pem -config openssl.cnf

On obtient ainsi la demande suivante :

Certificate Request:
    Data:
        Version: 0 (0x0)
        Subject: C=FR, ST=France, L=Paris, O=MyCompany, OU=MySection, CN=EXAMPLE.COM/emailAddress=admin@EXAMPLE.COM
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (4096 bit)
                Modulus:
                    00:b6:3d:7a:27:3b:c1:93:ce:84:b7:4f:09:14:63:
                    d1:14:9d:51:e0:dd:45:9e:be:e0:58:dc:e7:8a:1d:
                    cd:a9:0c:20:f6:1a:9b:af:c6:b1:8c:69:6f:bd:1f:
                    8e:b5:c5:3f:f0:c1:07:d5:7a:af:48:39:67:28:d7:
                    0f:4f:cd:72:3d:fd:d2:d0:8b:d6:77:be:75:16:26:
                    f0:69:e8:83:aa:90:9f:e2:9a:13:e0:86:89:5a:1c:
                    3a:c2:7a:f4:ff:50:ca:ff:04:2e:75:a2:b6:75:98:
                    36:1e:06:98:8b:0c:ba:3c:7e:46:6e:29:dc:c0:da:
                    f6:da:24:b8:90:37:f9:3b:da:07:b7:bc:10:1e:05:
                    45:0b:00:cf:73:6c:e3:80:2b:15:89:b8:ce:d5:15:
                    41:d2:c3:94:36:58:42:44:11:76:5f:9b:22:d6:8e:
                    e1:ee:1b:99:27:d0:b9:be:19:33:d4:0e:88:ed:69:
                    2f:20:f3:25:21:ff:95:f8:42:99:e4:f6:e5:11:47:
                    89:a4:d2:94:cb:11:fe:35:88:bd:93:a4:01:6f:22:
                    eb:86:e1:68:4c:16:85:12:ea:e7:37:e6:1c:4b:b2:
                    14:20:3c:3f:75:23:16:d3:ee:dc:5d:cd:17:c4:ce:
                    43:d9:0e:38:5e:44:13:9e:d1:14:5a:f2:df:2f:43:
                    07:1a:88:2f:5d:16:06:5f:e8:59:4f:c3:d3:e3:54:
                    ba:66:d1:61:41:78:dd:90:ab:c2:62:e6:a1:ee:7d:
                    4b:d9:41:cc:78:5f:af:e9:14:49:23:3a:55:03:1f:
                    a3:f8:7f:e2:32:cc:57:22:c1:8c:12:a4:c5:31:cc:
                    60:71:cc:99:9b:a8:1c:9c:c5:55:fb:69:a8:5e:47:
                    af:6d:27:7d:b8:c9:57:b8:0e:b2:7a:f6:0a:2b:84:
                    8a:d1:3d:f8:de:c3:b3:f9:51:7a:1e:3d:0b:9b:36:
                    68:ff:cc:35:ec:d3:64:25:fd:c8:56:8f:7b:cc:cd:
                    2a:09:f3:fa:92:fc:23:39:ae:90:58:2b:8f:20:0d:
                    59:a8:48:1e:f8:8c:20:75:0e:50:79:e7:fe:cc:1e:
                    6b:28:68:98:b2:26:46:d7:a8:83:47:1b:a5:39:ff:
                    a0:38:fb:45:12:84:15:62:f0:5c:eb:15:b1:64:6f:
                    ed:9d:73:fd:38:c6:e3:88:2f:c0:ee:ea:fa:7e:17:
                    3d:45:0d:38:b4:33:0f:5e:b6:54:4a:76:70:92:7f:
                    eb:40:2b:53:b6:86:57:a3:06:9d:f4:99:49:3f:98:
                    f3:50:ec:ff:be:49:52:cd:05:9f:fb:d9:e9:b5:59:
                    32:92:ba:4f:b7:c9:a2:5f:02:2c:1d:ad:24:7f:be:
                    f2:6c:39
                Exponent: 65537 (0x10001)
        Attributes:
        Requested Extensions:
            X509v3 Basic Constraints: 
                CA:FALSE
            X509v3 Key Usage: 
                Digital Signature, Non Repudiation, Key Encipherment
            X509v3 Subject Alternative Name: 
                DNS:EXAMPLE.COM, DNS:*.EXAMPLE.COM
    Signature Algorithm: sha256WithRSAEncryption
         5e:45:b6:88:b7:89:fb:4b:a5:bb:b7:54:ad:5f:aa:21:8a:00:
         a5:70:07:b3:83:e6:16:3b:b0:31:c4:c7:45:14:0d:0b:48:ad:
         04:ad:fa:83:0f:12:5a:39:14:68:35:47:10:82:2a:a9:75:85:
         03:2d:3a:2a:ec:f2:e1:b7:ef:24:2c:9d:0b:49:3c:69:f8:d7:
         8c:af:4e:07:33:4d:81:41:38:eb:58:b6:b6:8a:fb:19:ae:b2:
         03:9a:d1:b4:aa:9f:86:17:2c:0a:3c:02:7c:90:5c:4f:ba:92:
         1f:4c:a6:f6:20:40:7d:fa:27:02:c9:39:e1:0f:99:18:62:1b:
         f0:65:81:7d:c4:4a:63:4c:e1:c8:5e:4e:c5:5c:7b:89:4e:e3:
         c0:08:67:e8:8e:db:11:ea:e5:fb:32:2d:61:10:48:72:06:2f:
         32:d3:61:77:50:a1:19:d0:8a:1e:47:95:61:d1:bd:54:dd:57:
         c7:4e:c7:31:f7:f0:b5:ae:10:08:26:19:01:54:f2:2c:73:0c:
         92:fc:8d:49:30:d4:9b:a8:9e:34:95:27:d4:05:c0:6e:f8:d7:
         83:33:cd:a9:ba:b7:ab:9b:cd:3d:95:4a:20:c5:3c:94:2e:8b:
         db:6e:2e:0d:2e:04:61:9c:db:69:ce:5f:0d:8d:e5:db:c4:22:
         66:81:c4:33:d1:5e:f8:77:5f:4e:e2:4e:f8:07:06:e9:bd:03:
         58:35:1b:02:c4:14:fe:67:c8:60:3e:f6:e9:8a:5e:80:c5:15:
         3e:2f:b5:f3:57:21:4e:1f:6c:3c:db:27:ed:6c:9e:c3:37:b4:
         c2:14:21:93:14:a3:67:a6:35:1f:52:50:90:80:6e:0d:e4:da:
         e9:22:66:51:64:43:0e:01:d4:84:8c:eb:0b:c9:00:27:b8:20:
         1a:1f:3d:f3:56:ff:d3:1b:8f:cf:89:7a:7e:99:d1:1d:6d:bc:
         f9:9b:03:a6:62:3d:ad:81:8c:bc:57:1f:41:13:20:28:30:7f:
         21:90:c0:16:b6:59:22:d4:06:36:3c:60:45:33:c4:a2:57:03:
         82:57:1c:1b:4f:24:9d:20:66:a6:a9:41:33:4a:b9:8c:3a:ab:
         b7:d0:e6:ba:55:18:cf:bf:0c:b0:54:31:a4:05:ed:e3:b4:0b:
         6e:d6:c6:48:67:62:70:69:c9:95:ed:a8:e1:e0:ac:ff:02:9e:
         be:3c:45:3f:53:e4:b4:2a:d5:57:5b:f0:2a:6a:3e:d3:6b:8e:
         6b:4d:b7:da:da:51:d7:e3:cc:1d:1e:0e:3c:41:71:03:b9:12:
         09:15:a2:84:18:ae:f8:d1:a9:f0:f8:cd:a7:31:b3:82:54:e0:
         b8:d3:d7:0a:21:12:55:55

Il est nécessaire de renseigner le champ CN ainsi que d'en inclure la valeur dans le SubjectAltName par soucis de compatibilité. En effet, si SubjectAltName est supporté, le champ CN ne sera pas pris en compte. Si SubjectAltName n'est pas supporté, seul le champ CN sera pris en compte.

Générer une demande de certification pour CAcert

CAcert est une autorité de certification communautaire reposant sur une toile de confiance entre les usagers. Il est permis d'utiliser SubjectAltName tel que décrit ci-dessus. Le site propose néanmoins un script shell simplifiant la procédure.

Télécharger le script :

wget svn.cacert.org/CAcert/Software/CSRGenerator/csr -O CSRGenerator.sh

Le rendre exécutable :

chmod +x CSRGenerator.sh

L'exécuter :

./CSRGenerator.sh

Les questions demandées ne devraient pas poser de problème. Il ne faut pas oublier de répéter la valeur entrée au champ CN dans le SubjectAltName.

Attention, le script n'est pas forcément utilisable pour d'autres autorités de certification étant donné qu'il ne demande aucune information relative à l'identité du requérant.

Obtention du certificat d'identité numérique

Une fois la demande soumise, l'autorité de certification délivre le certificat demandé. C'est ce certificat, couplé à la clef privée, qui sera utile à la sécurisation de tout service supportant TLS. Attention, il est parfois nécessaire de leur adjoindre le certificat racine de l'autorité de certification, ainsi que de toute autorité intermédiaire. La procédure à suivre dépend de l'autorité choisie et du service déployé.

Une fois le certificat correctement installé, il est possible de tester en ligne le domaine concerné grâce à SSL Shopper ou Qualys SSL Labs.

Article sous licence Creative Commons BY-SA 3.0 France.

Publié le

Lundi 31 mars 2014 à 16h02

Ajouter un commentaire

HTML filtré

  • Balises HTML autorisées : <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd> <p>
  • Textual smiley will be replaced with graphical ones.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.

Texte brut

  • Aucune balise HTML autorisée.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.

Flux RSS des commentaires de cet article.