Linux ホストに WireGuard をインストールして管理する最も簡単な方法が見つかりました。
安定版については、本番ブランチの説明をお読みください。
複数の docker イメージ タグが提供されています。以下は、どれが最適かを判断するのに役立ちます。
タグ | 支店 | 例 | 説明 |
---|---|---|---|
latest | production | ghcr.io/wg-easy/wg-easy:latest またはghcr.io/wg-easy/wg-easy | 可能な限り安定し、必要に応じてバグ修正を迅速に取得し、 production にデプロイします。 |
14 | production | ghcr.io/wg-easy/wg-easy:14 | 最新と同じように、バージョンタグを付けてください。 |
nightly | master | ghcr.io/wg-easy/wg-easy:nightly | ほとんどの場合、不安定なパッケージとコードが頻繁に更新され、 master に対してデプロイされます。 |
development | プルリクエスト | ghcr.io/wg-easy/wg-easy:development | 開発に使用され、 master に到達する前に PR からのコードをテストします。 |
Docker をまだインストールしていない場合は、次のコマンドを実行してインストールします。
curl -sSL https://get.docker.com | sh
sudo usermod -aG docker $( whoami )
exit
そして再度ログインしてください。
wg-easy を自動的にインストールして実行するには、次を実行するだけです。
docker run --detach
--name wg-easy
--env LANG=de
--env WG_HOST= < YOUR_SERVER_IP >
--env PASSWORD_HASH= ' <YOUR_ADMIN_PASSWORD_HASH> '
--env PORT=51821
--env WG_PORT=51820
--volume ~ /.wg-easy:/etc/wireguard
--publish 51820:51820/udp
--publish 51821:51821/tcp
--cap-add NET_ADMIN
--cap-add SYS_MODULE
--sysctl ' net.ipv4.conf.all.src_valid_mark=1 '
--sysctl ' net.ipv4.ip_forward=1 '
--restart unless-stopped
ghcr.io/wg-easy/wg-easy
<YOUR_SERVER_IP>
WAN IP または動的 DNS ホスト名に置き換えます。
<YOUR_ADMIN_PASSWORD_HASH>
、Web UI にログインするための bcrypt パスワード ハッシュに置き換えます。ハッシュされたパスワードを生成する方法については、「How_to_generate_an_bcrypt_hash.md」を参照してください。
Web UI はhttp://0.0.0.0:51821
で利用できるようになります。
Prometheus メトリクスはhttp://0.0.0.0:51821/metrics
で利用できるようになります。グラファナ ダッシュボード 21733
設定ファイルは
~/.wg-easy
に保存されます
WireGuard Easy は Docker Compose でも起動できます。 docker-compose.yml
をダウンロードし、必要な調整を行ってdocker compose up --detach
を実行するだけです。
このプロジェクトを楽しんでいますか?エミールにビールを買ってください! ?
コアコンポーネントへの寄付: WireGuard
これらのオプションは、 docker run
コマンドで-e KEY="VALUE"
を使用して環境変数を設定することで構成できます。
環境 | デフォルト | 例 | 説明 |
---|---|---|---|
PORT | 51821 | 6789 | Web UI 用の TCP ポート。 |
WEBUI_HOST | 0.0.0.0 | localhost | Web UI がバインドする IP アドレス。 |
PASSWORD_HASH | - | $2y$05$Ci... | 設定すると、Web UI にログインするときにパスワードが必要になります。ハッシュを生成する方法については、「bcrypt hash.md を生成する方法」を参照してください。 |
WG_HOST | - | vpn.myserver.com | VPN サーバーのパブリック ホスト名。 |
WG_DEVICE | eth0 | ens6f0 | ワイヤーガード トラフィックが転送されるイーサネット デバイス。 |
WG_PORT | 51820 | 12345 | VPN サーバーのパブリック UDP ポート。 WireGuard は、Docker コンテナ内でそれ (それ以外の場合はデフォルト) をリッスンします。 |
WG_CONFIG_PORT | 51820 | 12345 | ホーム アシスタント プラグインで使用される UDP ポート |
WG_MTU | null | 1420 | クライアントが使用する MTU。サーバーはデフォルトの WG MTU を使用します。 |
WG_PERSISTENT_KEEPALIVE | 0 | 25 | 「接続」を開いたままにする秒単位の値。この値が 0 の場合、接続は維持されません。 |
WG_DEFAULT_ADDRESS | 10.8.0.x | 10.6.0.x | クライアントの IP アドレス範囲。 |
WG_DEFAULT_DNS | 1.1.1.1 | 8.8.8.8, 8.8.4.4 | クライアントが使用するDNSサーバー。空白の値に設定すると、クライアントは DNS を使用しません。 |
WG_ALLOWED_IPS | 0.0.0.0/0, ::/0 | 192.168.15.0/24, 10.0.1.0/24 | クライアントが使用する許可された IP。 |
WG_PRE_UP | ... | - | デフォルト値については、config.js を参照してください。 |
WG_POST_UP | ... | iptables ... | デフォルト値については、config.js を参照してください。 |
WG_PRE_DOWN | ... | - | デフォルト値については、config.js を参照してください。 |
WG_POST_DOWN | ... | iptables ... | デフォルト値については、config.js を参照してください。 |
WG_ENABLE_EXPIRES_TIME | false | true | クライアントの有効期限を有効にする |
LANG | en | de | Web UI言語 (サポート: en、ua、ru、tr、no、pl、fr、de、ca、es、ko、vi、nl、is、pt、chs、cht、it、th、hi、ja、si) 。 |
UI_TRAFFIC_STATS | false | true | Web UI で詳細な RX / TX クライアント統計を有効にする |
UI_CHART_TYPE | 0 | 1 | UI_CHART_TYPE=0 # グラフは無効、UI_CHART_TYPE=1 # 折れ線グラフ、UI_CHART_TYPE=2 # 面グラフ、UI_CHART_TYPE=3 # 棒グラフ |
WG_ENABLE_ONE_TIME_LINKS | false | true | 短い 1 回限りのダウンロード リンクの表示と生成を有効にする (5 分後に期限切れになる) |
MAX_AGE | 0 | 1440 | Web UI セッションの最大存続期間 (分単位)。 0 ブラウザが閉じるまでセッションが存在することを意味します。 |
UI_ENABLE_SORT_CLIENTS | false | true | UI によるクライアントの並べ替えを有効にする |
ENABLE_PROMETHEUS_METRICS | false | true | Prometheus メトリクスhttp://0.0.0.0:51821/metrics およびhttp://0.0.0.0:51821/metrics/json を有効にする |
PROMETHEUS_METRICS_PASSWORD | - | $2y$05$Ci... | 設定されている場合、メトリクスを要求するときに基本認証が必要になります。ハッシュを生成する方法については、「bcrypt hash.md を生成する方法」を参照してください。 |
WG_PORT
変更する場合は、必ず公開ポートも変更してください。
最新バージョンに更新するには、次のコマンドを実行します。
docker stop wg-easy
docker rm wg-easy
docker pull ghcr.io/wg-easy/wg-easy
次に、上記のdocker run -d ...
コマンドを再度実行します。
Docker Compose を使用すると、WireGuard Easy は 1 つのコマンドで更新できます: docker compose up --detach --pull always
(Compose ファイルでイメージ タグが指定されており、それがlatest
でない場合は、目的のタグに変更されていることを確認してください) ; デフォルトでは省略され、デフォルトはlatest
です)。
新しいイメージがプルされた場合、WireGuared Easy コンテナは自動的に再作成されます。
あまり一般的ではない、または特殊な特殊なシナリオについては、Wiki で提供されている詳細情報を参照してください。