昔のブログから記事をコピペしています。
そのため、情報が古い可能性があります。
以降、以前のブログからの記事
今回は、社内などのProxy環境において、認証画面が出ないツールで認証を突破する方法を記載します。
突破と言えど、Proxyを無視するわけではなく、Windowsに認証情報を記憶させる事で
正式な手順を踏んで認証をクリアします。
Office製品でも、Visioなどは認証画面が出ない為Proxy環境下ではインストールが失敗してしまいます。
また、最近流行りのPythonスクリプトなどで、WEB情報を利用する自作ツールもコマンドプロンプトで実行する事になるので、これから紹介する方法を利用する必要があります。
大きく下記の2種類の方法で実現することができます。
- 環境変数にプロキシ(Proxy)情報を埋め込むパターン
- コマンドプロンプトにプロキシ(Proxy)情報を設定するパターン
環境変数にプロキシ(Proxy)情報を埋め込むパターン
この方法の利点は”どんなツールも認証が不要になる”
欠点は、PCにパスワードが生データとして保存される、悪意のあるソフトが認証無で社外に出れてしまう。
そのため、あまりお勧めしません。
変数名:http_proxy 変数値:http://{ユーザ名}:{パスワード}@{ホスト名}:{ポート番号} 変数名:https_proxy 変数値:http://{ユーザ名}:{パスワード}@{ホスト名}:{ポート番号}
設定例
変数値:http://hogehoge:12345@proxy.example.com:8080
コマンドプロンプトにプロキシ(Proxy)情報を設定するパターン
利点は、意図したソフト以外は認証を突破することができない。従来のセキュリティが保たれる(?)
欠点としては、毎回入力しないといけない事と、別スレッドを開く場合は認証が引き継がれない。
set http_proxy=http://{ユーザ名}:{パスワード}@{ホスト名}:{ポート番号} set https_proxy=http://{ユーザ名}:{パスワード}@{ホスト名}:{ポート番号}
ちなみに、PIPなどでパッケージをインストールする際には
律儀に記述する方法の他に
set http_proxy=http://{ユーザ名}:{パスワード}@{ホスト名}:{ポート番号} pip install {パッケージ名}
下記のようにオプションとしてproxyを記述することで、1行で記載することもできます。
pip install {パッケージ名} --proxy http://{ユーザ名}:{パスワード}@{ホスト名}:{ポート番号}
以上です。認証Proxyが憎い!