Je veux ajouter des autorités de certification racine qui ne sont pas fournies avec le firefox par défaut sur Ubuntu, mais je ne sais pas comment.
J'ai essayé de les ajouter aux certificats locaux avec certutil
, mais cela n'a pas fonctionné. Cela a gâché ma base de données de certificats.
$ certutil -A -d .mozilla/firefox/kek3dogy.default/ -i /usr/local/share/ca-certificates/FNMT_ACRAIZ.crt -n "Certificado Raiz FNMT" -t "TCu,Cuw,Tuw"
et alors
$ certutil -L -d .mozilla/firefox/kek3dogy.default/
Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI
Go Daddy Secure Certification Authority ,,
VeriSign Class 3 Secure Server CA - G3 ,,
VeriSign Class 3 Extended Validation SSL CA ,,
DigiCert High Assurance CA-3 ,,
GlobalSign Domain Validation CA - G2 ,,
GeoTrust SSL CA ,,
StartCom Class 2 Primary Intermediate Server CA ,,
Google Internet Authority ,,
Certificado Raiz FNMT CT,C,c
USERTrust Legacy Secure Server CA ,,
HP Jetdirect 2B0EAD20 ,,
Akamai Subordinate CA 3 ,,
VeriSign, Inc. ,,
Thawte SGC CA ,,
VeriSign Class 3 Secure Server CA - G2 ,,
Le certificat n'apparaîtra pas sur Firefox. J'ai essayé plusieurs fois, même en supprimant le profil, et il est apparu une fois sur l'interface Firefox, mais complètement vide.
Quoi qu'il en soit, ce n'est que pour un utilisateur, et je veux les ajouter à l'échelle du système. Existe-t-il une base de données à l'échelle du système que je peux modifier? Comment?
S'il n'y a pas de base de données à l'échelle du système que je puisse modifier, je peux compter sur un script de démarrage X (en tant que /etc/X11/Xsession.d/
ceux, ou un script appelé par le système de démarrage automatique xdg sur /etc/xdg/autostart/
) pour modifier le profil utilisateur au démarrage de la session, mais j'ai besoin d'une solution qui travaux. Je ne peux même plus charger de certificats sur les profils utilisateur depuis la ligne de commande maintenant!
la source
profiles.ini
? Ensuite, vous pouvez y ajouter vos modifications, puis le copier etprofiles.ini
le placer dans chaque répertoire utilisateur.firefox -p
- mais vous devez d'abord fermer Firefox.Réponses:
Le problème ici est que Firefox n'a pas d'emplacement «central» où il recherche des certificats. Il regarde simplement le profil actuel. C'est pourquoi la modification
/usr/share/ca-certificates
ou d'autres répertoires similaires ne fonctionnera pas avec Firefox. C'est quelque chose qui est demandé depuis des années; voir les numéros 620373 , 449498 et 454036 (et il y en a probablement beaucoup d'autres).Il ne vous reste donc que deux types de solutions: soit modifier chaque profil, soit modifier le comportement de Firefox. Je sais que ce n'est pas ce que vous recherchez, mais il n'y a aucun moyen car Firefox ne regarde que les profils des utilisateurs.
Cela dit, la solution que je choisirais consiste à utiliser des liens physiques ou symboliques, en particulier j'irais avec des liens physiques. Cette solution est sûrement la plus simple et probablement la meilleure, même si je n'ai pas assez d'informations pour en juger.
Ce que vous avez à faire est essentiellement de supprimer chacun
cert8.db
et leskey3.db
fichiers de chaque profil et de les remplacer par des liens vers les "plus complets"cert8.db
etkey3.db
. Si vous optez pour des liens physiques, l'originalcert8.db
etkey3.db
ne sera pas différent des nouveaux.N'oubliez pas d'ajuster les autorisations en fonction de vos besoins. Très probablement, vous devrez le faire
chmod a+rw
pour que tout le monde puisse ajouter / supprimer un certificat. Si vous souhaitez que seuls certains utilisateurs puissent ajouter / supprimer des certificats, vous pouvez créer un groupe, affecter les deux bases de données à ce groupe et accorder une+w
autorisation uniquement au groupe.la source
Le moyen le plus simple consiste à importer le certificat dans un exemple de profil firefox, puis à copier le cert8.db aux utilisateurs que vous souhaitez équiper du certificat.
Importez d'abord le certificat à la main dans le profil firefox de l'échantillon-utilisateur. Copiez ensuite
dans les profils firefox des utilisateurs. C'est ça. Si vous souhaitez vous assurer que les nouveaux utilisateurs obtiennent automatiquement le certificat, copiez-le
cert8.db
dans:Voici une manière alternative qui ne remplace pas les certificats existants: [fragment bash pour les systèmes linux]
Vous pouvez trouver certutil dans le paquet libnss3-tools (debian / ubuntu).
Voir aussi: Importation programmatique du certificat CA
Source: Installer par programme le certificat dans Mozilla
la source
Contrairement à la croyance populaire, vous pouvez demander à Firefox de regarder les certificats système à la place de son propre ensemble codé en dur.
Pour ce faire, vous voudrez utiliser un package appelé p11-kit . p11-kit fournit un remplacement direct pour
libnssckbi.so
la bibliothèque partagée qui contient l'ensemble de certificats codés en dur. La version p11-kit lit à la place les certificats dans le magasin de certificats système.Puisque Firefox est livré avec sa propre version de
libnssckbi.so
, vous devrez le retrouver et le remplacer à la place de la version fournie dans libnss3:Ensuite, supprimez le
~/.pki
répertoire pour que Firefox actualise sa base de données de certificats (l'amenant à récupérer les certificats système) au redémarrage de Firefox. Remarque: cela supprimera tous les certificats existants dans le magasin, donc si vous en avez des personnalisés que vous avez ajoutés manuellement, vous souhaiterez peut-être sauvegarder ce dossier, puis les réimporter.la source
dpkg-divert
étape pour éviter qu'APT écrase à nouveau le fichier lorsque vous mettez à niveau le package Firefox.L'une des fonctionnalités du module complémentaire CCK Wizard Firefox est l'importation de certificats CA. J'utilise ce module complémentaire pour créer un module complémentaire personnalisé qui inclut un certificat CA d'entreprise. J'ai ensuite empaqueté le xpi personnalisé dans un .deb sur le référentiel interne à partir duquel toutes les stations de travail reçoivent des mises à jour.
Assistant CCK
EDIT: Pour empaqueter le xpi pour Ubuntu, vous devez créer un paquet qui inclut le répertoire / usr / lib / firefox-addons / extensions / [addon-name @ servername] et décompressez tout le contenu du xpi dans ce répertoire . Par exemple, si vous nommez votre addon foobarbaz et que le serveur à partir duquel vous l'avez configuré (si vous deviez activer cette fonction) est intranet.example.com, le répertoire serait [email protected]. Je n'active jamais la mise à jour automatique, mais plutôt la mise à jour du deb dans le repo.
la source
Firefox fonctionne après une nouvelle installation. Si la base de données de certificats dans
cert8.db
est supprimée, elle est régénérée au prochain démarrage de Firefox. Cela suggère fortement qu'il existe un stockage par défaut à l'échelle du système des certificats CA.Le code source de Firefox montre que les certificats CA intégrés sont en fait codés en dur en
firefox
exécutable. Ils résident dans security / nss / lib / ckfw / builtins / certdata.txtIl n'y a donc aucun moyen d'installer un certificat à l'échelle du système. Attention, l'application de correctifs au code source peut poser des problèmes de droits de propriété intellectuelle.
la source
J'utilise une application "User Environment Virtualization" (UEV) qui le fait pour mes utilisateurs, mais vous pouvez le faire avec des scripts de connexion dans les clients Windows tout de même. Je ne publierai pas tout le code pour trouver dynamiquement le chemin% APPDATA% \ Mozilla \ Firefox \% PROFILE%, mais lorsque vous le trouverez, vous pouvez importer les scripts à l'aide de certaines commandes de base. Je lis essentiellement le fichier Firefox profiles.ini pour déterminer le chemin vers le profil Firefox / cert8.db.
Vous pouvez envisager d'utiliser l'application certutil.exe. https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/tools/NSS_Tools_certutil
Vous pouvez exécuter des scripts de connexion pour les utilisateurs qui importent automatiquement les certificats de confiance à partir d'un emplacement central dans Firefox de tous les utilisateurs du système.
Voici le "noyau" de mon script vb d'importation de certificats:
la source
J'ai découvert que la plupart du temps et par défaut s'il n'est pas configuré, sinon Firefox utilise des bases de données de sécurité héritées (cert8.db, key3.db et secmod.db), ce qui signifie que vous devrez utiliser une ligne de commande différente pour injecter le certificat dans la bonne base de données que Firefox utilise. (voir plus de l'homme de certutil)
donc si votre système utilise la base de données par défaut, la commande devrait se présenter comme suit: (dbm)
sinon ça devrait être comme ça: (sql)
de man certutil:
la source
certutil
commande a fonctionné. Je cherchais à automatiser un script de configuration mono-utilisateur et cela fait l'affaire. Vous devrezapt-get install libnss3-tools
avoircertutil
.