Konfigurieren Sie Firefox ohne Verwendung der GUI

Konfigurieren Sie Firefox ohne Verwendung der GUI

im Rahmen der Automatisierung der Installation einer Maschine möchte ich Firefox, insbesondere die Proxy-Einstellungen, über die Kommandozeile konfigurieren, entweder durch Ausführen von Befehlen oder beispielsweise durch Bearbeiten von Konfigurationsdateien.

Ist das möglich und wenn ja, wie?

Edit: Ich habe vergessen zu erwähnen, dass ich den Proxy für alle Benutzer konfigurieren möchte.

Antwort1

Entsprechend derhttps://support.mozilla.org/en-US/kb/anpassen-von-firefox-mit-autoconfigSie müssen 2 Dateien erstellen. Die erste Datei autoconfig.js sollte sich im Verzeichnis install-dir/defaults/pref befinden und nur 2 Zeilen enthalten:

pref("general.config.filename", "firefox.cfg");
pref("general.config.obscure_value", 0);

Die zweite Datei firefox.cfg sollte sich im Installationsverzeichnis befinden und die Einstellungen Ihres Proxys enthalten.

Wenn Sie Ubuntu 22.04 oder höher verwenden, wird Firefox als Snap bereitgestellt (siehehttps://ubuntu.com/desktop/features). Möglicherweise verwenden Sie Snap auch auf anderen Distributionen. Wenn Sie nicht sicher sind, ob Firefox als Snap installiert ist, versuchen Sie Folgendes:

$ which firefox
/snap/bin/firefox
or
~$ snap list
Name               Version          Rev    Tracking         Publisher   Notes
firefox            110.0-3          2356   latest/stable/…  mozilla    -

Firefox Snap kann Verzeichnisse wie /usr/lib/firefox nicht lesen und das Dateisystem von Firefox Snap ist schreibgeschützt. Ab Firefox 108 haben Sie die Möglichkeit, Ihre Konfigurationsdateien in /etc/firefox abzulegen (erstellen Sie dieses Verzeichnis einfach, wenn es noch nicht existiert). Führen Sie die folgenden Schritte aus. Sie müssen die IP Ihres Proxys entsprechend anpassen.

$ cd /etc
$ sudo mkdir firefox  
$ cd /etc/firefox

Erstellen Sie die Datei firefox.cfg mit folgendem Inhalt (der erste Kommentar ist wichtig):

// IMPORTANT: Start your code on the 2nd line
pref("network.http.referer.disallowCrossSiteRelaxingDefault.top_navigation", true);
pref("network.proxy.backup.ssl", "");
pref("network.proxy.backup.ssl_port", 0);
pref("network.proxy.http", "192.168.XXX.XXX");
pref("network.proxy.http_port", XXXX);
pref("network.proxy.share_proxy_settings", true);
pref("network.proxy.ssl", "192.168.XXX.XXX");
pref("network.proxy.ssl_port", XXXX);
pref("network.proxy.type", 1);
pref("network.trr.mode", 5);

Erstellen Sie die anderen Verzeichnisse:

$ sudo mkdir /etc/firefox/defaults 
$ sudo mkdir /etc/firefox/defaults/pref 
$ cd /etc/firefox/defaults/pref

Erstellen Sie die Datei autoconfig.js mit folgendem Inhalt:

pref("general.config.filename", "firefox.cfg");
pref("general.config.obscure_value", 0);

Nun ist der Proxy für alle Benutzer auf diesem lokalen System eingerichtet. Weitere Infos findet ihr hier:https://bugzilla.mozilla.org/show_bug.cgi?id=1785278

Antwort2

Sie haben grundsätzlich zwei Möglichkeiten (die mir einfallen)

  1. Starten Sie Firefox und aktualisieren Sie Ihr Profil mit den richtigen Einstellungen (z. B. Proxy-Einstellungen). Schließen Sie dann das Programm und rufen Sie Ihre Konfiguration in ab ~myusername/.mozilla/firefox/xxxxxxx.default/prefs.js.xxxxxist eine dynamische Zeichenfolge. Sie können diese Benutzereinstellungen dann für Ihre Bereitstellung verwenden.
  2. Aktualisieren Sie diese Datei direkt mit den Proxy-Einstellungen, nachdem Sie eine Maschine bereitgestellt/installiert haben.

Wenn Sie Firefox mit diesem Benutzer starten, werden die Einstellungen direkt angewendet.


Laut dem Kommentar von @Sparhawk würde die zweite Option besser passen. In diesem Fall behalten wir das Original prefs.jsso intakt wie möglich bei und ändern lediglich die Proxy-Einstellungen:

user_pref("network.proxy.http", "IPADDRESS OR URL");
user_pref("network.proxy.http_port", 8080);

verwandte Informationen