1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【備忘録】wg-easyをDockerComposeでサクッと立てる

1
Posted at

はじめに

wg-easyをお試しで使ってみたく公式のDockerCompose設定を参考に立ててみようと思ったのですが、公式の設定はGUIへのアクセスをリバースプロキシを用いる方法のみの案内しかありませんでした。
GUIはローカルから参照できれば十分なので、わざわざリバースプロキシを使わずすぐに使用可能なDockerCompose.yamlを作りました。

動作環境

  • Ubuntu Server 24.04
  • Docker 29.5.2
  • Docker Compose v5.1.4
  • wg-easy v15.3.0

Docker Compose 設定

services:
  wg-easy:
    image: ghcr.io/wg-easy/wg-easy:15
    container_name: wg-easy
    environment:
      - INSECURE=true
      - INIT_ENABLED=true
      - INIT_USERNAME={初期設定の管理者ユーザーネーム}
      - INIT_PASSWORD={初期設定の管理者パスワード}
      - INIT_HOST={コンテナが動いているマシンのあるグローバルIPアドレスorドメイン}
      - INIT_PORT=51820
    volumes:
      - ./etc_wireguard:/etc/wireguard
      - /lib/modules:/lib/modules:ro
    ports:
      - "51820:51820/udp"
      - "{ループバックアドレスor自分自身のローカルIPアドレス}:51821:51821/tcp"
    restart: unless-stopped
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    sysctls:
      - net.ipv4.ip_forward=1
      - net.ipv4.conf.all.src_valid_mark=1

上記の設定を書き、docker compose up -dで起動するだけで動作します。
INIT_*の変数は初期設定用の変数なため、一度コンテナを起動すると別の場所に保管されます。
公式では設定完了後は削除することが推奨されています。

51820ポートはUFWなどのファイアウォールを貫通する(iptableを自動で直接書き換える)ので、UFWでの設定は不要です。
また、51821も同様に書いてしまうと貫通してしまうため、IPアドレスを指定することでUFWを通るようにしています。

$ sudo ufw allow 51821 

UFWを使用している場合は上記の設定を投入することでマシンの外からGUIにアクセスすることができます。

コンテナ起動後

http://{マシンのIPアドレス}:51821でGUIにアクセス可能ですので、INIT_*変数で指定したユーザーでログインできます。

また、51820/udpポートは開けておかないと外からアクセスできないので、お使いのルーターのポートフォワーディング設定を行ってください。

一度設定を行ってしまえば、外部からVPN設定を発行したい場合もVPN経由でGUIにアクセスできるためセキュアで良いと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?