WireGuardのVPNをHTTP/Socks5プロキシとして使えるようにするWireGuardクライアント、”wireproxy”

WireGuardのVPNをHTTP/Socks5プロキシとして使いたい、と思ったことがある方もいるでしょう。
wireproxyはそれを可能にしてくれるWireGuardクライアントです。

Wireguard client that exposes itself as a socks5 proxy – whyvl/wireproxy
github.com

使い方

リリースにあるバイナリは古いのでソースコードからビルドすることをおすすめします。

Bash
git clone https://github.com/pufferffish/wireproxy
cd wireproxy
go build ./cmd/wireproxy

次に、wireproxyの設定ファイルを作成します。
既存のWireGuardプロファイルを流用できます。

INI
WGConfig = <既存のWireGuardプロファイルのパス>

[Socks5]
BindAddress = 127.0.0.1:25344

#認証情報を必要にしたいなら
#Username = ...
#Password = ...

[http]
BindAddress = 127.0.0.1:25345

#認証情報を必要にしたいなら
#Username = ...
#Password = ...

あとは起動するだけでHTTP/Socks5プロキシが建ってくれます。

Bash
./wireproxy -c <wireproxyの設定ファイルのパス>

Cloudflare Warpをwireproxyで使う

Arm64版の公式クライアントがなくて困ってる方や、宗教上の理由公式クライアントが重いと感じる方へ

Cloudflare WarpのWireGuardプロファイルを生成してくれるツールがあります。

🚤 Cross-platform, unofficial CLI for Cloudflare Warp – ViRb3/wgcf
github.com

こちらもソースコードからビルドすることをおすすめします。

Bash
git clone https://github.com/ViRb3/wgcf
cd wgcf
go build

まずはアカウントを作成

Bash
./wgcf register

規約に同意してアカウントを作成したら、WireGuardのプロファイル生成をします。

Bash
./wgcf generate

あとは前述のようにwireproxyの設定ファイルを作成すれば使うことができます。