How do I make Windows (Vista) to apply certain proxy server for all applications that use internet?
6 Answers
The short answer is: you can't. There is no "global" proxy setting, because proxies are used by individual applications (like Internet Explorer, Firefox, etc.), not by Windows itself. However, some programs internally use Internet Explorer libraries to access the web, so they will use the IE setting, as posted by firedfly.
You can force individual applications to use proxies, even if the applications themselves don't support proxies, by using tools such FreeCAP or Socksify.
If you really do want to force all programs to go through a proxy it would have to be done at the network level, so you would need to establish a VPN connection to a service like Your Freedom or Steganos Internet Anonym.
-
This answer is more correct, as not all software uses the proxy settings for Internet Explorer. Some software gives you the option to use the same settings as Internet Explorer, but not all of them do that.– TFMAug 26, 2009 at 5:30
-
1+1 FreeCap is exactly what I needed for a very long time! Thanks. Oct 1, 2014 at 19:30
-
The default proxy settings are set in Internet Explorer's options.
Tools->Internet Options->Connections tab->Lan Settings button
The proxy information specified here will be the system default. Though, not all applications use the default proxy settings.
-
1
-
4if you want to enable windows updates via a proxy server, run this command first:
Netsh winhttp import proxy source=ie
. Source: answers.oreilly.com/topic/…– knbMay 8, 2013 at 13:15 -
The way I normally get to proxy settings (in Windows 8+) is
Ctrl+X-C
(for Command Prompt) orCtrl+X-A
(for Admin prompt) and executeinetcpl.cpl
to bring up Internet Options, and then click the Connections tab and Lan Settings button. For Vista, it would beCtrl-R
(Run dialog), entercmd
>[Enter]
>inetcpl.cpl
>[Enter]
. If you want to cut right to the chase, the commandcontrol inetcpl.cpl,,4
opens straight to the Internet Options Connections tab. You may have to tweak the number for earlier versions of Windows (such as Vista). Nov 8, 2015 at 2:56 -
1No, the "Internet Options" are settings for the >current user<, stored in HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings. So this is only for Aplications running in the current user account and not for Services running in the local SYSTEM account– KlausOct 31, 2018 at 15:36
You can set a global, machine level proxy by using netsh.exe. Run:
netsh winhttp set proxy <proxy server address> <exception list in quotes, seperated by ;>
-
1
-
I tried
netsh winhttp set proxy
on my Windows Server 2016, it seems not all programs use this setting. Set in Internet Explorer's options works for me.– CoreyMay 14, 2021 at 6:34
Proxifier
Out of the box, you cannot set a global proxy for all applications to use. Although you can enter your proxy details in Internet Explorer as firedfly suggests, this will only work for certain applications (mostly Windows apps, but Google Chrome uses these settings.).
Privoxy does exactly what you are after. It will establish a connection to the proxy and route all of the traffic out it (excluding local traffic, of course). It works on both Windows and OS X, and even has a portable version.
Proxifier is a program that allows network applications that do not support working through proxy servers to operate through an HTTPS or SOCKS proxy or a chain of proxy servers.
With Proxifier you can work with any Internet client (browsers, FTP, IRC, BitTorrent, messengers, telnet, SSH, video/audio, games...) through a network that is separated from Internet by a firewall (only one open port is required for a proxy tunnel to bypass firewall).
I also used this program to answer my Force Steam (and other programs that do not specify proxy settings) to use a proxy question.
-
2Looks nice, but it's very expensive: $40 for a license, that is not cross-platform, despite the fact that they have both OS X and Windows versions. Jul 8, 2013 at 16:48
-
1
You can use group policy to set the default proxy server for all users:
In group policy: Local Computer Policy - Computer Configuration - Administrative Templates - Windows Componants -Internet Explorer - enable "Make proxy settings 'Per Machine'rather than 'Per User'" This setting makes it so you don't have to reassign the settings each time a different user logs into the machine.
Local Computer Policy - User Configuration - Windows Settings - Internet Explorer Maintenance - Connection - Proxy Settings. (You can define the proxy settings here)
Local Computer Policy - User Configuration - Windows Settings - Internet Explorer Maintenance - URLs (you can set your default home page, ect, here)
There also is an option to configure Windows Update to use a proxy server:
Netsh winhttp set proxy myproxy
Netsh winhttp set proxy myproxy:80 ";bar"
Netsh winhttp set proxy proxy-server="http=myproxy;https=sproxy:88" bypass-list="*. contoso.com"
In our environment we ended up using: netsh winhttp set proxy 192.168.0.100:88 "<local>;*.company.com"
If you have fiddler you can look at requests from your browser after you have already authenticated and copy the Proxy-Authorization header, then set a breakpoint before requests to capture requests from your program and paste the header to the request. Or you can add a custom rule inside OnBeforeRequest (Ctrl+R):
if(!oSession.oRequest.headers.Exists("Proxy-Authorization")){
oSession.oRequest.headers.Add("Proxy-Authorization", "Basic xxxxxxxxxxxxx");
}
where xxxxx is what you captured from the browser's request. Although not a permanent solution it's simple and works fine. Adding the rule also works with streaming turned on.