Récemment j'ai eu à ajouter plusieurs autorités de certification sur mes différentes machines, celui de CAcert et le miens. Voici la technique pour ajouter une autorité de certification sur Fedora 19 et ultérieur à la base de confiance du système.

C'est une exclusivité de Fedora 19 si la technique est aussi simple. Elle consiste à placer le fichier du CA au format PEM dans le répertoire /etc/pki/ca-trust/source/anchors/ puis lancer la commande « update-ca-trust ». J'aimerais toutefois apporter une note sur la sécurité : qu'est-ce qui nous prouve que l'on a pas téléchargé un CA corrompu ? Gardons à l'esprit qu'à cause de ce CA, notre système acceptera tous les certificats TLS/SSL dont il est le signataire.

On commence par le récupérer, et on vérifie les droits de ce fichier, personne ne doit pouvoir le modifier sur le disque dur :
blackbird:~# curl http://www.cacert.org/certs/root.crt > /etc/pki/ca-trust/source/anchors/cacert.pem
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2569  100  2569    0     0  24307      0 --:--:-- --:--:-- --:--:-- 24466
blackbird:~# ll /etc/pki/ca-trust/source/anchors/cacert.pem
-rw-r--r--. 1 root root 2569  1 sept. 23:05 /etc/pki/ca-trust/source/anchors/cacert.pem


Puis on vérifie que l'on dispose bien du véritable CA émis par CAcert en comparant l'empreinte numérique établie selon l'algorithme SHA1, l'algo MD5 étant obsolète:
blackbird:~# openssl x509 -in /etc/pki/ca-trust/source/anchors/cacert.pem -noout -fingerprint
SHA1 Fingerprint=13:5C:EC:36:F4:9C:B8:E9:3B:1A:B2:70:CD:80:88:46:76:CE:8F:33


Cette empreinte numérique est publiée sur le site de CAcert afin que l'on puisse comparer. Il semblerait que l'empreinte corresponde, donc j'ai récupéré le bon fichier. Ce contrôle est le minimum vital pour ne pas accepter de certificats frauduleux. Ensuite on peut lancer la mise à jour des CA de confiance :
blackbird:~# update-ca-trust

Désormais les certificats émis par CAcert ne feront plus de warnings dans l'ensemble des logiciels manipulant des certificats comme les clients imap/smtp/xmpp/http.

Comme vous venez de l'apprendre, j'ai mis en place ma propre autorité de certification, j'aimerais juste expliquer "pourquoi". Tout d'abord parce que je veux pouvoir fournir une couche d'encryption SSL à quiconque le désire, sauf que cela entraine pour moi les problèmes suivants: Primo il est hors de question de payer 50€ un fichier (si vous voyez de quoi je parle). Secondo, ça ne fait que déplacer le problème, c'est à dire que si le CA signataire de mon certificat n'est pas fiable c'est sur le nez de mes visiteurs que ça va retomber. Tercio les certificats auto-signés c'est juste naze. Enfin quand on a plusieurs domaines, les CA comme CAcert ne délivrent qu'un seul certificat par personne morale, dans l'eau. Vu que je fournis déjà un certain nombre de services, autant faire les choses bien en faisant tout simplement une véritable Certificate Autority. Ah j'oubliais, mon root.pem est ici, et l'empreinte numérique est :
09:75:86:4A:20:36:0F:94:A1:39:11:4A:D3:2E:8E:BE:30:F2:24:29
(l'empreinte numérique est également présente sur la page "À Propos" au cas où)