Lectures :
http://www.hsc.fr/ressources/breves/ssl_configuration.html.fr
http://www.faqs.org/rfcs/rfc2459.html miam miam que du bonheur
Fichier openssl.cnf modèle (en cours d'écriture) : openssl.cnf
Création d'une AC racine
- Préparation
$ mkdir racine; cd racine; mkdir keys requests certs newcerts ; echo 01 > serial ; echo 01 > crlnumber ; touch index.txt .rand
- Création d'une clef privée 2048 bits, cryptée par un mot de passe :
$ openssl genrsa -out ca-key.pem -des3 2048 Generating RSA private key, 2048 bit long modulus ......................+++ e is 65537 (0x10001) Enter pass phrase for ca-key.pem: Verifying - Enter pass phrase for ca-key.pem:
- Création du certificat auto-signé (on est sur la racine) avec les extensions spécifiques :
$ openssl req -new -x509 -key ca-key.pem -out ca-cert.pem -text -config ../openssl.cnf -extensions ca_racine -days $((20*365)) Enter pass phrase for ca-key.pem: (...) Code ISO du pays (2 lettres) [CA]: Province ou region (nom complet) [Quebec]: Ville (nom complet) [Montreal]: Organisation [AUF]: Unite (implantation, service, programme, ...) [DRI]: Nom canonique (TOUJOURS TRES IMPORTANT) [AUF-AC-RACINE]: Adresse electronique (email) [rpv@auf.org]:
Résultat
- Résultats
$ ls ca-cert.pem ca-key.pem certs crlnumber index.txt keys newcerts openssl.cnf requests serial
- La clé privée est bien encryptée :
$ cat ca-key.pem -----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: DES-EDE3-CBC,4BD4AF9549CA734C hsGEs99W6Rll5+x2WJlkcoeMpMXihgFaeKErvT/UWor/sJuMkLAZsnP1sRyd/vPf (...) DoO4h8lbMXwA6TtOC9uklFghpAmPQpbaYJ8IQMD+YMM= -----END RSA PRIVATE KEY-----
- Examen du certificat produit (vérification dates et extensions) :
$ openssl x509 -text -in ca-cert.pem -noout # liste de toutes les données du certificat, notamment dates et extensions $ openssl x509 -purpose -in ca-cert.pem -noout # liste des utilisations possibles du certificat