My Internet access is through a proxy, my OS is Debian 8, each application must configure it to use the proxy, but there are some that are a headache to make it work with a proxy, then my question is: is there any way or a program to send all my connections(tcp, udp, etc.) to the proxy? that is to say, how do I set systemwide connection over a proxy server?
There are various solutions for this:
1. Configuring http_proxy variables
You can set
$http_proxy and other such variables. Most applications will pick this variable automatically. To set it system-wide, you can set this variable in either your
~/.bashrc file or
/etc/profile. Set it as:
http_proxy=http://user:firstname.lastname@example.org:3128 https_proxy=https://user:email@example.com:3128 export http_proxy export https_proxy
2. Using proxy_chains
Some applications would not use your proxy variable and they might not even have settings to use a proxy server. In such a case, you can direct all your PC traffic through a proxy server by using
I've never used
proxy_chains, however their homepage seems to tell it all in one single page: http://proxychains.sourceforge.net/howto.html
3. Using transparent proxy
To force all your PC connection through a proxy, you can also use transparent proxy as an alternative to proxy_chains. I don't have much idea how to set this up (I did this a long time back though and it worked!) so you'll have to look on your own.
As shivams said there are various solutions for this.Just by exporting
http_proxy you can't setup the connection. The way I will do setup the proxy will be as below,
First I will setup the authentication by running the
a. To do that edit the
/etc/cntlm.conffile by adding your username, password(you can also use hash generated for your password), domain, workstation and the proxy etc...
b. And I will listen to the port 3128.
I will setup the proxy for different applications or programs like for
wgetI will setup inside
/etc/wgetrc, if it is
- I will export the
http://localhost:3128.You can set this environment variable for a particular session or you can set it putting it inside
To setup the proxy environment variable as a global variable, open /etc/profile file:
# vi /etc/profile
Add the following information: