Projet

Général

Profil

CACert » Historique » Version 8

Matthieu Herrb, 13/02/2014 08:46
fixe la longueur de la clé générée

1 2 Laurent GUERBY
{{>toc}}
2 2 Laurent GUERBY
3 1 Raphaël Durand
h1. CACert
4 1 Raphaël Durand
5 2 Laurent GUERBY
h2. Verificateurs
6 1 Raphaël Durand
7 3 Raphaël Durand
https://www.ssllabs.com/ssltest/index.html (ne reconnait pas CAcert)
8 2 Laurent GUERBY
9 2 Laurent GUERBY
h2. openssl
10 1 Raphaël Durand
11 3 Raphaël Durand
Voici un tutorial pour fabriquer vos propres certificats CACert.
12 7 Matthieu Herrb
En prérequis, vous devez disposer d'un Compte CACert et avoir été assuré pour un minimum de 50
13 3 Raphaël Durand
14 7 Matthieu Herrb
Pour créer le certificat, il faut lancer OpenSSL avec la commande suivante :
15 4 Raphaël Durand
<pre>
16 8 Matthieu Herrb
openssl req -new –nodes -newkey rsa:2048 -keyout server.key -out server.csr -config /etc/ssl/req.conf
17 4 Raphaël Durand
</pre>
18 7 Matthieu Herrb
L'option -config permet d'appeller un fichier de configuration spécifique.
19 1 Raphaël Durand
20 7 Matthieu Herrb
Voici le contenu de ce fichier de conf spécifique
21 1 Raphaël Durand
/etc/ssl/cacert.conf
22 4 Raphaël Durand
<pre>
23 1 Raphaël Durand
[ req ]
24 1 Raphaël Durand
default_bits        = 1024
25 1 Raphaël Durand
default_keyfile     = privkey.pem
26 1 Raphaël Durand
distinguished_name  = req_distinguished_name
27 1 Raphaël Durand
req_extensions     = req_ext # The extentions to add to the self signed cert
28 1 Raphaël Durand
29 1 Raphaël Durand
[ req_distinguished_name ]
30 1 Raphaël Durand
commonName            = Common Name (eg, YOUR name)
31 1 Raphaël Durand
commonName_max        = 64
32 1 Raphaël Durand
33 1 Raphaël Durand
[ req_ext ]
34 1 Raphaël Durand
subjectAltName          = @alt_names
35 1 Raphaël Durand
36 1 Raphaël Durand
[alt_names]
37 4 Raphaël Durand
subjectAltName=IP:192.168.7.1 
38 1 Raphaël Durand
DNS.1   = mail.exemple.com
39 1 Raphaël Durand
DNS.2   = www.exemple.com
40 1 Raphaël Durand
</pre>
41 1 Raphaël Durand
42 7 Matthieu Herrb
Il contient uniquement les champs utiles pour CACert c'est à dire le Common Name (a remplir lors de la création du certificat) et les alt-names (a renseigner en dur dans le fichier de conf avant de lancer la création du certificat)
43 7 Matthieu Herrb
Le Common Name doit être un nom évocateur permettant d'évoquer immédiatement la fonction du certificat. (exemples : www.exemple.com pour le Web, mail.exemple.com pour les Mails,etc...)
44 7 Matthieu Herrb
Les SubjectAltName doivent contenir la liste exhaustive des sous-domaines à valider. Pour tout sous domaine non présent dans la liste, le serveur affichera une erreur de sécurité.
45 4 Raphaël Durand
46 7 Matthieu Herrb
Voir aussi http://wiki.cacert.org/FAQ/subjectAltName
47 7 Matthieu Herrb
48 7 Matthieu Herrb
Une autre solution pour ne pas se retrouver avec des listes de sous-domaine à rallonge est d'utiliser les wildcard.
49 4 Raphaël Durand
Vous pouvez ainsi entrer comme subjectAltName *.exemple.com qui couvrira tous les sous-domaines de 1er niveau comme mail.exemple ou www.exemple. Mais attention, les sous-domaines de second niveau comme cdn.www.exemple ne seront pas reconnus. Pour valider ce domaine, il faut utiliser le wildcard suivant : *.*.exemple.com (et ainsi de suite si il existe d'autres niveaux).
50 5 Raphaël Durand
51 7 Matthieu Herrb
Apache peut générer un avertissement qui doit être ignoré : [Tue Sep 10 18:31:14 2013] [warn] RSA server certificate CommonName (CN) `www.ultrawaves.fr' does NOT match server name!?
52 7 Matthieu Herrb
(message obsolète : Apache ne sait pas lire les Subject Alt-Name)
53 6 Raphaël Durand
54 6 Raphaël Durand
Une fois ceci fait vous disposez d'un fichier .key et d'un fichier .csr.
55 7 Matthieu Herrb
Le fichier .csr doit être envoyé à CACert via l'interface suivante