Windows VistaですべてのWindowsアプリケーションのグローバルプロキシ設定
インターネットを使用するすべてのアプリケーションに特定のプロキシサーバーを適用するようにWindows (Vista)を設定するにはどうすればいいですか?
インターネットを使用するすべてのアプリケーションに特定のプロキシサーバーを適用するようにWindows (Vista)を設定するにはどうすればいいですか?
netsh.exe を使用してグローバル、マシン レベルのプロキシを設定できます。実行:
netsh winhttp set proxy <proxy server address> <exception list in quotes, seperated by ;>
箱の外では、すべてのアプリケーションが使用するグローバルプロキシを設定することはできません。プロキシの詳細を Internet Explorer で firedfly が示唆するように入力することはできますが、これは特定のアプリケーションでのみ機能します (ほとんどの場合 Windows アプリですが、Google Chrome はこの設定を使用しています)。これはプロキシへの接続を確立し、トラフィックの***すべてをプロキシにルーティングします(もちろんローカルトラフィックを除く)。
Proxifierは、プロキシサーバーを経由しての作業をサポートしていないネットワークアプリケーションをHTTPSやSOCKSプロキシ、またはプロキシサーバーのチェーンを経由して操作できるようにするプログラムです。 ファイアウォールによってインターネットから分離されたネットワークを介して(ファイアウォールを迂回するためのプロキシトンネルに必要なポートは1つだけです)。
グループポリシーを使用して、すべてのユーザーにデフォルトのプロキシサーバーを設定する:
グループポリシーで、[すべてのユーザーにデフォルトのプロキシサーバーを設定する]ことができます。ローカルコンピュータポリシー] - [コンピュータの構成] - [管理テンプレート] - [Windowsコンポーネント] - [Internet Explorer] - [プロキシ設定を'ユーザーごと'ではなく'マシンごと'にする]を有効にします。この設定により、異なるユーザーがマシンにログインするたびに設定を変更する必要がなくなります。
Local Computer Policy - User Configuration - Windows Settings - Internet Explorer Maintenance - Connection - Proxy Settings. (ここでプロキシ設定を定義することができます)
ローカルコンピュータポリシー - ユーザー設定 - Windows設定 - Internet Explorerのメンテナンス - URL (ここでデフォルトのホームページなどを設定することができます)
また、プロキシサーバーを使用するようにWindows Updateを設定する:
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"
私たちの環境では、結局次のように使用しています: netsh winhttp set proxy 192.168.0.100:88 "<local>;*.company.com"
fiddler を使っている場合、認証済みのブラウザからのリクエストを見て Proxy-Authorization ヘッダをコピーし、リクエストの前にブレークポイントを設定して、プログラムからのリクエストをキャプチャし、そのヘッダをリクエストに貼り付けることができます。あるいは、OnBeforeRequest (Ctrl+R) の中にカスタムルールを追加することもできます:
if(!oSession.oRequest.headers.Exists("Proxy-Authorization")){
oSession.oRequest.headers.Add("Proxy-Authorization", "Basic xxxxxxxxxxxxx");
}
ここで xxxxx はブラウザのリクエストからキャプチャしたものです。恒久的な解決策ではありませんが、シンプルで問題なく動作します。このルールを追加すると、ストリーミングをオンにした状態でも動作します。