Raspberry PiでWireGuardサーバを立ててみた② -接続編-
前回までのおさらい
前回はRaspberry PiでWireGuardサーバを立ててみました。
今回はこのサーバとのVPN接続を行う手順を記します。
もしWireGuardサーバを立ててないよという方がいれば以下を参考にしてください。
Windows PCの準備
まずはWireGuard接続するための準備をします。
下記サイトにアクセスし、自身のPCのOSに合わせてソフトウェアをダウンロードしてください。
今回はWindows版の解説を行っていきます。
ダウンロードが完了したらアプリを起動します。

左下にある「トンネルの追加」の下矢印をクリックし、「空のトンネルを追加...」を選択してください。
これによって下記のウィンドウが表示されます。

名前は任意で作成してください。
WireGuardクライアントの設定
設定にあたり、サーバの情報を入力する必要があります。
まずはWireGuardサーバにアクセスしましょう。
サーバにアクセスしたらIPアドレスを取得しましょう。
ip a
これによってインターフェースごとのIPアドレスを確認することができます。
次にサーバの公開鍵を確認します。
cat /etc/wireguard/server_public.key
これの出力が公開鍵です。
以上でサーバの情報はすべて確認できました。
次はWireGuardクライアントの設定を行います。
「トンネルの新規作成」の入力欄に、下記を参考に作成していきます。
[Interface]
PrivateKey = <クライアントの秘密鍵>
Address = 10.0.100.10/24
[Peer]
PublicKey = <サーバの公開鍵>
Endpoint = <サーバのIPアドレス>:51820
AllowedIPs = 10.0.100.0/24
上記は最低限の設定です。
もし追加で設定が必要であれば適宜追加してください。
また、現時点では10.0.100.0/24宛の通信をWireGuard VPN経由にする設定となっています。
もしWireGuard VPNを経由する通信を変更する場合は、AllowedIPsを変更してください。
WireGuardサーバの設定
次にWireGuardサーバの設定を行います。
Raspberry Piにアクセスしたら、WireGuardサーバの設定ファイルを編集します。
sudo nano /etc/wireguard/wg0.conf
ファイル編集画面に移動したら、下記を追加してください。
このとき、WireGuardサーバのAddressに注意してください。
[Interface]
Address = 10.0.100.1/24
PrivateKey = <サーバの秘密鍵>
ListenPort = 51820
[Peer]
PublicKey = <クライアントの公開鍵>
AllowedIPs = 10.0.100.10/32
IPアドレスについて
現在、WireGuardサーバで設定しているIPアドレスは10.0.100.1/24です。
これは、10.0.100.2-10.0.100.254の範囲であればWireGuardサーバと接続できるということになります。
今回はクライアントに10.0.100.10を設定しているので、この範囲に含まれているということになります。
※/24というのがサブネットマスクと呼ばれるものですね。
設定が完了したらWireGuardサーバを再起動させましょう。
sudo wg-quick down wg0
sudo wg-quick up wg0
接続確認をしてみる
クライアントとサーバの設定が完了したら通信を始めてみましょう。
まずは現状を見てみます。
コマンドプロンプトで以下を実行してみてください。
ping 10.0.100.1
これを入力してもパケットは届かないはずです。
それではWireGuard接続してみます。
下記ウィンドウにて「有効化」をクリックしてください。

無事に接続されると下記の通りになります。

コマンドプロンプトで確認してみましょう。
ping 10.0.100.1
応答が返ってきたら接続完了です。
ついでなので、WireGuardサーバにSSH接続してみましょう。
これまではRaspberry Piの外部IPアドレスを入力していましたが、下記で接続できるようになるはずです。
ssh <user id>@10.0.100.1
これでWireGuard VPN経由でSSH接続できるようになりましたね(2重暗号化)。
終わりに
今回はWireGuardクライアント側の設定を行いました。
前回の記事だけだとサーバを立てただけだったので、これでWireGuard VPNができるようになりましたね。
ただここで一つ問題があります。
WireGuard通信できたところで意味がない
次の記事はWireGuard設定を追加して、もう少し便利にしたいと思います。
それでは、また現実逃避したいときに書きます。
Discussion