Last active
April 26, 2017 10:48
-
-
Save manchot0/56a9348cf81ebc1c18c4 to your computer and use it in GitHub Desktop.
openssl cert
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
générer la clé privée et le certificat racine de notre autorité de certification (CA) | |
openssl req -new -x509 -extensions v3_ca -keyout cert_ca.key -out cert_ca.crt -days 3650 -newkey rsa:4096 | |
Maintenant que nous avons notre autorité, nous allons passer au certificat finalpour tout soutade.fr. Il faut commencer par créer une clé privée (2048 bits dans cet exemple) : | |
openssl genrsa -out cert2.fr.key 2048 | |
La requête de signature (sans mot de passe) | |
openssl req -key cert2.fr.key -new -out cert2.fr.csr | |
Enfin, le certificat final (signé par notre autorité) et valide 1 an (maximum recommandé) | |
openssl x509 -req -days 365 -in cert2.fr.csr -CA cert_ca.crt -CAkey cert_ca.key -out cert2.fr.cert | |
ajouter -CAcreateserial la premiere fois (erreur .slr) | |
Pour créer un .pfx (windows, contient le certificat + la clé) | |
openssl pkcs12 -export -out cert2.pfx -inkey cert2.fr.key -in cert2.fr.cert | |
Pour créer un .p7b (chaine de certificat) | |
openssl crl2pkcs7 -nocrl -certfile cert1.cert -certfile cert2.cert -out p7cert.p7b | |
-nocrl pour ne pas utiliser de liste de revocation, pour en utiliser : -in crl.pem | |
MAJ pour prendre en charge l'extension SAN : | |
config dans /etc/ssl/openssl.cnf : | |
---------------------------------------------------------------------------------------------------------- | |
[ ca ] | |
... | |
# Extension copying option: use with caution. | |
copy_extensions = copy | |
... | |
[ req ] | |
... | |
req_extensions = v3_req | |
... | |
[ usr_cert ] | |
... | |
subjectAltName = @alt_names | |
... | |
[ v3_req ] | |
# Extensions to add to a certificate request | |
basicConstraints = CA:FALSE | |
keyUsage = nonRepudiation, digitalSignature, keyEncipherment | |
subjectAltName = @alt_names | |
... | |
[ v3_ca ] | |
... | |
keyUsage = nonRepudiation, digitalSignature, keyEncipherment | |
subjectAltName = @alt_names | |
... | |
[ alt_names ] | |
DNS.1 = *.soutade.fr | |
DNS.2 = soutade.fr | |
----------------------------------------------------------------------------------------------------------- | |
Maintenant que nous avons notre autorité, nous allons passer au certificat final pour tout soutade.fr. Il faut commencer par créer une clé privée : | |
openssl genrsa -out soutade.fr.key 4096 | |
La requête de signature (sans mot de passe) | |
openssl req -new -out soutade.fr.csr -key soutade.fr.key -sha256 -extensions v3_req | |
Enfin, le certificat final (signé par notre autorité) | |
openssl x509 -req -days 730 -in soutade.fr.csr -CA cert_ca.crt -CAkey cert_ca.key -out soutade.fr.cert -sha256 -extensions v3_req -extfile /etc/ssl/openssl.cnf | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment