Académique Documents
Professionnel Documents
Culture Documents
Nous allons créer une CA, un certificat pour un serveur, un autre pour un client. Enfin, nous exporterons le nécessaire sous une forme
que GNU/Linux aime : le format « pem ».
Création de la CA
Nous ouvrons TinyCA2 et demandons la création de la CA :
Dans l'exemple, notre organisation s'appelle « EME » et notre domaine sera bts.eme.
Le mot de passe saisi sera demandé à chaque validation de demande de certificat par la CA. Il faut bien sûr :
le choisir solide ;
ne pas l'oublier.
Prenez garde à la durée de validité. Une validité courte obligera à renouveler rapidement les certificats. La date de fin de validité de
la CA impose une date de fin de validité inférieure ou égale à tous les certificats qu'elle approuvera.
Les options par défaut conviendront dans la plupart des cas. En cas de doute, consultez la documentation d'OpenSSL (rappelons-
nous que je ne suis pas un spécialiste des PKI). Au bout du compte, nous disposons maintenant de notre CA, avec son certificat.
Rappelons que celui-ci servira à authentifier les divers certificats que nous allons créer par la suite.
Certificat du serveur
Nous allons maintenant créer le certificat du serveur, ainsi que sa clé privée. « Nouveau certificat » :
Le serveur s'appelle coquelicot et se situe dans le domaine bts.eme. Le mot de passe demandé ici est destiné à
protéger la clé privée qui va être générée, en cas de vol de cette dernière. Même si nous désirons en définitive utiliser une clé non
protégée par mot de passe, ce qui est parfois nécessaire lorsque cette clé est manipulée par des logiciels (OpenVPN par exemple),
nous devons ici saisir un mot de passe.
Le reste des informations est fourni par défaut. Il peut être préférable de choisir l'algorithme DSA, réputé plus solide, pour l'usage de
la clé privée.
Nous allons maintenant faire signer cette requête par la CA, créant ainsi le certificat et la clé privée pour le serveur :
Prenez soin d'indiquer une durée de validité qui ne dépassera pas celle de la CA au moment où vous signez le certificat. De
toutes manières, TinyCA vous alertera s'il y a dépassement de durée.
Le mot de passe demandé ici est bien entendu celui que vous avez fourni lors de la création de la CA (celui que l'on a fait solide et
que l'on n'a pas oublié).
Le certificat du serveur est créé, ainsi que sa clé privée. Nous finaliserons lors de l'exportation de tout ceci.
Certificat du client
La procédure est rigoureusement identique, hormis que l'on aura choisi de créer un certificat pour un client. Nous ne la détaillerons
donc pas ici. Le client s'appelle betelgeuse est se trouve dans le domaine maison.mrs.
Nous pouvons vérifier que les certificats et les clés privées sont bien créés et valides dans TinyCA aux onglets respectifs :
pem comme pkcs#12 sont des conteneurs qui peuvent inclure non seulement le certificat x509 (avec la clé publique), mais
également la clé privée associée, le tout protégé par un mot de passe, pour protéger la clé privée.
Nous allons utiliser ici le conteneur pem (Privacy Enhanced Mail), mais nous empaquèterons le certificat et la clé privée dans des
conteneurs différents.
La CA d'abord
L'ordre n'a bien entendu pas d'importance, mais commençons par le plus simple, puisqu'ici il n'y aura pas de clé privée à exporter.
Rappelons que la clé privée est « privée » et que celle de la CA ne doit pas quitter la CA. Il n'y a donc pas à l'exporter :
Choisissez un chemin judicieux pour l'exportation ainsi que le format d'export (pem en ce qui nous concerne).
Pour Coquelicot
Commençons par le certificat. Nous travaillons toujours au format pem :
Ce format permet d'intégrer la clé privée dans le certificat. Nous ne le ferons pas, préférant placer la clé dans un fichier séparé.
Nous l'exportons sans mot de passe, à cause de l'usage qui lui est destiné (OpenVPN en l'occurrence), sans y mettre le certificat,
dont nous disposons déjà.
Bon gros avertissement sur les risques de cette opération. TinyCA couine, mais s'exécute quand même. Le mot de passe demandé
est bien évidemment celui qui a été fourni lors de la création du certificat.
Pour Betelgeuse
La procédure étant exactement la même, nous ne détaillerons pas non plus. Au final, nous retrouvons dans notre répertoire
d'export, les fichiers suivants :
bts.eme-cacert.pem, le certificat de la CA ;
betelgeuse.maison.mrs-key.pem, la clé privée de Betelgeuse ;
betelgeuse.maison.mrs.pem, le certificat de Betelgeuse ;
coquelicot.bts.eme-key.pem, la clé privée de coquelicot ;
coquelicot.bts.eme.pem, le certificat de coquelicot.
Evitons de nous faire piquer les clés privées, qui ne sont pas protégées…
1)
Public Key Infrastructure (Infrastructure à Gestion de Clefs). Pour en savoir plus sur les PKI, voyez par exemple le projet EJBCA.