Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

As a consultant, I used to work at different clients premises.

It happens frequently that most of them has specific proxy settings, but not all the application I have installed on my laptop get settings from system preferences, for allowing me to change settings in one place.

Some of them bypass system preferences completely, proposing their own mask for entering specific data such as username, host and password.

I am looking for a convenient and not much intrusive way to share a common access point on which I could enter data, and maybe persist them.

An 'automatic' switching would be ideal, for example based on some network identification, but there's no problem for me to enter data manually.

I am not an IT expert, but to explain myself clearly, I am looking for a solution like .pac file is for browsers.

Relevant OS I am using are MacOSX and Linux (Ubuntu).

share|improve this question
up vote 1 down vote accepted

I am unable to answer this question for Mac OS X because I do not run that operating system, so at least one other answer (or edit this answer!) will be needed.

In the general case, you can "force" all traffic to be routed through a proxy on localhost which can then route through the HTTP(S) or SOCKS proxy of the organization by using a configuration such as Squid. This should work on all operating systems but the configuration would be slightly different. This is especially applicable to Ubuntu, but I have no idea how well Squid runs on Mac OS X.

To set up Squid, you can follow this tutorial, or follow these general steps (outlined briefly here; should be enough if you know the tools):

  1. Set up Squid locally to listen on localhost and forward all traffic to a downstream proxy (the organization's HTTP or SOCKS proxy depending on what info they provide you).
  2. Use iptables (or whichever static routing/port forwarding tool your OS uses; it will probably be different on Mac OS X and definitely different on Windows) to statically forward traffic from port 80 (HTTP) and port 443 (HTTPS) to Squid.

Note that many organizations' proxies can only handle HTTP and HTTPS connections, and are not designed to handle (or outright reject) other protocols by performing stateful packet inspection and rejecting all the other protocols. They might also limit which ports you can use. This Squid method should work for all outbound HTTP/HTTPS traffic that obeys the routing rules of the IP stack, which, all application traffic should. It doesn't require any special hardware, but it does require administrative/root access to your own system.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.