Pour quelles raisons installer un certificat CA dans le navigateur des utilisateurs ?

En voici au moins deux :

  • On veut par exemple accéder à des sites internes authentifiés grâce à des certificats auto-signés.
    • L'autorité de certification (CA) vérifiant la validité de ces certificats est interne.
      • Les certificats ne sont pas signés avec des CA publiques, elles seront inutiles pour vérifier ces CA.
      • Le certificat de votre CA interne doit être ajouté "manuellement" aux navigateurs
  • Un proxy Web sortant a été mis en place.
    • Le proxy filtrant les URLs accédées sur le net par les navigateurs. Il intercepte les communications pour en vérifier le contenu. Pour ce faire, le proxy doit se faire passer pour les sites distants en mode Man-In-The-Middle (MITM). Il génère à la volée un certificat auto-signé pour chaque site accédé. Ces certificats sont signés par la CA interne du proxy, et verifiés avec le certificat CA correspondant.
    • On précise ici que le MITM est nécessaire pour de l'interception de session HTTPS, et spécifiquement pour du filtrage d'URL complète (nom de domaine + URI). Pour un filtrage de domaine simple, ce n'est pas nécessaire.

Testé sur :

  • Ubuntu 24.04
  • Firefox

Installation pour un utilisateur de base

Le plus simple consiste à

  • importer le certificat CA dans le navigateur d'un utilisateur
    • en utilisant l'interface graphique,
  • puis d'exporter le fichier contenant la base des certificats CA vers les autres utilisateurs
    • en ligne de commande.

Référence

Importation du certificat CA dans le navigateur

  • Aller dans Settings / Privacy & Security
  • Section Certificates / View Certificates
  • Fenêtre Certificate Manager : onglet Authorities / Import
    • Sélectionner le certificat CA (en crt ?)
  • Fenêtre Downloading Certificate : cocher Trust this CA to identify websites.
  • Le certificat CA devrait apparaître dans la liste.

Référence

Installer le certificat pour les autres utilisateurs

  • Pour un utilisateur destination (par exemple jdoe), aller dans le répertoire suivant et faire une sauvegarde du fichier cert9.db original :
cd /home/jdoe/snap/firefox/common/.mozilla/firefox/<random>.default
mv cert9.db cert9.db.BAK

NB : il faut avoir lancé le navigateur une fois au préalable.

  • Copier le fichier cert9.db de l'utilisateur principal (par exemple jsmith), vers le répertoire de l'utilisateur destination (jdoe), et fixer le propriétaire :
cp /home/jsmith/snap/firefox/common/.mozilla/firefox/<random>.default/cert9.db \
/home/jdoe/snap/firefox/common/.mozilla/firefox/<random>.default/
chown jdoe:jdoe cert9.db
  • Dans le certificat de l'utilisateur, le certificat devrait apparaître dans la liste des CA.