WSL2上でSSH経由のSOCKSプロキシを作りWindowsから使う
少し難しかったのでメモ。(主にWindowsのUIが)
この書き方はStack overflowのどこかで見かけた。動くとも思ってなかったので元URLのメモもしていなかった。このような書き方に関する公式ドキュメントはどこかにはあるのだろうが、自分はまだ見つけられていない。
ゴール
Windows上のブラウザから、他のサーバー経由でWebにアクセスする。例えば特定のIPアドレスからの接続を許可しているような場合に有効。
VPNやHTTPプロキシを使用しても同じようなゴールを達成できるが、今回はSSHクライアントで標準にサポートされているSOCKSプロキシを使う。プロキシとなるサーバに特別な設定が不要なので簡単。
WSL2上での操作
"-D" オプションを使いながらSSH接続する。
ssh <hostname> -D 1080
これだけで指定したポートでSOCKSプロキシを使うことができる。
試しに使ってみるには、例えば
curl --socks5-hostname localhost:1080 www.google.com -vv
ここまでは簡単。
Windows上での操作
難しいのがSOCKSプロキシを使うためのWindowsの設定。Settings->Network & Internet->Proxy
結論から言うと、Proxy serverのアドレスとして"socks=localhost"と入力するとよい。
この書き方はStack overflowのどこかで見かけた。動くとも思ってなかったので元URLのメモもしていなかった。このような書き方に関する公式ドキュメントはどこかにはあるのだろうが、自分はまだ見つけられていない。
なお、一度Saveして設定を閉じ、また同じ設定を開くと、アドレスが以下のように変化する。
設定後、ブラウザを普通に起動しWebページにアクセスすると、自動的にSSH経由のSOCKSが使われる。
Comments
Post a Comment