4 203
modifications
Aucun résumé des modifications |
|||
(9 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 87 : | Ligne 87 : | ||
<pre> | <pre> | ||
openssl_conf = default_conf | |||
[ ca ] | [ ca ] | ||
#Cette section nous permet de définir l'autorité de certification par défaut. | #Cette section nous permet de définir l'autorité de certification par défaut. | ||
Ligne 104 : | Ligne 105 : | ||
preserve = no | preserve = no | ||
policy = policy_match | policy = policy_match | ||
#unique_subject = no # Set to 'no' to allow creation of several certs with same subject. | |||
#l'autorité de certification intermédiaire valable 10 ans | #l'autorité de certification intermédiaire valable 10 ans | ||
Ligne 118 : | Ligne 120 : | ||
preserve = no | preserve = no | ||
policy = policy_match | policy = policy_match | ||
#unique_subject = no # Set to 'no' to allow creation of several certs with same subject. | |||
</pre> | </pre> | ||
Ligne 146 : | Ligne 149 : | ||
default_bits = 4096 | default_bits = 4096 | ||
distinguished_name = req_distinguished_name | distinguished_name = req_distinguished_name | ||
string_mask = utf8only | |||
[ req_distinguished_name ] | [ req_distinguished_name ] | ||
Ligne 173 : | Ligne 177 : | ||
challengePassword_max = 20 | challengePassword_max = 20 | ||
unstructuredName = An optional company name | unstructuredName = An optional company name | ||
</pre> | |||
<pre> | |||
[default_conf] | |||
ssl_conf = ssl_sect | |||
[ssl_sect] | |||
system_default = system_default_sect | |||
[system_default_sect] | |||
MinProtocol = TLSv1.2 | |||
CipherString = DEFAULT@SECLEVEL=2 | |||
</pre> | </pre> | ||
Ligne 197 : | Ligne 213 : | ||
==Création de l'autorité root== | ==Création de l'autorité root== | ||
===V1=== | |||
Maintenant nous pouvons créer le certificat de l'autorité de certification : | Maintenant nous pouvons créer le certificat de l'autorité de certification : | ||
<pre> | <pre> | ||
Ligne 221 : | Ligne 239 : | ||
Nous allons ensuite initialiser le serial par un nombre aléatoire | Nous allons ensuite initialiser le serial par un nombre aléatoire | ||
<pre>openssl x509 -serial -noout -in root_ca.pem | cut -d= -f2 > serial</pre> | <pre>openssl x509 -serial -noout -in root_ca.pem | cut -d= -f2 > serial</pre> | ||
===V2=== | |||
<pre>openssl req -new -newkey rsa:2048 -keyout private/cakey.pem -out careq.pem -config /etc/ssl/openssl.cnf </pre> | |||
<pre>openssl ca -create_serial -out cacert.pem -days 365 -keyfile private/cakey.pem -selfsign -config /etc/ssl/openssl.cnf -infiles careq.pem </pre> | |||
-create_serial est important et permet d'initialiser un sérial aléatoire de 128 bits. | |||
Passer par ces deux commandes (plutôt que tout créer directement par <code>req</code>) est nécessaire car <code>req</code> ne supporte pas -create_serial | |||
see https://www.phildev.net/ssl/creating_ca.html | |||
==Création de l'autorité intermédiaire== | ==Création de l'autorité intermédiaire== | ||
Ligne 267 : | Ligne 297 : | ||
subjectAltName = DNS:www.server.com, DNS:webmail.server.com | subjectAltName = DNS:www.server.com, DNS:webmail.server.com | ||
basicConstraints = critical,CA:FALSE | basicConstraints = critical,CA:FALSE | ||
keyUsage = digitalSignature, nonRepudiation, keyEncipherment | keyUsage = critical, digitalSignature, nonRepudiation, keyEncipherment | ||
nsCertType = server | nsCertType = server | ||
extendedKeyUsage = serverAuth | extendedKeyUsage = serverAuth | ||
Ligne 294 : | Ligne 324 : | ||
subjectAltName = critical,email:copy,email:root@server.com,email:admin@server.com | subjectAltName = critical,email:copy,email:root@server.com,email:admin@server.com | ||
basicConstraints = critical,CA:FALSE | basicConstraints = critical,CA:FALSE | ||
keyUsage = digitalSignature, nonRepudiation | keyUsage = critical,digitalSignature, nonRepudiation | ||
nsCertType = client | nsCertType = client | ||
extendedKeyUsage = clientAuth | extendedKeyUsage = clientAuth | ||
Ligne 305 : | Ligne 335 : | ||
Identifiez le certificat dans le fichier <code>/etc/ssl/core_ca/index.txt</code>. Par exemple, pour révoquer le certificat qui a l'identifiant 03 : | Identifiez le certificat dans le fichier <code>/etc/ssl/core_ca/index.txt</code>. Par exemple, pour révoquer le certificat qui a l'identifiant 03 : | ||
<pre>openssl ca -revoke /etc/ssl/core_ca/newcerts/03.pem</pre> | <pre>openssl ca -revoke /etc/ssl/core_ca/newcerts/03.pem</pre> | ||
=Compatibilité avec la bibliothèque de certificats des distributions Linux= | |||
Placez le certificat de votre CA dans /etc/ssl/certs/myca.pem puis lancez les commandes suivantes : | |||
<pre>cd /etc/ssl/certs/ | |||
chmod o+r myca.pem | |||
ln -s myca.pem `openssl x509 -hash -noout -in myca.pem`.0 | |||
cd | |||
</pre> |