WSL で さっとプロキシサーバを立てる

こんにちは、やまぱんです。
ローカルに簡単に WSL(Ubuntu)上にプロキシサーバを立ててみました🥺
プロキシの検証をするときに役立つと思うので、メモしておきます。

間違ってたら優しく教えてください!

🐧 WSL とは

WSL(Windows Subsystem for Linux)は、Windows 上で Linux(Ubuntu など)を「仮想マシンっぽく」動かせる機能です。

最近では WSL2 という第2世代が主流で、より本格的な Linux 環境が手軽に使えます。
VM のように重くなく、Docker との連携も可能なので、開発や検証用途にはかなり便利です。

🔗 公式ページ:WSL 公式ドキュメント(Microsoft)

🦑 Squid とは

Squid は、HTTP/HTTPS に対応したオープンソースのプロキシサーバです。

  • キャッシュ機能:Webコンテンツの高速化
  • アクセス制御:ネットワークのフィルタリング
  • ログ記録:アクセス状況の可視化や分析に便利

軽量で設定も簡単なので、プロキシの挙動をテストしたいときにピッタリです。

🔗 公式サイト:Squid Proxy Official Website

🔧 WSL に Squid で構築する

以下 URL 先のスクリプトを setup-squid-http.sh を実行するだけで構築完了します👇
ただ、以下のスクリプトは設定が検証向けにガバガバなので、その点は注意してください。

https://github.com/aktsmm/Scripts/tree/main/bash(AzureCLI)/Make_Squid_WebSrv

Readmeはこちら

https://github.com/aktsmm/Scripts/blob/main/bash(AzureCLI)/Make_Squid_WebSrv/README_setup-squid-http.sh.md#%EF%B8%8F-%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A0%85

注意点:ローカル端末からWSL上のSquid を使う際の IPアドレスについて

WSL2 は独自の仮想ネットワークを持っているため、WSL の IP アドレスはローカルの ループバックIPの127.0.0.1やプライベートIP とは異なります

以下のコマンドで WSL 内部のIPアドレスを確認できます:

ip addr show eth0

または簡単に:

hostname -I

出力された IP アドレスを使って、Windows 側のブラウザや curl からアクセスしてみてください:

  • コマンド Invoke-WebRequest http://example.com -Proxy "http://<プロキシのIP>:8080" などにてテスト可能

  cards

シェアする

フォローする