Find Proxy Server using Command Line
For any system-wide proxy for HTTP, you can check the value of http_proxy
environment variable:
echo "$http_proxy"
For HTTPS:
echo "$https_proxy"
Similarly, there are ftp_proxy
, socks_proxy
for serving the exact purpose of their names. There is also all_proxy
for setting proxy for all these protocols at once. Just to note, no_proxy
unsets proxy for any specific addresses of any (or all) given protocol. Just for sake of completeness, you might want to check the uppercase version of these variables too, although the lowercases are standard for *_proxy
environment variables (only environment variables i am aware of that are lowercased).
Note that, these will show any system-wide proxy setting, not application-specific. For example, firefox
, or apt
can have their own proxy settings irrespective of any global one. Some applications do not honor these variables too (e.g. specific gnome
apps use gsettings
), so YMMV.
Attempt an http connection to the outside:
wget http://google.com
You'll see something like this as a result:
--2017-06-12 13:02:53-- http://google.com/
Resolving google.com (google.com)... 172.217.11.142, 2607:f8b0:4002:810::200e
Connecting to google.com (google.com)|172.217.11.142|:80... connected.
HTTP request sent, awaiting response... 302 authenticationrequired
Location: http://192.168.254.99:9090/mwg-internal/de5fs23hu73ds/plugin?target=Auth&reason=Auth&ClientID=3130909038&ttl=600&url=aHR0cDovL2dvb2dsZS5jb20v&rnd=1497286973 [following]
--2017-06-12 13:02:53-- http://192.168.254.99:9090/mwg-internal/de5fs23hu73ds/plugin?target=Auth&reason=Auth&ClientID=3130909038&ttl=600&url=aHR0cDovL2dvb2dsZS5jb20v&rnd=1497286973
Connecting to 192.168.254.99:9090... connected.
HTTP request sent, awaiting response... 401 authenticationrequired
Your proxy server in this case is found after the 302 authentication required. http://192.168.254.99:9090/
In Linux, you can use this to check the proxies defined in the system
env | grep proxy