はじめに
ConoHa Advent Calendar 2025の3日目の記事です。
今回は「自分用のVPNを構築する」記事となります。
準備する
VPSの準備
OSはDebian12を使用します。
SSHキーとかrootパスワードとかは各自設定してください。
プランはVPN程度なので、一番安い512MBにしました。
aptアップデート
# apt update && apt upgrade
はしておきましょう。
ただ、/etc/apt/sources.listはdeb http://deb.debian.org/debian/ bookworm mainとしか記述がないようで、non-free non-free-firmwareを記述しておきました。
VPN構築
今回はwireguard-installを使ってWireGuardをインストールします。
どうやら初期ではcurlがないみたいなのでインストールしましょう。。。
Welcome to the WireGuard installer!
The git repository is available at: https://github.com/angristan/wireguard-install
I need to ask you a few questions before starting the setup.
You can keep the default options and just press enter if you are ok with them.
訳)
WireGuardインストーラへようこそ!
Gitリポジトリはこちらです:https://github.com/angristan/wireguard-install
セットアップを開始する前に、いくつか質問させてください。
デフォルトのオプションのままでよろしければ、そのままEnterキーを押してください。
ということで、問題がなければエンター連打でOKです。
IPv4 or IPv6 public address: 160.251.200.97
パブリックなIPv4かIPv6を入力します。
最初からIPv4が入った状態なので、問題なければそのままエンターでOKです。
今回はIPv4のまま行きます。
Public interface: eth0
パブリックインターフェイスを聞かれます。
これもこのままエンターでOKです。
WireGuard interface name: wg0
Server WireGuard IPv4: 10.66.66.1
Server WireGuard IPv6: fd42:42:42::1
WireGuardのインターフェイスやIPv4、IPv6を決めれます。
これもエンターでOKです。
Server WireGuard port [1-65535]: 61060
WireGuardの接続ポートを決めれます。
1~65535の間なら好きなポートを設定可能ですが、ウェルノウンポートの指定はやめておきましょう。
今回はこのままのポートで行きます。
First DNS resolver to use for the clients: 1.1.1.1
DNSサーバを決めることができます。
お好みのDNSサーバがあればそれに指定してもOKです。
特にお好みがないならデフォルトの1.1.1.1でいいと思います。
Second DNS resolver to use for the clients (optional): 1.0.0.1
これも同様にDNSサーバの決めれます。
お好みがなければデフォルトのままでいいと思います。
WireGuard uses a parameter called AllowedIPs to determine what is routed over the VPN.
訳)WireGuard は、VPN 経由でルーティングされるものを決定するために、AllowedIPs というパラメータを使用します。
Allowed IPs list for generated clients (leave default to route everything): 0.0.0.0/0,::/0
訳)生成されたクライアントの許可された IP リスト (すべてをルーティングするにはデフォルトのままにします)
接続を許可するIPを設定できます。
どのIPからでも接続できるようにするなら、デフォルトのままにします。
家以外の場所、例えばカフェとかネットカフェのネットワークから接続するのであれば、デフォルトのままにしておく必要があります。
今回はデフォルトのままで行きます。
Okay, that was all I needed. We are ready to setup your WireGuard server now.
You will be able to generate a client at the end of the installation.
Press any key to continue...
訳)
はい、これで必要な設定はすべて完了です。WireGuardサーバーのセットアップ準備が整いました。
インストールが完了すると、クライアントを生成できるようになります。
続行するには任意のキーを押してください。
これで必須な設定は完了です。
任意のキーを押すことで、インストールが始まります。
Client configuration
The client name must consist of alphanumeric character(s). It may also include underscores or dashes and can't exceed 15 chars.
Client name:
訳)
クライアント設定
クライアント名は英数字で構成されている必要があります。アンダースコアまたはダッシュも使用できますが、15文字以内です。
クライアント名:
クライアント名をきめます。
何でもいいです。今回は conohaVPNにしました。
Client WireGuard IPv4: 10.66.66.2
Client WireGuard IPv6: fd42:42:42::2
WireGuardのIPv4とIPv6を決めれます。
デフォルトでいいと思います。
これで設定は完了です。
ポートも開ける
接続ポートが 61060 なので、このポートを開けます。
事前にufwをインストールしておいたので、
# ufw allow 61060
Rule added
Rule added (v6)
これでポートの解放は完了です。
VPNに接続する
今回は Androidアプリで接続します。
wireguardのサイトからPlayストアのリンクをクリックしてインストールしてください。
インストールしたら、wireguardアプリを起動して、画面右下の+マークをタップ、QRコードをスキャンをタップします。
カメラの権限を要求されると思うので、今回のみにして許可します。
設定が完了した際に、QRコードが表示されているはずなので、これを読み取ります。
読み取ると「トンネル名」を決めれます。わかりやすければ何でもOKです。
先程追加したトンネルをタップして、右上にあるトグルスイッチをonにすると接続できます。
ipinfo.ioで見ると、ちゃんとconohaのIPから外に通信できていますね。

speedtestをしてみました 。
ConoHanの帯域はIn 100.0 Mbps / Out 100.0 Mbpsなので、ほぼ上限出ていますね。

これで家のネットワーク以外でも安全に通信できますね。
(まぁ、わざわざ構築するよりも、NordVPNとか使えば楽だと思いますけどね。)