EasyRSA

Pour gérer ma propre CA Authority, j'ai choisis d'utiliser easy-rsa. Easy-RSA à été créer pour aider les utilisateurs d'OpenVPN à gérer leurs certificats. Désormais, c'est un projet à part enière qui peut être utilisé pour siger tout type de certificats. En plus une nouvelle version est sortie il n'y a pas très longtemps, la version 3.

Installation

C'est tout simple, il suffit juste de récupérer ce répertoire sur leur dépot:
https://github.com/OpenVPN/easy-rsa/easyrsa3

Configuration

J'ai noté que lorsque le CA signait des CSR, les extensions x509 n'étaient pas exportées dans le certificat final. Pour celà, il faut rajouter l'option suivante dans la partie CA_Default du fichier openssl-1.0.cnf:
[ CA_default ]
# [...]
copy_extensions = copy
Par ailleurs, je vous invite à configurer le vars:
cp vars.example vars
vim vars

Si vou le souhaitez, vous pouvez vous créer des template de signature divers, dans le dossier x509-types. Ainsi, j'ai une configuration pour mes serveurs web, mes serveurs mail et mon OpenVPN.

Pour démarrer, on jettera un coup d'oeil dans les commandes suivantes:
easyrsa help
easyrsa help options
easyrsa help altname

Utilisation

Pour gérer ma propre CA, le modop est le suivant.

  1. Déparrer la PKI:
    easyrsa init-pki
  2. Créer la CA:
    easyrsa build-ca
    # Il faut lui mettre un mot de passe fort et lui préciser le nom de l'entité
  3. Créer un CSR, pour un site web:
    easyrsa --subject-alt-name='DNS:jeznet.org,DNS:*.jeznet.org,DNS:*.toto.jeznet.org,DNS:*.dev.jeznet.org' gen-req web_jeznet.org nopass
    # On ne met pas de mot de passe, car c'est le daemon qui devra utiliser ce certificat
    
  4. Signer le CSR:
    easyrsa sign-req server_web web_jeznet.org 
  5. Pour révoquer un CRT:
    easyrsa revoke web_jeznet.org 
    
  6. Pour faire le pem pour pound:
    openssl x509 -in pki/issued/jeznet.org.crt -out pound.pem
    openssl rsa -in pki/private/jeznet.org.key >> pound.pem
    cat pki/ca.crt >> pound.pem
    
Page last modified on January 21, 2015, at 03:40 AM EST