Importieren der CA in Firefox: Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „ <pre> #!/bin/bash ### (e.g. Firefox, Thunderbird, Chromium) ### Mozilla uses cert8, Chromium and Chrome use cert9 ### ### Requirement: apt install libnss3-t…“ |
Keine Bearbeitungszusammenfassung |
||
| (4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
=Install= | |||
*apt install libnss3-tools | |||
*curl https://xinux.net/images/c/c2/Firefox-ca.sh -o firefox-ca.sh | |||
*chmod +x firefox-ca.sh | |||
*./firefox-ca.sh ca.crt | |||
=Datei= | |||
[[Datei:Firefox-ca.sh]] | |||
==Systemweit== | |||
== Firefox Enterprise Policies unter Debian == | |||
{| class="wikitable" style="float:right; margin-left:1em;" | |||
|+ Quick Info | |||
|- | |||
! Config File | |||
| /etc/firefox/policies/policies.json | |||
|- | |||
! Policy Key | |||
| ImportEnterpriseRoots | |||
|- | |||
! Status | |||
| about:policies | |||
|} | |||
Dieser Artikel beschreibt die korrekte Implementierung von '''Enterprise Policies''' unter Debian GNU/Linux. Ziel ist es, systemweite Root-Zertifikate automatisch in Mozilla Firefox und Thunderbird zu importieren. | |||
=== Problemstellung === | |||
Standardmäßig ignoriert Firefox den System-Trust-Store von Debian (`/usr/local/share/ca-certificates/`). Manuelle Importe pro Benutzerprofil sind in professionellen Umgebungen nicht skalierbar. Oft meldet der Browser unter ''about:policies'' den Status "Inactive" oder "No policies enabled", obwohl Konfigurationsdateien vorhanden sind. | |||
=== Konfiguration (policies.json) === | |||
==== Pfadstrategie ==== | |||
Unter Debian (insbesondere bei Verwendung von '''firefox-esr''') hat der Pfad in `/etc/` Vorrang vor den Verzeichnissen unter `/usr/`. | |||
* '''Primärer Pfad:''' `/etc/firefox/policies/policies.json` | |||
* '''Alternativer Pfad:''' `/usr/lib/firefox-esr/distribution/policies.json` | |||
==== Quelltext ==== | |||
Die JSON-Struktur muss zwingend mit dem "policies"-Objekt beginnen. | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"policies": { | |||
"Certificates": { | |||
"ImportEnterpriseRoots": true | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
=== Implementierung === | |||
### | # '''Verzeichnis erstellen:''' | ||
### | #: <code>sudo mkdir -p /etc/firefox/policies</code> | ||
## | # '''Konfiguration schreiben:''' | ||
#: <code>echo '{"policies": {"Certificates": {"ImportEnterpriseRoots": true}}}' | sudo tee /etc/firefox/policies/policies.json</code> | |||
# '''Berechtigungen anpassen:''' | |||
#: <code>sudo chmod 644 /etc/firefox/policies/policies.json</code> | |||
# '''Prozesse neu starten:''' | |||
#: <code>pkill -9 firefox</code> | |||
=== Validierung === | |||
* Öffnen der URL '''about:policies''' im Browser. | |||
* Der Status muss '''Active''' (Grün) sein. | |||
* Unter dem Reiter '''Aktiv''' muss die Tabelle den Eintrag <code>ImportEnterpriseRoots : true</code> listen. | |||
</ | |||
=== Fehlerbehebung (Debugging) === | |||
; Status "Active but no policies enabled" : Firefox findet die Datei, kann das JSON aber nicht parsen. | |||
* Prüfe auf fehlende Klammern oder Anführungszeichen. | |||
* Nutze die Browser-Konsole (<code>Strg</code> + <code>Umschalt</code> + <code>J</code>) für detaillierte Fehlermeldungen der ''EnterprisePolicies''-Engine. | |||
; Status "Inactive" : Der Pfad ist falsch oder die Dateirechte verhindern den Lesezugriff durch den Firefox-Prozess. | |||
; Seite weiterhin "Not Secure" : Wenn die Policy aktiv ist, aber die Seite rot bleibt, liegt ein Fehler im Zertifikat vor: | |||
* '''SAN (Subject Alternative Name):''' Moderne Browser ignorieren den Common Name (CN). Das Feld <code>subjectAltName</code> ist zwingend erforderlich. | |||
* '''CA-Flag:''' Das Root-Zertifikat muss die Extension <code>Basic Constraints: CA:TRUE</code> besitzen. | |||
* '''Laufzeit:''' Zertifikate mit einer Gültigkeit von über 398 Tagen werden von Mozilla oft abgelehnt. | |||
=== Übertragung auf Thunderbird === | |||
Für Thunderbird kann die identische Datei verwendet werden: | |||
<code>sudo mkdir -p /usr/lib/thunderbird/distribution</code> | |||
<code>sudo cp /etc/firefox/policies/policies.json /usr/lib/thunderbird/distribution/policies.json</code> | |||
[[Kategorie:Administration]] | |||
[[Kategorie:Sicherheit]] | |||
[[Kategorie:Debian]] | |||
Aktuelle Version vom 13. März 2026, 19:24 Uhr
Install
- apt install libnss3-tools
- curl https://xinux.net/images/c/c2/Firefox-ca.sh -o firefox-ca.sh
- chmod +x firefox-ca.sh
- ./firefox-ca.sh ca.crt
Datei
Systemweit
Firefox Enterprise Policies unter Debian
| Config File | /etc/firefox/policies/policies.json |
|---|---|
| Policy Key | ImportEnterpriseRoots |
| Status | about:policies |
Dieser Artikel beschreibt die korrekte Implementierung von Enterprise Policies unter Debian GNU/Linux. Ziel ist es, systemweite Root-Zertifikate automatisch in Mozilla Firefox und Thunderbird zu importieren.
Problemstellung
Standardmäßig ignoriert Firefox den System-Trust-Store von Debian (`/usr/local/share/ca-certificates/`). Manuelle Importe pro Benutzerprofil sind in professionellen Umgebungen nicht skalierbar. Oft meldet der Browser unter about:policies den Status "Inactive" oder "No policies enabled", obwohl Konfigurationsdateien vorhanden sind.
Konfiguration (policies.json)
Pfadstrategie
Unter Debian (insbesondere bei Verwendung von firefox-esr) hat der Pfad in `/etc/` Vorrang vor den Verzeichnissen unter `/usr/`.
- Primärer Pfad: `/etc/firefox/policies/policies.json`
- Alternativer Pfad: `/usr/lib/firefox-esr/distribution/policies.json`
Quelltext
Die JSON-Struktur muss zwingend mit dem "policies"-Objekt beginnen.
{
"policies": {
"Certificates": {
"ImportEnterpriseRoots": true
}
}
}
Implementierung
- Verzeichnis erstellen:
sudo mkdir -p /etc/firefox/policies
- Konfiguration schreiben:
echo '{"policies": {"Certificates": {"ImportEnterpriseRoots": true}}}' | sudo tee /etc/firefox/policies/policies.json
- Berechtigungen anpassen:
sudo chmod 644 /etc/firefox/policies/policies.json
- Prozesse neu starten:
pkill -9 firefox
Validierung
- Öffnen der URL about:policies im Browser.
- Der Status muss Active (Grün) sein.
- Unter dem Reiter Aktiv muss die Tabelle den Eintrag
ImportEnterpriseRoots : truelisten.
Fehlerbehebung (Debugging)
- Status "Active but no policies enabled"
- Firefox findet die Datei, kann das JSON aber nicht parsen.
- Prüfe auf fehlende Klammern oder Anführungszeichen.
- Nutze die Browser-Konsole (
Strg+Umschalt+J) für detaillierte Fehlermeldungen der EnterprisePolicies-Engine.
- Status "Inactive"
- Der Pfad ist falsch oder die Dateirechte verhindern den Lesezugriff durch den Firefox-Prozess.
- Seite weiterhin "Not Secure"
- Wenn die Policy aktiv ist, aber die Seite rot bleibt, liegt ein Fehler im Zertifikat vor:
- SAN (Subject Alternative Name): Moderne Browser ignorieren den Common Name (CN). Das Feld
subjectAltNameist zwingend erforderlich. - CA-Flag: Das Root-Zertifikat muss die Extension
Basic Constraints: CA:TRUEbesitzen. - Laufzeit: Zertifikate mit einer Gültigkeit von über 398 Tagen werden von Mozilla oft abgelehnt.
Übertragung auf Thunderbird
Für Thunderbird kann die identische Datei verwendet werden:
sudo mkdir -p /usr/lib/thunderbird/distribution
sudo cp /etc/firefox/policies/policies.json /usr/lib/thunderbird/distribution/policies.json