Wonder Meshインストールスクリプト詳細

インストールスクリプトの内容

🚫

このページは情報提供のみを目的としています。 ここに記載されているコマンドを手動で実行しないでください。必ず Zeabur コンソールで提供されるインストールスクリプトを使用してください。 コマンドを順序通りに実行しないと、マシンが壊れた状態になる可能性があります。

このページでは、Wonder Mesh インストールスクリプトがマシンに対して行う処理を正確に説明します。私たちは完全な透明性を信条としています。実行前に、ハードウェア上で何が動作するかを把握しておくべきです。

Linux

スクリプトは root 権限(sudo bash)で実行され、以下の手順を行います:

1. Tailscale のインストール

  • 公式 Tailscale インストールスクリプトをダウンロードして実行します
  • システムのパッケージマネージャー(apt、dnf、yum など)を通じて tailscale パッケージをインストールします
  • tailscaled systemd サービスを有効化して起動します(起動時に自動起動)
⚠️

すでに Tailscale がインストールされ、別のネットワークに接続されている場合、この手順で既存の Tailscale 設定が上書きされます。

2. Wonder バイナリのダウンロード

  • cdn.zeabur.com から Wonder Mesh クライアントをダウンロードします
  • /usr/local/bin/wonder に配置し、実行可能にします

3. メッシュネットワークへの参加

  • wonder worker join を実行して、プライベートな WireGuard ベースのメッシュネットワークにデバイスを接続します
  • メッシュネットワークは Zeabur がホストする Headscale コーディネーションサーバーによって管理されます
  • デバイスには 100.x.x.x 範囲の Mesh IP アドレスが割り当てられます

4. SSH のインストールと設定

  • openssh-server がインストールされていない場合はインストールします
  • sshd systemd サービスを有効化して起動します
  • パスワード認証を有効にするために SSH 設定を変更します:
    • /etc/ssh/sshd_config を編集して PasswordAuthentication yes を設定します
    • /etc/ssh/sshd_config.d/00-zeabur-password-auth.conf をドロップインオーバーライドとして作成します
⚠️

以前 SSH パスワード認証を無効にしている場合(鍵認証のみ)、この変更により再度有効になります。SSH ポートはメッシュネットワーク経由でのみ到達可能で、パブリックインターネットからはアクセスできません。

5. システムユーザーの作成

  • zeabur ユーザーが存在しない場合、/bin/bash をシェルとして作成します
  • ランダムに生成されたパスワードを設定します
  • sudo(または wheel)グループに追加します
  • /etc/sudoers.d/zeabur を作成し、パスワードなしの sudo アクセスを付与します
⚠️

zeabur ユーザーのパスワードを手動で変更しないでください。Zeabur はこの資格情報を使用して SSH 経由でデバイスを管理しています。変更すると接続が切断され、デプロイメントができなくなります。

6. Zeabur への報告

  • Mesh IP(tailscale ip -4)とパブリック IP(curl ifconfig.me)を取得します
  • Mesh IP、SSH 資格情報、パブリック IP を Zeabur API に送信します
  • これにより、Zeabur はメッシュネットワーク経由の SSH でデバイス上のデプロイメントを管理できるようになります

7. 進捗報告

各ステップの進捗はリアルタイムで Zeabur API に報告されるため、コンソールからインストールを監視できます。エラーが発生した場合、エラー出力の最後の数行が報告されます。

追加されるファイルとサービス(Linux)

種類パス / 名前説明
バイナリ/usr/local/bin/wonderWonder Mesh クライアント
パッケージtailscaleメッシュネットワーキング(WireGuard)
パッケージopenssh-server(未インストールの場合)SSH サーバー
設定/etc/ssh/sshd_config.d/00-zeabur-password-auth.confパスワード認証を有効化
設定/etc/sudoers.d/zeaburzeabur ユーザーのパスワードなし sudo
ログ/tmp/zeabur-install.logインストールログ
システムサービスtailscaledTailscale デーモン(起動時に自動起動)
システムサービスsshdSSH デーモン(起動時に自動起動)
システムユーザーzeabursudo アクセス権を持つユーザー

ネットワーク変更(Linux)

変更説明
WireGuard トンネル100.x.x.x IP を持つメッシュネットワークインターフェースを追加
Tailscale コントロールサーバーZeabur の Headscale インスタンスを指す(公式 Tailscale サービスではない)
SSH ポート 22メッシュネットワーク経由でパスワード認証によりアクセス可能
アウトバウンド接続インストール中に tailscale.comcdn.zeabur.comwonder-net.strrl.devapi.zeabur.comifconfig.me に接続。セットアップ後は、メッシュネットワーキングとプラットフォーム通信のために Tailscale コーディネーションサーバーと api.zeabur.com への継続的な接続が維持されます。

macOS

スクリプトは一般ユーザーとして実行します(sudo を使用しないでください)。メッシュ固有の変更(Tailscale、SSH、zeabur ユーザー、sudoers)は仮想マシン内で適用されます。macOS のシステム設定は直接変更されません。ただし、Homebrew/Lima はホストにインストールされ、Lima はホスト側のポートフォワーディングを作成します(下記参照)。

1. Homebrew のインストール

2. Lima のインストール

  • brew install lima を実行します
  • Lima は軽量な仮想マシンマネージャーで、Homebrew が自動的にインストールする QEMU に依存しています

3. 仮想マシンの作成

  • Ubuntu 24.04 ベースの zeabur-mesh という名前の Lima VM を作成します
  • サーバー作成時に指定した CPU、メモリ、ディスクリソースで VM を設定します
  • サービスで使用されるポート 30000〜32767 の VM からホストへのポートフォワーディングを設定します

4. VM 内で Linux インストールスクリプトを実行

  • limactl shell を使用して VM 内で同じ Linux インストールスクリプト(上記参照)を実行します
  • すべての Tailscale、SSH、ユーザー作成、メッシュネットワーク変更は VM 内で行われます

macOS ホストへの変更

種類パス / 名前説明
パッケージlima(Homebrew 経由)VM マネージャー
パッケージqemu(Homebrew 経由)VM ランタイム
パッケージHomebrew 自体(未インストールの場合)パッケージマネージャー
VM データ~/.lima/zeabur-mesh/VM ディスクイメージと設定
ポートフォワーディングポート 30000〜32767VM からホストの 0.0.0.0 にフォワード

macOS の SSH 設定、システムユーザー、ネットワーク設定は変更されません。なお、Lima はサービスポート(30000〜32767)をホストの 0.0.0.0 にフォワードするため、ローカルネットワークからアクセス可能になります。