Notes rapides sur l’utilisation du package ca-certificates

Ici, je parle du package ca-certificates. Mais sans en détailler l’utilisation.

Du coup, il peut manquer quelques infos utiles sur l’utilisation de ce package:

  • Comment rajouter ses propres certificats dans /etc/ssl/certs/ca-certificates.crt sans les perdre à chaque mise à jour du package ;
  • Comment ne pas casser la configuration des services qui tournent dans un chroot et qui ont besoin de cette base de certificats.

Ajout des certificats dans la base:

Ça n’est pas très compliqué, il suffit de copier les fichiers .crt1 dans /usr/local/share/ca-certificates/ et de lancer la commande update-ca-certificates (en étant root, bien sûr).
1 Tout certificat auto-signé (certificat d’autorité ou certificat pour un hôte donné).

Cette commande est appelée à chaque mise à jour du package ca-certificates, du coup, à chaque mise à jour, le fichier ca-certificates.crt est aussi mis à jour avec les certificats que l’on a mis dans ce dossier.

Pour les chroot qui ont besoin de la version à jour de ca-certificates.crt

Là, c’est assez spécifique aux distribution Debian-like. Il suffit de rajouter un hook post-upgrade à APT pour lui dire de:

  • copier le nouveau ca-certificates.crt dans le chroot ;
  • reloader le service.

Ça se passe comme ça: on crée un fichier /etc/apt/apt.conf.d/99updatecacert:

DPkg::Post-Invoke-Success "cp -L /etc/ssl/certs/ca-certificates.crt /var/spool/postfix/etc/ssl/certs/ ; /usr/sbin/postfix reload";

À partir de là, après chaque installation de package ou mise à jour du système, les commandes du hook sont exécutées.

Si on a plusieurs services et chroot, on peut regrouper toutes les commandes requises dans un script et indiquer ce script comme commande à exécuter.