M BUZZ CRAZE NEWS
// general

Configuring Firefox to use a proxy from the command line

By Jessica Wood

I'm looking for a way to tell Firefox to use a proxy in Ubuntu Ludid (10.04.1 LTS).

I'm installing Ubuntu semi-automatically on several identical machines. For this, I use a script that, amongst other things, sets system-wide proxy settings:

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

I can confirm that the variables are set correctly when checking in a shell. Most programs respect this setting and use my proxy. Firefox, however, does not. When I open its network connection settings dialog, however, it is pre-set to "use system settings" for the proxy.

What does Firefox expect here? A differently-named variable? Can I set something in FF's prefs.js?

3 Answers

Firefox just can't do the standard thing and use environment variables (though to be honest this is partly justified as the standard thing doesn't allow for proxy autoconfiguration files). The preferences for static proxies are

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

There's a Firefox extension to use $http_proxy and similar environment variables: Environment Proxy.

Recent versions of Firefox supposedly use the usual environment variables by default, or if the proxy type preference is explicitly set to 5 (“Use system proxy settings”), but it doesn't work for me with the version in Ubuntu 10.04.

user_pref("network.proxy.type", 5);
3

You say 'proxy', but your examples indicate you probably mean 'HTTP proxy' specifically. However, if you also have access to a SOCKS proxy, which does not forbid HTTP traffic, you could use the tsocks tool:

tsocks firefox

once you have configured /etc/tsocks.conf suitably.

1

According to a listing of commandline options there is no explizit option for a proxy. As you found out also neither http_proxy nor something alike works. I would suggest to first create a profile:

firefox -CreateProfile foo

Next you can use sed or whatever tool you like to write user_pref("network.proxy.http", "YOUR_PROXY"); user_pref("network.proxy.http_port", PORT); to prefs.js. Now Firefox should work fine with those proxies.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy