Fichier de configuration
[ req ] default_md = sha256 distinguished_name = req_dn req_extensions = req_ext x509_extensions = v3_ca prompt = no [ req_ext ] subjectAltName = @alt_names [ req_dn ] countryName = FR stateOrProvinceName = PACA localityName = Marseille organizationName = Elysiria organizationalUnitName = DSI commonName = www.elysiria.fr [ alt_names ] DNS.0 = www.elysiria.fr DNS.1 = elysiria.fr [ v3_ca ] basicConstraints = CA:false keyUsage = critical, digitalSignature, keyEncipherment subjectKeyIdentifier = hash authorityKeyIdentifier = keyid:always, issuer subjectAltName = @alt_names
En cas de certificat auto-signé, vous pouvez recopier tout le fichier. En cas de certificat signé par une autorité de certification tierce, garder la section bleue et supprimer la rouge.
Les lignes de commande
Générer un certificat auto-signé
openssl req -config config.cnf -newkey rsa:2048 -nodes -keyout private.key -x509 -days 365 -out certificate.crt
- en rouge, le fichier de configuration similaire à la première section
- en vert, la clef privée générée (au format PEM)
- en bleu, le certificat auto-signé (au format PEM)
Générer une clef privée et une demande de signature de certificat (CSR)
Générer une clef privée :
openssl genrsa -out private.key 2048
Générer une demande de signature de certificat (CSR) :
openssl req -config config.cnf -new -key private.key -out cert.csr
Le one-liner (les 2 lignes précédentes regroupées en une seule) :
openssl req -config config.cnf -new -newkey rsa:2048 -nodes -keyout private.key -out cert.csr
- en rouge, le fichier de configuration similaire à la première section
- en vert, la clef privée générée (au format PEM)
- en bleu, la demande de certificat (au format PEM)