Windows 10でUbuntu WSLを使用しています。HTTPプロキシを認証付きで構成する方法を教えてください。
私はあなたのプロキシが NTLMベースのユーザー認証 を必要とすると想定していますが、これは$HTTP_PROXY
で指定された資格情報では機能しません。これに必要なNTLM対応プロキシ: cntlm 。
プロキシをインストールするdefault方法はSudo apt-get install cntlm
を使用することですが、プロキシがないと明らかに失敗します。パッケージ cntlm_0.92.3-1ubuntu1_AMD64.deb を手動でダウンロードして、WSLインスタンスにコピーする必要があります。
パッケージをインストールする
$ Sudo dpkg -i cntlm_0.92.3-1ubuntu1_AMD64.deb
cntlm
プロキシには、/etc/cntlm.conf
に適切なNTLMプロキシ設定が必要です:
# /etc/cntlm.con
Domain Domain
Username username
Proxy 1.2.3.4:5678
NoProxy localhost, 127.0.0.*, 10.*, 192.168.*
Listen 3128
これは、cntlm
に最低限必要な構成です。次のコマンドでcntlm
をテストして確認します。
$ cntlm -M http://www.google.com
cntlm: Starting cntlm version 0.92.3 for LITTLE endian
cntlm: Proxy listening on 127.0.0.1:3128
cntlm: Workstation name used: hostname
Password:
認証が成功した場合、-H
スイッチを使用して認証用のハッシュを生成します。
$ cntlm -H
cntlm: Starting cntlm version 0.92.3 for LITTLE endian
cntlm: Proxy listening on 127.0.0.1:3128
cntlm: Workstation name used: somehost
cntlm: Using following NTLM hashes: NTLMv2(1) NT(0) LM(0)
Password:
PassLM 123456789ABCDEF123456789ABCDEF12
PassNT 123456789ABCDEF123456789ABCDEF12
PassNTLMv2 123456789ABCDEF123456789ABCDEF12 # Only for user 'username', domain 'Domain'
cntlm: Terminating with 0 active threads
3つのハッシュPassLM
、PassNT
およびPassNTLMv2
をcntlm
構成ファイル/etc/cntlm.conf
に追加します。次に、systemd
を介してプロキシをアクティブ化します。
$ Sudo systemctl restart cntlm
これで、プロキシはローカルホストでポート3128
をリッスンするはずです。
これで、この post で説明されているようにプロキシを構成できますが、以下を使用します。
$ export http_proxy=http://localhost:3128/
$ export https_proxy=http://localhost:3128/