← 開発日記に戻る

2026年、カナダのリモートMac M4でOpenClawのiOS/Androidノードペアリングを完了する方法——gateway.mode remotewss/Tailscaleセキュア入口、跨洋SSHトンネルとopenclaw doctorチケット排障(手順チェックリスト+対照表+FAQ)

開発 · 2026.05.19 · 12 分

スマートフォンとノートPCがカナダのOpenClaw GatewayへiOS/Androidノードとして接続するイメージ

OpenClawのGatewayがカナダのリモートMac mini M4にだけ載っている一方で、APACのメンバーがiPhone・iPad・Androidをノード(role: nodeとして参加させたいとき、論点は「アプリが入るか」ではなく、端末のWebSocketが常時稼働ホスト上の準拠したwss://エンドポイントへ届くか、そして運用者がgateway.mode: "remote"とCLI承認を揃えているかです。本稿は2026年向けのGateway主導ノードペアリングRunbookです。macOSメニューバー・Dashboard・18789のSSH/Tailnet配線は2026年、OpenClawのGatewayをカナダの遠隔Mac M4だけに置く:macOSクライアントRemote over SSH/Tailnet、Dashboardと18789のつなぎ方──跨洋チームのtoken、loopback束ねとLaunchAgent常駐(手順+対照表+FAQ)が担当し、本稿はスマホを配線する位置づけです。Gateway未導入なら先にOpenClaw 2026:リモートMacでの導入・デプロイと排障 — openclaw onboard、Gatewayデーモン、カナダM4の中〜上位リソース設計を完了してください。

1. カナダM4をモバイルノードの唯一Gatewayにする理由

OpenClawのリモートモデルでは、意図的にプロファイルを分けない限り各ホストにGatewayプロセスは1つが原則です。Gatewayがセッション・Channels・認証・エージェント状態を握り、iOS/AndroidアプリはGatewayをホストしません——Gateway WebSocketに周辺ノードとして接続し、node.* RPCを交換します。カナダで借りたMac mini M4は「常時オンライン」役に合います。ノートはスリープしても、Telegram/Slack Channelsとペアリングキューは止めたくない、という現場が多いからです。スマホはカメラ・センサー・現場操作を提供し、M4は継続性を提供します。

跨太平洋チームで多い失敗は、APACのノートに第2 Gatewayを立てることです。トークンが割れ、ペアリング要求が別ホストで期限切れになり、openclaw nodes pendingが空に見えたまま端末が回り続けます。是正はカナダGateway 1本+全CLI/ノードをremote向けで、APACメンバーはSSHまたはtailnetでホストを操作するだけにすることです。

G
カナダM4=正規Gateway
N
スマホはノードのみ
wss
越境ペアリングはTLS WS必須

2. 2026年のGateway主導ペアリング(何が変わったか)

gateway-owned pairing以降、Gatewayが参加許可の単一の真実源です。流れは:ノードがWebSocket接続 → Gatewayがpendingを保存しnode.pair.requestedを発火 → 運用者がopenclaw nodes approve <requestId>(または同等UI) → Gatewayがトークン発行 → ノードがペア済みで再接続。pendingは5分で失効するため、古いQRやセットアップコードを追わず再生成します。

2026.3.31以降、ノードコマンドはnode pairing承認まで無効のままです——デバイスペアリングだけでは、宣言したnodeコマンドは露出しません。openclaw devices approveopenclaw nodes approveは関連するが別ゲートとして扱ってください。デバイス一覧に載ってもnode RPCが1008: pairing requiredなら、nodeストアが未承認です。スキャン後にopenclaw nodes pendingが空のままなら、WebSocketペアリング状態をnodeストアへ書くビルド(2026.2.28+の修正群)へ上げてからネットワーク切り分けに入ります。

プロトコル上、運用者はnode.pair.listnode.pair.approvenode.pair.rejectをCLIラッパ経由で触ります。UIは同じGateway真実の薄いクライアントです。監査ではカナダホストのペアリングログが正であり、「最後にアプリを開いたノート」ではありません。

3. gateway.mode remoteとクレデンシャル優先順位

カナダホストではGatewayを127.0.0.1:18789で待ち受け(ビルド既定をチームで1ポートに固定)。APAC運用ノートではgateway.mode: "remote"とし、openclaw healthopenclaw nodes pending・approveが空のローカル18789ではなくカナダへ向くようにします。

公式リモート指針:Gatewayがloopbackのみのときはgateway.remote.urlws://127.0.0.1:18789のままにし、CLIの前にSSHローカルフォワードを張る。tailnet直結ならtransport: "direct"とプライベートws://またはwss:// URL。重要:--urlは設定トークンを暗黙継承しない——URL上書き時は--tokenまたは--passwordを明示します。経路の深掘りはOpenClaw 2026:カナダのリモートMac M4でSSHトンネルと直結ゲートウェイのどちらを選ぶ?gateway.remote.token・18789・PATH/launchdの手順と排障対照を参照してください。

運用ノート:loopback+SSHトンネル(抜粋)
{
  gateway: {
    mode: "remote",
    remote: {
      url: "ws://127.0.0.1:18789",
      token: "<gateway-token>",
      sshTarget: "ca-m4-gateway",
    },
  },
}
Tailnet直結(抜粋)
{
  gateway: {
    mode: "remote",
    remote: {
      transport: "direct",
      url: "wss://ca-m4.your-tailnet.ts.net",
      token: "<gateway-token>",
    },
  },
}
クレデンシャル源 優先度 典型ミス
CLI --token / --password 指定時は最優先 --urlだけで設定トークンが効くと思う
OPENCLAW_GATEWAY_TOKEN 環境変数 シェル単位でファイルを上書き LaunchAgentとSSHセッションでenvが不一致
設定のgateway.remote.token remoteモードの既定 ホスト側だけローテーションし端末が古いまま
macOSアプリ「Remote」プロファイル UI別ストア CLIは緑だがアプリだけ旧トークン

4. ペアリングRunbook:loopback緑からnodes approveまで

GatewayがカナダM4でlaunchd管理済みと仮定します。以下が失敗する段階で、公開平文ws:// IPへスマホを向けないでください。

ステップ1 — Gatewayホストでloopbackヘルス

カナダMacへSSHし、待ち受けとヘルスを確認:

Gatewayホスト上
curl -fsS "http://127.0.0.1:18789/health" && echo OK
lsof -nP -iTCP:18789 -sTCP:LISTEN

ステップ2 — スマホ向けセキュアWebSocket入口

越境モバイルペアリングではiOS/Androidが平文ws://をフェイルクローズします。GatewayをloopbackのままTailscale Servewss://<magicdns>を公開するのが第一候補(企業向けは信頼チェーン付きリバースプロキシ)。オフィスLANデバッグのみws://可;跨洋の公衆インターネット上の端末は不可。

ステップ3 — QR/セットアップコードとpending

ペアリング素材の生成
openclaw qr
openclaw qr --remote
openclaw nodes pending
openclaw nodes approve <requestId>
openclaw nodes status

スキャン後、承認前にpending行が見えることを確認。深夜の委託先が未知フィンガープリントを承認しないよう、チケットIDと紐づけて記録します。

ステップ4 — node RPCのスモーク

Gateway側から最小のnode.*呼び出し、またはnodeツールを要するChannelsワークフローを1本。太平洋RTTが高いだけでは失敗ではありません。頻繁切断ならtailnet経路・MTU・端末の省電力を疑い、いきなりアプリ再インストールに走らないでください。

5. セキュア入口の意思決定マトリクス(スマホ vs 運用者)

スマホにSSHトンネルはありません。運用者にはあります。Runbookで経路を分けて書きます。

入口種別 スマホのプロトコル 典型用途 リスク
LAN ws://192.168.x.x:18789 平文ws(私有LAN) オフィスWi‑Fiデバッグ 跨洋公衆インターネット向け不可
Tailscale Serve wss://*.ts.net wss+tailnet ID APAC端末+カナダGateway 入社ごとのACL見直し;ホスト信頼
社内CA/プロキシ wss wss+bearer token 証明書ピン留めポリシー iOSは信頼CAまたはpin設定が必要
公開IP ws:// リモートペアリング拒否 設計上フェイルクローズ;18789生公開禁止
Dashboard記事との境界
ブラウザDashboard(SSH -L、tailnetブックマーク)はカナダ単一GatewayのSSH/Tailnet手順の領域です。本稿はスマホのwssペアリングとnodes approveです——モバイルチケットに「先にDashboardを開く」という受け入れ順を流用しないでください。

6. 跨洋SSH:tailnet未参加の端末でも運用者がapproveする

委託先のスマホがTailscaleに入れない場合でも、端末にはwss://(Serveまたは社内プロキシ)が必要です。SSHは運用者がトンネル後にloopbackでapproveするためのもので、スマホのTLS経路の代替にはなりません。

APACノート → カナダM4
ssh -N -L 18789:127.0.0.1:18789 user@ca-m4-host
# 別ターミナル:remote設定は ws://127.0.0.1:18789
openclaw health --token "<gateway-token>"
openclaw nodes pending
openclaw nodes approve <requestId>

24/7トンネルは運用MacのLaunchAgentにssh -Nを載せ、gateway.remote.tokenは設定ファイルに置きます。カナダホストはGatewayをloopbackのみのまま維持します。

役割 推奨経路 ペアリングコマンド 失敗時の確認
カナダM4(Gateway) loopback+launchd openclaw qrnodes pending lsof -i :18789、Gatewayログ
APAC運用Mac SSH -L+remote nodes approvedoctor トンネル生存?トークン明示?
iOS / Android tailnetまたはServeのwss:// アプリスキャン、オンラインバッジ 公開ws誤用、証明書信頼

7. M4キャパシティ:Gateway 1台に複数スマホノード

カナダの24 GB / 512 GB M4は、Channelsとワークスペーススナップショットを抑えればGateway 1本+複数ペア済みノードを余裕で載せます。1 TB / 2 TBはログ保持・チャネルメディア・エクスポートがAPFSを圧迫するときに検討。第2台のリースはGatewayプロファイル分離(本番/ステージングノード)が必要なときに正当化され、スマホ3台が1プロセスを押し潰すわけではありません——ノードはセッションとクォータを共有します。

承認端末はCMDBにタグを付け、所有者なしのペアリングはタイムゾーンをまたぐと監査不能になります。

8. openclaw doctorチケット・プレイブック

openclaw doctor(利用可能なら--lint / --deep)をチケットの単一スナップショットにします。GatewayホストのSSHセッションと、トンネル越しremote CLIの両方で実行し差分を取ります。doctorは緑だがスマホがpendingのままなら、nodes approve未実施か、端末が別wssホストを向いています。doctorの認証エラーはローカル/remoteフォールバックのトークン面が混線しています。

推奨チケット項目

UTC時刻、openclaw --version、Gateway health curl、マスク済みopenclaw nodes pending / nodes status、端末エラー(secure endpoint required?)、Serve/SSHのみ/tailnet直結のどれか。

症状 → 処置ツリー

A. 端末がsecure endpoint requiredwss://を構成(まずTailscale Serve);公開IPの平文wsをやめる。
B. pending空だが端末が回転 → QR期限切れ、誤Gateway、または2026.2.28未満のWSペアリング不具合(深掘り前にアップグレード)。
C. CLI connection refused → カナダloopback、続いてノートでSSH転送中のlsof -i :18789
D. 承認直後に切断 → tailnet ACL、端末省電力、Gateway OOM;再起動前にバージョンを記録。

チケット添付バンドル
openclaw doctor
openclaw doctor --lint
openclaw gateway status
openclaw nodes pending
openclaw nodes status
curl -fsS "http://127.0.0.1:18789/health" || true

9. 事例:APACオンコール端末がカナダ自動化を起動

シンガポールのオンコールエンジニアがiPhoneノードをwss://ca-m4.team.ts.net経由でカナダGatewayにペアリング。SlackスラッシュがChannels経由でnode.* RPCのカメラスナップショットを要求し、GatewayがM4上でオーケストレーション、端末がセンサー経路を提供。レイテンシは太平洋脚が支配的ですが、MacBookがスリープしてもGatewayは維持されます。承認はチケットID付きでログ化し、トークンは四半期ローテーションでチャットに秘密を再投稿しません。

Channelsがカナダで既に緑でもnodes approveが未完了だと、Slack配信は成功しnodeツールだけがペアリングエラー——nodes statusとチャネルヘルスを同一チケットに載せたdoctorスナップショットが切り分けを速めます。

10. FAQ

iOS/AndroidはGatewayをホストできるか?

いいえ。モバイルはノードのみ。意図的なプロファイル分離がない限りカナダM4を正規Gatewayにしてください。

リモートのスマホペアリングでwssが必須なのはなぜか?

越境ペアリングは平文ws://をフェイルクローズし、資格情報とデバイスフィンガープリントを守ります。LANと文書化されたシミュレータ例外は上流ドキュメントを参照。

gateway.mode remoteはカナダホスト自体を変えるか?

remoteクライアント設定です。カナダMacは引き続きローカルGatewayを動かします。M4自身の設定をremote loopbackへ向けないでください。

スマホにTailscaleなし、SSHトンネルのみ?

端末には到達可能なwss://(通常Tailscale Serveまたは社内プロキシ)が依然必要です。SSHは運用者CLIとapprove用で、ハンドセットのTLS代替にはなりません。

openclaw qropenclaw qr --remoteの違いは?

--remoteはリモートGateway URL向けのセットアップをエンコードします——トンネルまたはtailnet到達可能な運用マシンで使い、QRがノートのloopbackを指すミスを防ぎます。

複数スマホがGatewayを「奪い合う」か?

1 Gatewayプロセスとクォータを共有するだけで、デーモンは増えません。デバイスにラベルを付け承認監査を残してください。

ペアリング成功後にnodeツールだけタイムアウト?

WebSocket生存と遅いRPCは別問題です。アプリ再インストール前にGateway CPU・ディスク・チャネルキューを確認。

SSH越しdoctorは緑だが端末だけ失敗?

doctorはトンネル経路を検証しても、端末は別wssホスト名や期限切れQRの可能性があります。Serve設定と端末wss URLを揃え、スキャン後にnodes pendingを再確認してください。

クラウドMac mini上でGatewayを固定すると、ペアリングが単純になる

OpenClawをカナダのリモートMac mini M4に固定し、スマホをTailscale wss://で参加させる構成は、7×24のGateway待受とApple Siliconの低待機電力を両立します。18789のlisten、プロバイダメンテ後のlaunchd再起動、openclaw doctor・SSH・TailscaleといったmacOS運用スタックも成熟しています。スリープするノートを本番Gatewayにしないことで、タイムゾーンをまたいだnodes approveの境界が明確になります。

iOS/Androidノード向けにカナダ単一Gatewayを設計しているなら、 HashvpsのクラウドMac mini M4は有力な出発点です—— プランと料金を確認する ことで、wss入口・SSHトンネル・ノードペアリングを1回のロールアウトに揃えられます。

Hashvps · Mac クラウド

カナダM4単一Gateway:iOS/Androidノードの安全なペアリング

専有コンピュートと安定したtailnetプロファイルで、wss入口・nodes approve・跨洋doctorチケットを支えます。ホームページでプランを確認してください。

ホームへ
期間限定