📶

Linux上でWireGuard鯖を一瞬で構築する

に公開

TL;DR

https://github.com/angristan/wireguard-install

はじめに

VPNを用意しなければいけなくなった。しかし、そんなに時間をかけられない。手軽に自前でVPN鯖を用意したい・・!という方向けです。
普通に既存のインストーラを使用しちゃっているので、(ソースは公開されてるけど)安全性とか気になる方や、自分で1からインスコしたい方は公式ドキュメントとか読んでください。

構築する

構築するとはいえ、インストールスクリプトを実行するだけなのですが・・・。
Linuxが入ったサーバー(VPSや自宅鯖など)で操作してください。

以下のコマンドを入力しましょう。

curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
chmod +x wireguard-install.sh
./wireguard-install.sh

指示通りに進んでいけば行けるのですが、一応対応表を載せておきます。
大体デフォルトで大丈夫だと思います。

名前 説明
IPv4 or IPv6 public address グローバル IPアドレスを入力する
Public interface ip link showなどで見れるinterfaceを指定する
WireGuard interface name WireGuardのinterface名を指定する
Server WireGuard IPv4 WireGuard内のVPN鯖側のIPv4アドレスを決める
Server WireGuard IPv6 WireGuard内のVPN鯖側のIPv6アドレスを決める
Server WireGuard port [1-65535] WireGuardで使用するポートを決める
First DNS resolver to use for the clients クライアントで使うDNS(1)を指定する
Second DNS resolver to use for the clients (optional) クライアントで使うDNS(2)を指定する
Allowed IPs list for generated clients 許可するクライアントのIPリストを指定する(デフォルトだと全て許可)
Client name 接続するクライアント名を決める
Client WireGuard IPv4 WireGuard内のVPNクライアントのIPv4アドレスを指定する
Client WireGuard IPv6 WireGuard内のVPNクライアントのIPv6アドレスを指定する

すると、デカデカとQRコードが張り出されます。
このQRコードには、クライアントで使用する接続情報が入っています。これをWireGuardで読み込む、というよりかは、この中の情報をconfファイルにして読み込む、といった流れです。
ちなみに、confファイル自体もYour client config file is in ...に続くパスに生成されているので、QRコードを読み込んでも、confファイルを取り出しても良いです。

SSHなどで操作しているなら

cat [生成したconfファイルのパス].conf

とかでいけると思います(privateKeyそのまま出てくるけど)

クライアントで設定する

https://www.wireguard.com/install/

ここから自分のOSにあったソフトウェアをインストールしましょう。

インストール後「+」ボタン →「ファイルからトンネルをインポート」→ 先ほど生成したconfファイルを選択し、ファイルをインポートしましょう。

そうすると読み込めるので、有効化ボタンを押して快適なVPNライフを送ってください。

最後に

AAのQRコードいいよね

Discussion