From 53e1f4f795b0dd68ef626d25412d5296e3c47aab Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sat, 3 Feb 2024 23:15:03 +0900 Subject: feat(blog/content): new post /posts/2024-02-03/install-wireguard-on-personal-server/ --- .../install-wireguard-on-personal-server.ndoc | 167 +++++++++++++++++++++ 1 file changed, 167 insertions(+) create mode 100644 vhosts/blog/content/posts/2024-02-03/install-wireguard-on-personal-server.ndoc (limited to 'vhosts/blog/content') diff --git a/vhosts/blog/content/posts/2024-02-03/install-wireguard-on-personal-server.ndoc b/vhosts/blog/content/posts/2024-02-03/install-wireguard-on-personal-server.ndoc new file mode 100644 index 00000000..8e63f7a2 --- /dev/null +++ b/vhosts/blog/content/posts/2024-02-03/install-wireguard-on-personal-server.ndoc @@ -0,0 +1,167 @@ +--- +[article] +title = "【備忘録】 個人用サーバに WireGuard を導入する" +description = "個人用サービスのセルフホストに使っているサーバに WireGuard を導入する作業をしたメモ" +tags = [ + "note-to-self", + "wireguard", +] + +[[article.revisions]] +date = "2024-02-03" +remark = "公開" +--- +
+
+ はじめに +

+ 個人用サービスのセルフホストに使っているサーバに WireGuard を導入する作業をしたのでメモ。 +

+

+ 登場するホストは以下のとおり: +

+
    +
  • サーバ (Ubuntu): 10.10.1.1
  • +
  • クライアント 1 (Windows): 10.10.1.2
  • +
  • クライアント 2 (Android): 10.10.1.3
  • +
+

+ 後ろの IP アドレスは VPN 内で使用するプライベート IP アドレス。 +

+
+
+ WireGuard のインストール: サーバ +

+ まずは個人用サービスをホストしている Ubuntu のサーバに WireGuard をインストールする。 +

+ + + +

+ 次に、WireGuard で使用する鍵を生成する。 +

+ + + +
+
+ WireGuard のインストール: クライアント +

+ 公式サイトから各 OS 向けのクライアントソフトウェアを入手し、インストールする。次に、設定をおこなう。 +

+ + + + [Peer] + PublicKey = <サーバの公開鍵> + AllowedIPs = <サーバの外部 IP アドレス>/32 + Endpoint = <サーバの外部 IP アドレス>:51820 + ]]> + + + + + [Peer] + PublicKey = <サーバの公開鍵> + AllowedIPs = <サーバの外部 IP アドレス>/32 + Endpoint = <サーバの外部 IP アドレス>:51820 + ]]> + +

+ PrivateKeyPublicKey は鍵ファイルのパスではなく中身を書くことに注意。 +

+
+
+ + WireGuard の設定 + +

+ 一度サーバへ戻り、WireGuard の設定ファイルを書く。 +

+ + + + + + ListenPort = 51820 + + [Peer] + PublicKey = <クライアント 1 の公開鍵> + AllowedIPs = 10.10.1.2/32 + + [Peer] + PublicKey = <クライアント 2 の公開鍵> + AllowedIPs = 10.10.1.3/32 + ]]> + +

+ 次に、WireGuard のサービスを起動する。 +

+ + + +
+
+ + ファイアウォールの設定 + +

+ 続けてファイアウォールを設定する。まずは WireGuard が使用する UDP のポートを開き、wg0 を通る通信を許可する。 +

+ + + +

+ 次に、80 や 443 などの必要なポートについて、wg0 を経由してのアクセスのみ許可する。 +

+ + + +

+ 最後に、ufw を有効にする。 +

+ + + +
+
+ + 接続する + +

+ これで、各クライアントで VPN を有効にすると、当該サーバの 80 ポートや 443 ポートにアクセスできるようになったはずだ。念のため VPN を切った状態でアクセスできないことも確認しておくとよいだろう。 +

+
+
-- cgit v1.2.3-70-g09d2