Konfigurieren von Firefox zur Verwendung eines Proxys über die Befehlszeile

17

Ich suche nach einer Möglichkeit, Firefox anzuweisen, einen Proxy in Ubuntu Ludid (10.04.1 LTS) zu verwenden.

Ich installiere Ubuntu halbautomatisch auf mehreren identischen Rechnern. Hierfür verwende ich ein Skript, das unter anderem systemweite Proxy-Einstellungen festlegt:

echo "export http_proxy=http://myproxy:3128/" > /etc/profile.d/proxy.sh
echo "export HTTP_PROXY=http://myproxy:3128/" >> /etc/profile.d/proxy.sh
chmod a+x /etc/profile.d/proxy.sh

Ich kann beim Einchecken einer Shell bestätigen, dass die Variablen korrekt gesetzt sind. Die meisten Programme respektieren diese Einstellung und verwenden meinen Proxy. Firefox tut dies jedoch nicht. Wenn ich das Dialogfeld für die Netzwerkverbindungseinstellungen öffne, ist es jedoch auf "Systemeinstellungen verwenden" für den Proxy voreingestellt.

Was erwartet Firefox hier? Eine anders benannte Variable? Kann ich in FFs prefs.js etwas einstellen?

jstarek
quelle

Antworten:

19

Firefox kann einfach nicht die Standard-Funktion ausführen und Umgebungsvariablen verwenden (obwohl dies zum Teil gerechtfertigt ist, da die Standard-Funktion keine automatischen Proxy-Konfigurationsdateien zulässt). Die Einstellungen für statische Proxys sind

user_pref("network.proxy.http", "wwwproxy.example.com");
user_pref("network.proxy.http_port", 3128);
user_pref("network.proxy.type", 1);

Es gibt eine Firefox-Erweiterung $http_proxyund ähnliche Umgebungsvariablen: Environment Proxy .

In neueren Versionen von Firefox werden standardmäßig die üblichen Umgebungsvariablen verwendet, oder wenn die Proxy-Typ-Voreinstellung explizit auf 5 gesetzt ist („System-Proxy-Einstellungen verwenden“), dies funktioniert jedoch bei mir mit der Version in Ubuntu 10.04 nicht.

user_pref("network.proxy.type", 5);
Gilles 'SO - hör auf böse zu sein'
quelle
2
Danke für deine Antworten. Nachdem Gilles angedeutet hatte, dass FF keine Umgebungsvariablen verwendet, ging ich zum Bugtracker von Firefox und fand diesen Eintrag: bugzilla.mozilla.org/show_bug.cgi?id=224886 Das Problem ist also vorab bekannt. Seit 2003.
jstarek
Kann diese Option in / etc / skel eingefügt werden, damit alle zukünftigen Benutzer sie erhalten?
Ubuntuser
@ Ubuntuser Ich glaube nicht. Die Firefox-Optionen befinden sich in einem Unterverzeichnis, dessen Name vom verwendeten Profil abhängt.
Gilles 'SO- hör auf böse zu sein'
8

Sie sagen "Proxy", aber Ihre Beispiele zeigen an, dass Sie wahrscheinlich "HTTP-Proxy" speziell meinen. Wenn Sie jedoch auch Zugriff auf einen SOCKS-Proxy haben, der den HTTP-Verkehr nicht verbietet, können Sie das tsocksTool verwenden:

tsocks firefox

Sobald Sie /etc/tsocks.confentsprechend konfiguriert haben .

jmtd
quelle
Danke für den Tipp. Ja, das hätte ich besser spezifizieren sollen: Es gibt einen Caching-Proxy für http (squid), den ich verwenden muss.
Jstarek
6

Laut einer Auflistung von Kommandozeilenoptionen gibt es keine explizite Option für einen Proxy. Wie du herausgefunden hast, http_proxyfunktioniert auch weder etwas noch ähnliches. Ich würde vorschlagen, zuerst ein Profil zu erstellen:

firefox -CreateProfile foo

Als nächstes können Sie ein sedbeliebiges Tool verwenden, an das Sie schreiben user_pref("network.proxy.http", "YOUR_PROXY"); user_pref("network.proxy.http_port", PORT);möchten prefs.js. Jetzt sollte Firefox mit diesen Proxys problemlos funktionieren.

qbi
quelle