Introduction
Dans un environnement professionnel, il est courant de devoir ajouter un certificat interne (CA d’entreprise, proxy SSL, PKI interne) au système.
Le magasin de certificats trustés (CA trust store) permet au système de reconnaître les autorités de certification comme fiables.
Sans cette configuration, certaines connexions SSL/TLS échoueront (erreurs de certificat non reconnu).
Comprendre le trust store Linux
Sous Linux, les certificats racines sont stockés dans un emplacement spécifique selon la distribution :
- Debian / Ubuntu →
/usr/local/share/ca-certificates/ - RHEL / CentOS →
/etc/pki/ca-trust/source/anchors/
Les certificats doivent être au format PEM (.crt) pour être pris en compte.
Ajouter un certificat trusté (Ubuntu / Debian)
Copier le certificat
sudo cp mon-certificat.crt /usr/local/share/ca-certificates/
Ajoute le certificat dans le répertoire dédié aux CA personnalisées.
Mettre à jour le store
sudo update-ca-certificates
Met à jour le magasin de certificats système et intègre le nouveau certificat.
Vérifier l’ajout
ls /etc/ssl/certs | grep mon-certificat
Permet de confirmer que le certificat est bien pris en compte.
Ajouter un certificat trusté (RHEL / CentOS / AlmaLinux)
Copier le certificat
sudo cp mon-certificat.crt /etc/pki/ca-trust/source/anchors/
Place le certificat dans le répertoire des autorités de confiance.
Mettre à jour le trust store
sudo update-ca-trust
Reconstruit le magasin de certificats système.
Vérifier qu’un certificat est bien reconnu
openssl verify mon-certificat.crt
Permet de vérifier si le certificat est validé par le système.
Tester une connexion HTTPS
curl https://example.com
Permet de valider que la chaîne de certification est reconnue sans erreur.
Supprimer un certificat du trust store
Ubuntu / Debian
sudo rm /usr/local/share/ca-certificates/mon-certificat.crt
sudo update-ca-certificates
Supprime le certificat et met à jour le store.
RHEL / CentOS
sudo rm /etc/pki/ca-trust/source/anchors/mon-certificat.crt
sudo update-ca-trust
Retire le certificat du magasin système.
Cas d’usage
- Proxy SSL d’entreprise (inspection TLS)
- PKI interne
- Services internes avec certificats auto-signés
- Environnements de développement / staging
Problèmes fréquents
Mauvais format de certificat
Le certificat doit être en PEM (.crt), sinon il ne sera pas reconnu.
Chaîne incomplète
Un certificat intermédiaire manquant peut provoquer une erreur SSL.
Application non compatible
Certaines applications utilisent leur propre trust store (Java, Docker, navigateurs).
Cas particulier : Docker et certificats
Docker ne repose pas toujours sur le trust store système pour ses connexions TLS.
Pour un registry privé :
/etc/docker/certs.d/registry.local/ca.crt
Le certificat doit être ajouté spécifiquement pour Docker.
Bonnes pratiques
- Centraliser les certificats internes
- Documenter les ajouts dans le système
- Vérifier la validité (expiration) régulièrement
- Éviter les certificats auto-signés en production
- Automatiser via scripts ou outils de configuration
Sécurité
Ajouter un certificat au trust store revient à faire confiance à une autorité de certification.
Impacts possibles :
- interception du trafic (proxy SSL)
- compromission si certificat malveillant
- confiance étendue à tous les services système
Conclusion
La gestion du magasin de certificats trustés est essentielle pour assurer le bon fonctionnement des communications sécurisées sous Linux.
Une bonne maîtrise de cette configuration permet d’intégrer facilement des infrastructures internes tout en maintenant un niveau de sécurité élevé.