VyOS で WireGuardによるVPN接続
検証環境として構築した仮想ネットワークに対して、自身のローカル端末からアクセスするために、ゲートウェイとなるVyOSのルータとWireGuardによるVPN接続を構築した際のメモとなります。
設定
キーペアの生成
VyOS上でVPNサーバのキーペアを生成。今回はサーバ側、クライアント側双方のキーペアの生成をVyOS側で実施。
サーバ用キーペア
$ generate wireguard named-keypairs <KEY_NAME>
生成されたキーの確認。
$ show wireguard keypairs pubkey <KEY_NAME> RvTYdrnV+80IP/8uXDdWD/sXzv+1H+xurzy6ZrNXhAw=
クライアント用キーペア
$ generate wireguard named-keypairs client01
インタフェース設定
VyOS(サーバ)側
set interfaces wireguard wg0 address '172.23.255.1/24' set interfaces wireguard wg0 peer client01 allowed-ips '172.23.255.0/24' set interfaces wireguard wg0 peer client01 pubkey <CLIENT_PUBLIC_KEY> set interfaces wireguard wg0 port 51820 set interfaces wireguard wg0 privatekey <KEY_NAME> set protocols static interface-route 10.2.0.0/24 next-hop-interface wg0
クライアント側
今回はmacOSにてコマンドラインで設定。
/usr/local/etc/wireguard/wg0.conf
[Interface] PrivateKey = <CLIENT_PRIVATE_KEY> Address = 172.23.255.2 [Peer] PublicKey = <SERVER_PUBLIC_KEY> AllowedIPs = 172.23.0.0/16 #VPN経由とするネットワーク EndPoint = <SERVER_ADDRESS>:51820
接続・確認
wg-quick でVPNのセッションを開始。
$ wg-quick up wg0
対向にping疎通が取れることを確認。