プロキシ認証を自動化する
Basic 認証を要求してくるプロキシサーバーがありますが、これによっていろいろな問題が発生します。
- sbt でアーティファクトがダウンロードできない。
- MySQL Server のインストールで MySQL Installer が VC++ のランタイムをダウンロードできない。
- Visual Studio Code の機能拡張の更新ができない。
- MSYS Git が SSH で動かない。
回避策はあったりなかったりしますが、いちいち調べるのも時間の無駄ですので、これを回避するために自分のマシンにプロキシサーバーを立てて、認証を代行させます。
Squid をインストールします。
C:\Squid\etc\squid\squid.conf を編集します。パスワードは URL エンコードします。Squid はファイルの上から順番に設定を読み込んでいくので、設定を記述する場所に注意します。
1
2
3
4# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
cache_peer proxy.zak.sobal.co.jp parent 3128 0 no-query no-netdb-exchange login=ユーザー名:パスワード1
2acl SSL_ports port 22
acl Safe_ports port 221
2
3
4
5
6
7
8
9
10
11
12#
# Recommended minimum Access Permission configuration:
#
acl TRACE method TRACE
acl GET method GET
acl POST method POST
acl PUT method PUT
acl OPTIONS method OPTIONS
acl DELETE method DELETE
acl SSL method CONNECT
never_direct allow all1
dns_nameservers [DNS サーバー1] [DNS サーバー2] ...
Squid を再起動します。コントロールパネル→管理ツール→サービス→Squid for Windows を選択して「再起動」ボタンを押します。
プロキシの設定を変更します。コントロールパネル→インターネットオプション→接続→LAN 設定→プロキシサーバ
- アドレス: 127.0.0.1
- ポート: 3128
ブラウザで接続を確認します。ブラウザは再起動したほうが確実です。
仮想マシンのプロキシ設定
仮想マシンから、ホストの Squid を経由してインターネットにアクセスするには、以下のように設定します。
- VirtualBox
- アドレス: 10.0.2.2
- ポート: 3128
- Android Virtual Device
- アドレス: 10.0.2.2
- ポート: 3128