FrontierStack iPhone/iPad コンパニオン マニュアル先頭
デスクトップ版マニュアル モバイル版マニュアル English frontierstack.app ↗

iPhone/iPad コンパニオン

FrontierStack

iPhone/iPad コンパニオン

フリートの監視、プッシュ通知、サービス操作、デバイス Web UI へのアクセスをポケットから — Mac と安全にペアリング。

バージョン 1.0.0 · 初版 · 2026年8月
発行:株式会社エンフォー

目次

接続する
  1. 1FrontierStack Mobile へようこそ
  2. 2デバイスをペアリングする
  3. 3セキュリティ
  4. 4つながり続ける
FrontierStack モバイルを使う
  1. 5アプリを使う:Fleet・Operations・Shell・AI
  2. 6設定・アプリロック・トラブルシューティング

第 I

I

接続する

iPhone や iPad を Mac とペアリングし、安全に施錠し、どこにいても到達できる状態を保ちます。

1

第 1

FrontierStack Mobile へようこそ

サーバをポケットに。FrontierStack の Mac アプリのための安全なリモコンとして、どこにいても状況を確認し、通知を受け取り、対処できます。

FrontierStack(iPhone・iPad 版)は、Mac 上で動作する FrontierStack サーバ管理アプリのコンパニオンです。一から設定する独立した製品ではなく、それ自体がサーバを動かすこともありません。Mac アプリのための小さく安全なリモコンであり、デスクから管理しているサーバ・エージェント・デバイスを、どこにいても手元に置けます。

この小冊子はモバイルアプリ専用のマニュアルです。Web スタックから AI 管理者まで、Mac アプリが行うすべてを網羅した完全なデスクトップリファレンスはFrontierStack マニュアルにあります。ここでは、スマートフォンやタブレットをペアリングし、安全に保ち、日々使うために必要なことだけを扱います。

1.1このアプリとは

Mac アプリを頭脳、このアプリを信頼できる「手」だと考えてください。Mac はヘルスを監視し、AI 管理者を動かし、共有の認証情報を保持します。ライブ監視と操作の大半は、署名・暗号化された接続でその Mac を経由します。

Mac なしでも使える経路は、意図的に登録した 2 つだけです。保存済みサーバポートへの限定的な到達性チェックと、サーバごとに別途有効化する端末専用の直接 SSH 鍵です。Mac の鍵・パスワード・一般的なツール権限が端末へコピーされることはありません。端末はペアリング用の身元鍵と、直接 SSH を有効にした場合だけ、Keychain に保護された別の SSH 鍵を保持します。どちらも失効できます。

メモ本書を通じて「Mac」とは FrontierStack デスクトップアプリを実行しているコンピュータを指し、「この端末」または「このアプリ」とは手元の iPhone または iPad を指します。ペアリングした各端末はそれぞれ独立しており、固有の鍵と固有の権限レベルを持ちます。

1.2スマートフォンからできること

モバイルアプリはデスクトップの安全な障害対応コンパニオン兼リモコンです。デスクを離れているときに必要となるものを、5 つのタブに整理して提供します。

  • Fleet。ピン留めした全サーバ(ローカルの Mac を含む)を状態ドット付きで表示。開くと全状態、パフォーマンス履歴、端末からの限定到達性チェック、承認済みサービス操作、再起動、診断、ログ、Remote Tools、直接 SSH、データベース緊急対応準備に到達できます。ピン留めした LAN デバイスは折りたたみセクションで下に並びます。
  • Operations。Mac の現在のヘルス、復元準備の証拠、上流原因の候補、サーバの異常な挙動、操作可能なローカルサービスを表示します。この運用画面は Mac のサイドバーで何を非表示にしたかとは独立しています。
  • Shell。Mac や任意のサーバ上の本物のコマンドライン。Mac に保存された認証情報で自動ログインします(パスワードは端末に送られません)。保存済み・既製スクリプトも実行できます。
  • AI。AI アドミニストレーターとのマルチターン会話。実行したツールを表示し、「変更を許可」をオンにするまで読み取り専用です。
  • More。プッシュ通知、チェック、キューの健全性、Phone & Fleet Sites、スクリプト、Fleet Run、確認が必要なオフライン操作、ZeroTier 承認、一時共有、デバイスの Web UI、設定、ヘルプ、オフラインマニュアル。

これらの一部はどこからでも使えますが、一部はスマートフォンが適切なネットワークに到達できるかに依存します。どれがどちらかは接続を保つで正確に説明します。

スクリーンショット追加予定
図 1.1. iPhone での FrontierStack Mobile の 5 つのタブ:Fleet、Operations、Shell、AI、More。撮影手順: Mac に接続し、サーバが数台それぞれ状態ドット付きで並ぶ Fleet タブを表示し、下部にタブバーが見える iPhone を撮影

1.3なぜ Mac が必要か

このコンパニオンは、登録、新しいフリート状態、ライブ操作、アラート、スクリプト、Remote Tools、AI 管理者のために引き続き Mac を必要とします。Mac が利用できないときは、最後の署名済みインベントリをキャッシュとして明示します。その間も、到達可能な Web UI、端末からサーバへの限定的な到達性チェック、登録済みの直接 SSH、後で確認して送るための名前付きサービス操作を利用できます。

実作業の大半を Mac が担うため、3 つのことが導かれます。Mac 由来の最新観測と Mac 経由のコマンドには、Mac が到達可能である必要があります。プッシュ通知の送信には Mac またはそのプッシュリレーがオンラインである必要があります。そして、端末に何を許すかを定める権限は Mac で設定します — 一箇所で主導権を握り続けられます。

ヒントまだ Mac がない場合は、先に Mac へ FrontierStack をインストールしてください。デスクトップアプリが起動しペアリングコードを生成するまで、このアプリには接続先がありません。Mac アプリの入手は frontierstack.app へ。

1.4インストールの順序

セットアップは、次の順序で 3 ステップです。

  1. Mac に FrontierStack をインストール。デスクトップアプリをダウンロードして起動し、端末からの接続を受け付けられるよう制御サーバをオンにします。Mac は初回登録に必要で、その後も中央のヘルス情報と操作の提供元になります。
  2. iPhone または iPad にこのアプリをインストール。App Store から FrontierStack Mobile を入手します。初回起動時は、ペアリングされるのを待つだけです。
  3. 2 つをペアリング。Mac で the Paired Devices pane からペアリング用 QR コードを生成し、このアプリでスキャンします。以後は両者が連携し、スマートフォンは固有の鍵で登録されます。

次章デバイスのペアリングで、このペアリングを詳しく解説します。

セキュリティペアリングしたばかりの端末は読み取り専用から始まります — 見ることはできても、何も変更できません。権限レベルは Mac 上で意図的に引き上げ、同じ場所からどの端末も即座に取り消せます。スマートフォンが、あなたが付与した以上の権限を持つことは決してありません。

1.5本マニュアルの構成

この小冊子は 2 部構成です。接続する — いまお読みの部 — では、この「ようこそ」に続いて、デバイスのペアリング、接続を安全に保つセキュリティモデル、そして自宅・Tailscale 経由・外出先で接続を保つ方法を扱います。続くFrontierStack Mobile を使うでは、アプリそのもの — 各タブ(Fleet、Operations、Shell、AI、More)と、最後に設定とトラブルシューティング(アプリロック、接続できないときの確認事項を含む)— を順に解説します。

1.6プラットフォーム要件

FrontierStack Mobile は iPhone と iPad の両方で動作するユニバーサルアプリで、それぞれにレイアウトを適応させます。比較的新しいバージョンの iOS または iPadOS が必要です。App Store からインストールしてください。お使いの端末が対応しているかは App Store が知らせます。初回ペアリングには FrontierStack を実行する Mac が必要です。登録後の Mac 経由機能には、ネットワーク・Tailscale・明示的に有効化した Cloudflare トンネルのいずれかで Mac へ到達できる必要がありますが、上記の限定オフライン機能はその限りではありません。

全体像はこれだけです — 作業を担う Mac、安全なリモコンとしてのスマートフォンやタブレット、そしてその間の署名されたリンク。準備ができたら、デバイスのペアリングへ進んで始めましょう。

2

第 2

デバイスをペアリングする

Mac の QR コードを 1 回スキャンすれば、iPhone/iPad は自分の鍵を登録します。あとは Mac が、できることを正確に決めます。

ペアリングは、この App と Mac 上の FrontierStack を結び付けます。QR コード 1 つと数秒で完了します。そのシンプルさの裏で、App はこのデバイスにだけ存在する秘密鍵を登録します。以後、Mac はこの iPhone/iPad を正確に認識し — 信頼 — できます。本章では、ペアリング、新しいデバイスの承認、そしてできることを決める権限レベルを順に説明します。

2.1ペアリングの仕組み

Mac は頭脳で、サーバ・エージェント・デバイスと対話します。この App はその安全なリモコンです。ペアリングは、両者が互いを恒久的に認識するための手続きです。QR コードをスキャンすると、3 つのものが iPhone に渡ります — Mac への到達経路(自宅・オフィスのネットワーク、Tailscale、Cloudflare トンネル)、ワンタイムトークン、そしてピン留め用の Mac の証明書フィンガープリントです。続いて iPhone は自分の鍵を生成し、Mac に登録します。この最初のハンドシェイクの後、ワンタイムトークンは使い切られ、以後のリクエストはすべてデバイス自身の鍵で証明されます(セキュリティ参照)。

2.2ステップ・バイ・ステップ

  1. Mac で FrontierStack → Paired Devices(概要グループ)を開きます。
  2. デバイスをペアリングをクリックします。QR コードが表示されます。
  3. この App で QR コードをスキャンをタップし、カメラを Mac の画面に向けます。
  4. App がコードを読み取り、鍵を登録して接続します。新しいデバイスが Mac の一覧に表示されます。
スクリーンショット追加予定
図 2.1. Mac が「Paired Devices」ペインでペアリング QR を表示し、iPhone のスキャナがそれを捉えている様子。撮影手順: Mac の「デバイスをペアリング」QR シートと、QR スキャンのカメラ画面を表示した iPhone を並べて撮影
ヒントiPhone を画面に近づけ、安定させてください。ピントが合わないときは、Mac の画面輝度を上げ、コードでフレームを満たします。

Mac に到達できない? Bluetooth でペアリング。制限された Wi-Fi ネットワーク — ゲストネットワーク、クライアント分離、キャプティブポータル — では、App が QR を問題なく読めても接続に失敗することがあります。Mac 側で Bluetooth ペアリングを許可(Paired Devices ペイン)がオンで、Mac から数メートル以内にいるなら、Bluetooth でペアリングをタップすると、代わりに近距離の Bluetooth リンク経由で登録が完了します。同じ一度きりの QR コードと同じ署名付きハンドシェイクを使い — 変わるのはトランスポートだけ — ネットワーク経由のペアリングと結果は同一です。Mac がペアリングダイアログを開いている間だけ Bluetooth でアドバタイズします。

2.3QR コードが運ぶもの

QR は単なるトークンではなく、Mac へ安全に到達するために App が必要とするすべてです。

  • 到達経路 — 自宅/オフィスのネットワーク、Tailscale、Cloudflare トンネルのアドレス。自宅でも外出先でも Mac を見つけられます(接続を保つ)。
  • ワンタイムトークン — 最初の登録だけに使われ、その後破棄されます。
  • 証明書フィンガープリント — Mac の HTTPS 証明書をピン留めでき、自己署名証明書でも接続を傍受できません。

保存した経路は出発点であり、1 つの LAN アドレスを永久に固定するものではありません。ペアリング後、Mac はピン留めされた HTTPS コントロールサービスを Bonjour で広告します。アドレスが変わった場合、端末は新しいアドレスを検出できますが、このペアリングの完全な証明書フィンガープリントと一致するときだけ受け入れます。

2.4新しいデバイスを承認する

ペアリング直後のデバイスは読み取り専用で始まります — 状態やアラートは見られますが、あなたが許可するまで何も変更できません。Mac のPaired Devicesペインでは、各デバイスが名前・鍵のフィンガープリント・最終接続時刻とともに一覧されます。そこで権限レベルを上げ、名前を変更し、または失効できます。

セキュリティ各デバイスは独自の鍵を持ちます。Mac で 1 台を失効すると即座に遮断され、他のペアリング済みデバイスには影響しません。iPhone を紛失したら、ここで失効してください。

2.5権限レベル

各デバイスがどこまでできるかは Mac が決めます。レベルは Mac の「Paired Devices」ペイン(概要グループ)で設定します。

レベルこのデバイスにできること
読み取り専用状態・アラート・ログ・デバイスページの閲覧。変更不可。
再起動読み取り専用に加え、サービスの開始/停止/再起動。
操作再起動に加え、フリート操作。
フルコントロールツール・スクリプト・共有の開始を含むすべて。

ボタンが無効、または操作が拒否される場合、このデバイスのレベルが許可していません — Mac で引き上げるか、すでに権限のあるデバイスを使ってください。

ヒント常に持ち歩く iPhone は低いレベル(読み取り専用か再起動)にし、フルコントロールは信頼できる 1 台に限定しましょう。日常では困らず、紛失時の被害を抑えられます。
複数デバイスをペアリング
iPhone も iPad も好きなだけペアリングできます — それぞれが自分の鍵を登録し、独自のレベルを持ち、自分のリクエストへ署名します。同じ LAN 上の 2 台の端末がセッションを共有したり、互いの状態を上書きしたりすることはありません。壁掛けの iPad は読み取り専用の状態表示に、メインの iPhone は外出先での素早い修正のため再起動に、といった使い分けができます。同じ LAN に複数の FrontierStack Mac があっても、表示名ではなく完全な証明書フィンガープリントで区別されます。

デバイスをペアリングしてレベルを設定すれば、App を使う準備は完了です。自宅・外出先での接続は次章接続を保つで、日々のタブはApp を使うで扱います。

3

第 3

セキュリティ

なぜポケットの中から、オープンなインターネット越しでも安全に Mac を操作できるのか。署名付きリクエスト、ピン留めされた暗号化、アプリロック、そして端末を失くしたときの即時失効。

このアプリは、実在する Mac 上の実サービスを、ときには地球の裏側から起動・停止できます。それが理にかなうのは、盗まれた端末・盗聴されたネットワーク・推測されたトークンのどれもが、そのままではサーバの制御に変わらない場合だけです。FrontierStack は、それらのどれも単独では不十分になるよう作られています。本章ではその層を解説し、なぜ Cloudflare トンネル越しにどこからでも安全に Mac へ到達できるのかを説明します。

3.1すべてのリクエストに署名する

最も強力な保護は目に見えません。この端末はペアリング時に自分専用の秘密鍵を生成し、iOS の Keychain に保存しました — 鍵は端末から出ることはなく、このアプリでさえ平文として読み出せません。アプリが Mac に送るすべてのリクエストは、その鍵で署名されます。Mac は承認した端末を公開鍵ごとに許可リストとして保持し、リクエストのたびに、送信元を名乗る端末に対して署名を検証します。

これが FS1 端末ごとのモデルです。Ed25519 署名を用い、署名付きリクエストにはタイムスタンプと一回限りのナンスも含まれるため、捕捉されたリクエストは数秒後でも再送できません。実用上の肝心な点はこうです — 旧来のアプリが頼るような共有秘密、すなわちベアラートークン単体では、ここでは何も制御できません。この端末の秘密鍵がなければ、コピーされたトークンは無力です。

セキュリティ制御は Mac が明示的に承認した鍵に紐づくため、新しい端末の追加は Mac 上での意図的な操作であり、漏れたパスワードでできることではありません。未知の鍵で署名されたリクエストは、単に拒否されます。
スクリーンショット追加予定
図 3.1. Mac の「Paired Devices」ペイン(概要グループ)一覧:各端末が名前・鍵フィンガープリント・最終接続時刻で表示される。撮影手順: Mac アプリの Paired Devices ペインを、2 台の端末が並び、スコープのピッカーと「失効」ボタンが見える状態で撮影

3.2暗号化・ピン留めされた接続

署名は誰が話しているかを証明し、暗号化は何を話すかを守ります。Mac が HTTPS アドレスを広告すると、このアプリは通常の安全な接続と同じく TLS で通信します。ただし一ひねりあります — Mac は自ら生成した自己署名証明書を使うため、その正当性を保証する公的な認証局が存在しません。

代わりに、アプリは証明書のピン留めを使います。ペアリング用の QR コードには、Mac の証明書の正確なフィンガープリントが含まれていました。それ以降、アプリはそのフィンガープリントと完全に一致する証明書を提示する接続だけを受け入れます。中間に割り込んで自前の証明書を差し出す攻撃者は、たとえ「有効な」証明書であっても、ペアリング時にピン留めしたものと一致しないため拒否されます。

セキュリティピン留めこそが、ここで自己署名証明書を信頼に足るものにします。通常のブラウザなら警告するところですが、このアプリはブラウザにないものを持っています — 受け入れてよい唯一のフィンガープリントです — ゆえに認証局を介さずに、秘匿性と確実性の両方を備えられます。

3.3どこからでも安全な理由

この 2 つを合わせれば、公開経路 — たとえば Cloudflare トンネル — 越しに Mac へ到達することが、無謀ではなく安全である理由が見えてきます。トンネルは通信を運ぶだけで、偽造はできません。

  • 接続は暗号化されピン留めされているため、トンネル(および経路上の誰か)が見るのは、なりすませない証明書宛ての暗号文だけです。
  • すべてのリクエストはこの端末の鍵で署名されているため、Mac に届いた何かがあっても、Mac が受け入れるコマンドは発行できません。
  • 再送はリクエストごとのタイムスタンプとナンスで防がれるため、捕捉したリクエストの再送は失敗します。

公開経路を存在させるかどうかは Mac が決め、いつでも閉じられます。ここでは何一つネットワークが私的であることに依存していません — 保護は各リクエストとともに運ばれます。

3.4アプリロック

誰かがロックされていないあなたの端末を手に取るだけなら、ネットワークのセキュリティは役に立ちません。アプリロックがその隙を塞ぎます。設定でパスコードを有効にすると、以降アプリは入力するまでロックされ、ワンタップ解除のために Face ID または Touch ID を追加できます。アプリは離れるたびに再ロックします — 別のアプリに切り替えたり端末をロックしたりすれば、戻ったときに再び尋ねられます。

パスコード自体は保存されません。端末で設定したパスコードは、固有のソルトと、意図的に低速な PBKDF2-HMAC-SHA256 検証値によって端末の Keychain 内で保護されます。失敗が続くと待ち時間も段階的に延びます。生体認証は iOS が処理し、アプリには可否だけを伝えます。

Mac のロックのミラーリング。Mac 自体にアプリロックのパスワードが設定されている場合、このアプリはペアリング時にそれを採用し、同じパスワードを要求します。パスワードも Mac の再利用可能な検証値も送られません。端末が受け取るのは、この端末のペアリング身元に暗号学的に結び付けられた低速な検証値です。ミラーリング中は端末側でロックを変更・解除できず、Mac 側で変更します。Face ID/Touch ID は端末ローカルの利便機能として残ります。

アプリがフォアグラウンドを離れるたび、App Lock を有効にしていない場合でも、アプリスイッチャーのスナップショットをデータのないプライバシー画面で覆います。ライブな直接 SSH セッションはバックグラウンド移行またはロック時に閉じ、自動再接続しません。戻ってロック解除後、意図的に接続し直します。

メモアプリロックは Mac 自体のロック状態とは別物です。アプリのロックを解除すれば使えますが、どの操作が有効かは Mac がロック解除されているかで決まります — 操作を参照してください。

3.5この端末に許可された操作

認証が「これは本当に私の端末か?」に答えるのに対し、権限スコープは「ではどこまでできるか?」に答えます。その判断はここではなく Mac にあります。ペアリング済みの各端末には 4 つのレベル — 読み取り専用再起動操作フルコントロール — のいずれかが割り当てられ、Mac が署名付きリクエストごとにそれを適用します。常に持ち歩く端末は、完全にペアリングされていても低いレベルに安全に留められます。

ボタンが無効だったり操作が拒否されたりするのは、この端末のレベルがそれを許していないからです — Mac で引き上げるか、すでに権限のある端末を使ってください。4 つのレベルとそれぞれが解除する範囲は ペアリング にまとめてあります。

レベルと並んで 2 つの許可があり、どちらも Mac 側で設定します。AI 管理者を許可(既定はオン)は、この電話が AI タブをそもそも使えるかを決めます — 一方の端末にはチャットを許可しつつ別の端末をブロックできます。リモートシェルを許可はフルコントロールのときのみ表示され、既定はオフです。これはこの端末が Shell タブを開き、サーバへ直接到達するために必要です。どちらもバイパスではありません:AI を許可していても、変更にはフルコントロールの「Allow changes」とアプリのロック解除が依然として必要です。

3.6Mac が利用できない間の権限

オフラインになっても、端末が無制限のコントローラに変わることはありません。最後の署名済みインベントリには経過時間を表示します。直接到達性チェックが接続するのは、保存済み SSH エンドポイントと、FrontierStack が観測済みサービスから判断した少数の標準ポートだけです。範囲スキャンやプローブのダウンロードは行いません。直接 SSH は端末専用の 2 本目の Ed25519 鍵を使い、保存済みサーバ身元が欠けている、または変わった場合は拒否します。

Mac がオフラインの間も、サービスの開始・停止・再起動・リロード要求を準備できます。要求はこの端末上で署名され、最長 4 時間で期限切れになり、Mac が戻った後に More → Queued Actions を開いて正確な対象を確認し、明示的に送信するまで何も実行しません。Mac は署名・期限・権限・App Lock を再検証し、受け入れた要求を 1 回だけ実行します。スクリプト、シェルコマンド、サーバ再起動、Fleet Run、デバイス電源、アクセス変更はこのキューでは受け付けません。

3.7端末を失くしたとき

各端末が自分の鍵を持つため、1 台を切り離すのに他は一切変更する必要がありません。Mac でセキュリティ ▸ ペアリング済みモバイル端末を開き、名前で端末を探して失効させます。その鍵は直ちに許可リストから削除されます — 次にその端末が Mac へ通信を試みた瞬間、署名は拒否されます。他の端末はそのまま動き続けます。

Mac 上での失効が決定的な手順です — 端末そのものに手が届かなくても、その端末を止められます。まだ手元にある端末で この端末のペアリング解除を実行すると、まず Mac に端末の失効、登録済み直接 SSH 鍵の削除、プッシュアクセスの停止を依頼します。Mac が後始末を確認できない場合だけ ローカルで忘れる選択肢が現れます。このフォールバックを使った後は、Mac の Paired Devices で失効を完了してください。

本当に手元を離れた電話には、Mac がより強力なワンクリック操作 紛失した電話を保護を用意しています。鍵の失効に加えて、その端末の古いキュー操作を直ちに取り消し、開いているセッションを閉じ、直接アクセス用にサーバへ導入した SSH 鍵を削除し、プッシュ通知を無効化します。その時点でオフラインのサーバは一覧に残るので、復帰後に鍵の削除を完了できます。

ヒント端末を紛失・盗難されましたか。見つかるのを待たないでください。Mac を開き、ペアリング済みモバイル端末(概要グループ)へ進み、その端末に 紛失した電話を保護を実行します — 即座に切り離され、サーバへのアクセスも剥奪され、他の端末には影響しません。
4

第 4

つながり続ける

あなたがどこにいても、アプリがどのように Mac を見つけ出すか — 同じ Wi-Fi、Tailscale、あるいは Cloudflare トンネル — そして、あの小さな色付きの点が何を伝えているのか。

ペアリングのあと、アプリがアドレスの入力を求めることは二度とありません。QR コードを読み取ったときの経路を使い、LAN アドレスが変わった場合は近くにある同じ Mac を再検出できます。利用できる経路を応答が返るまで静かに試します。本章では、その仕組み、外出先からのアクセスがときに一手間を要する理由、そして接続状態をひと目で読み取る方法を説明します。

Mac 経由の接続は、Mac のコントロールサーバに支えられています。そのサーバがオフ、または Mac がスリープ中・電源オフ・ネットワーク圏外なら、ライブな Mac エンドポイントには到達できません。限定的なオフライン機能はアプリを使うで扱います。ペアリングそのものは第 2 章を、コントロールサーバのデスクトップ側はデスクトップ版マニュアルを参照してください。

4.13 つの帰り道

ペアリング時、QR コードはトークン以上のものを運んでいました — Mac を見つけられるアドレスの小さな一覧です。自宅やオフィスのネットワーク上のアドレス、Tailscale のアドレス、そして Mac が有効化している Cloudflare トンネルのアドレス。アプリはこの一覧を保持し、Mac と通信が必要になるたびに、固定の順番でたどります。

  1. まず自宅・オフィスのネットワーク。電話機と Mac が同じ Wi-Fi(または有線 LAN)にあれば、アプリは直接接続します — 間に何も挟まない、最速・最小遅延の経路です。
  2. 次に Tailscale。直接接続が応答しなければ、アプリは Mac の Tailscale アドレスを試します。電話機と Mac が同じ tailnet のメンバーである限り、どこにいても機能します。
  3. 最後に Cloudflare トンネル。どちらも機能しない場合、アプリは Cloudflare トンネルにフォールバックします — ただし Mac がトンネルを有効化している場合に限ります。自前のネットワークがなくても、どこからでも Mac に到達します。

アプリは前回うまくいった経路を覚えていて、次回はそれを最初に試すため、なじみのネットワークでの再接続はほぼ瞬時です。経路を手で選ぶことはありません。アプリを開けば、生きている経路に自動的に着地します。

保存済み LAN アドレスが応答しない場合、電話機は Bonjour でも FrontierStack を探します。検出したアドレスは手掛かりにすぎません。Mac がペアリング時に保存したものと完全に同じ証明書フィンガープリントを提示した場合だけ受け入れ、新しいアドレスを記憶します。同じ LAN に複数の FrontierStack Mac があっても、表示名ではなく完全なフィンガープリントで照合するため混同しません。

スクリーンショット追加予定
図 4.1. Fleet tab のコンパクトな Phone & Fleet 行と、Operations 上部の接続状態。プルして更新の最中。撮影手順: Fleet tab の 1 行の Phone & Fleet と、緑の接続状態を表示した Operations tab を並べて撮影

4.2同じ Wi-Fi にいるとき

自宅やオフィスで — 電話機と Mac が同じネットワークにあるとき — アプリは直接経路をとります。これが最良のケースです。すべてに到達でき、速い。サービス状態、起動と停止、アラート、AI、デバイスの Web UI、LAN 共有のすべてが、電話機が Mac のすぐ隣にあるかのように振る舞います。ネットワーク的には、まさにその通りだからです。

Mac は、ピン留めされた HTTPS コントロールサービスを Bonjour で広告します。DHCP、Wi-Fi の移動、ネットワーク変更で新しいアドレスになっても、再ペアリングせずに電話機が見つけ直せます。アプリはペアリング時に取り込んだ証明書のフィンガープリントで Mac の身元を検証するため、自己署名証明書であっても、自分のネットワーク上でなりすまされることはありません。

同じ LAN 上で複数の端末が 1 台の Mac を同時に利用できます。各端末は独自の署名鍵、権限レベル、リクエストセッションを持つため、互いを置き換えません。複数の FrontierStack Mac も同時に広告できます。端末は自分のペアリングに保存した完全なフィンガープリントで Bonjour 結果を絞り込み、署名付きリクエストを送る前にピン留め証明書を再検証します。

4.3外出先にいるとき

ネットワークを離れた瞬間、直接経路は応答しなくなり、アプリは残る 2 つへ移ります。外出先からのアクセスは、結局のところ単純な問いに帰着します — いま電話機は、そもそも Mac に到達できるのか?

  • Tailscale は、電話機と Mac が tailnet を共有していれば「はい」と答えます。最も信頼できる外出先経路です。携帯回線でも、ホテルやカフェの Wi-Fi でも、ほとんどどんなルータの背後でも、ポートを開けずに機能します。
  • Cloudflare トンネルは、Mac がトンネルを稼働させていれば「はい」と答えます。電話機側には何も要らず、どこからでも到達しますが、Mac がそのトンネルを維持し続けることに完全に依存します。

どちらも利用できなければ — 共有 tailnet なし、トンネルなし — アプリは外から Mac を見ることができず、状態の点はオフラインになります。これは不具合ではなく想定どおりの挙動です。プライベートな自宅ネットワーク上の Mac は、設計上、公開インターネットからは到達できません。

ヒント外出先からの確実なアクセスのために、電話機と Mac の両方(または Mac の前段となるルータ)に Tailscale をインストールしてください。両者が同じ tailnet にサインインすれば、Mac もその背後のデバイスも、自宅にいるかのように到達可能になります — ポート転送は不要、公開インターネットに何も晒しません。

4.4デバイスの Web UI と LAN 共有

Mac に到達することは、話の半分にすぎません。Web UIs(More 内)はネットワーク上の他の機器 — ルータ、NAS、プリンタ、ダッシュボード — の Web インターフェイスを開き、Shared(More 内)は Mac が一時的に公開した LAN 共有を開けます。これらはネットワーク自体に存在し、Mac 上にあるわけではありません。したがって、アプリが Mac に到達できることは、これらに到達できることを保証しません

デバイスの Web UI や LAN 共有に到達できるのは、電話機が実際にそのネットワークに入れるときだけです。

  • 同じ Wi-Fi 上 — LAN 上のすべてに直接到達できます。
  • Tailscale 経由 — tailnet がそのネットワークへ経路を持つとき、たとえば LAN の範囲を広告するサブネットルータを介すれば到達できます。それがなければ、Tailscale は Mac には届いても、その隣のプリンタには届きません。

これが、上記の TIP がサブネットルータ、あるいは Tailscale に接続されたルータを勧める実用上の理由です。「Mac に到達できる」を「ネットワーク全体に到達できる」に変え、それこそが Web UIs と Shared を外出先で役立つものにします。

メモLAN 共有の到達範囲は、Mac がどの方法で開いたかにも左右されます。Cloudflare トンネルや Tailscale ファンネルの共有はどこからでも、素の LAN フォワーダは同じ Wi-Fi 上でのみ、Tailscale サーブの共有は tailnet 全体で機能します。Shared は共有ごとにこれを反映します。

4.5接続状態

Operations 上部の色付きの点は、いま Mac と通信できているかを正直にまとめたものです。Fleet は最後の署名済みインベントリを表示しているとき、別のオフラインバナーを表示します。接続には 3 つの状態があります。

状態意味
接続済み(Connected)アプリが 3 つの経路のいずれかで Mac に到達し、ライブデータを表示しています。サービスの操作は、この端末のアクセス権限が許す範囲で機能します。
接続中(Connecting)アプリが経路を順に試しています。起動直後、ネットワーク切り替え後、プルして更新の直後など、しばらくの間はこれが正常です。
オフライン(Offline)どの経路も応答しませんでした。Mac がスリープ・電源オフ・現在地から到達不能 — あるいはコントロールサーバがオフです。アプリは最後に取得したデータを、古い旨を明示して表示します。

新しい試行を強制するには、Fleet または Operations でプルして更新します。アプリが経路一覧を再びたどる間は接続中に戻り、その後接続済みオフラインに落ち着きます。経路ごとの証拠は More → 設定 → Connection を開き、Check all routes をタップします。LAN、Tailscale、その他の保存経路について、結果と遅延を表示します。Fleet のコンパクトな Phone & Fleet 行は、画面を大きく占有せず拠点画面を開きます。

4.6満たされていなければならない条件

3 つの経路はいずれも、存在しない接続を生み出すことはできません。アプリが Mac に到達するには、次のすべてが成り立っている必要があります。

  • Mac のコントロールサーバが有効。電話機が通信する相手はこのサービスです。Mac 側でオフになっていれば、すべての経路が失敗し、点はオフラインのままです。
  • Mac がオンラインで到達可能。起動していて、ネットワーク上にあり、電話機の現在地から到達できる必要があります — 同じ Wi-Fi、共有 tailnet、あるいは Cloudflare トンネル経由で。スリープ中の Mac は何も応答しません。リモートアクセスに頼るなら、スリープさせない設定を検討してください。
  • 外出先なら、機能する外出先経路があること。自宅ネットワークの外では、両端の Tailscale、または Mac が稼働させ続けるトンネルを意味します。

プッシュ通知も、逆方向ながら同じ論理に従います。アラートを送るには、Mac(またはそのプッシュリレー)がオンラインでなければなりません。アラートが途絶えたときの原因は、たいてい接続が失われたときと同じ — Mac がスリープ・電源オフ・到達不能です。下の表は 3 つのロケーションを結びつけます。

あなたの居場所接続方法到達できるもの
Mac と同じ Wi-Fi/LANネットワーク経由で直接すべて:Mac、サービス、AI、デバイスの Web UI、LAN 共有
外出先、tailnet 共有ありTailscaleMac と AI。サブネットルータがそのネットワークへ経路を持てば、デバイスや LAN 共有も
外出先、Cloudflare トンネルのみCloudflare トンネル(Mac が有効化)Mac と AI。デバイス UI は別途到達可能な場合のみ
外出先、Tailscale もトンネルもなし—(Mac への経路なし)キャッシュ済み署名付きインベントリ、到達可能な Web UI、限定的な直接サーバチェック、登録済み直接 SSH、確認付きサービス操作の準備。Mac 由来の新しい状態、AI、ライブ操作は利用不可

第 II

II

FrontierStack モバイルを使う

日々使う 5 つのタブ — Fleet、Operations、Shell、AI 管理者、その他は More にまとめて。

5

第 5

アプリを使う:Fleet・Operations・Shell・AI

ペアリングが済めば、アプリは安全な障害対応コンパニオン兼デスクトップのリモコンになります。本章では 5 つのタブが何を表示し、オフライン時に何が残り、何ができるのかを順に解説します。

iPhone/iPad 版 FrontierStack は、Mac 上の FrontierStack のための安全な障害対応コンパニオン兼リモコンです。メイン画面は FleetOperationsShellAIMore の 5 つのタブからなります。新しい観測と操作の大半は、ペアリング時に確立した署名付き接続で Mac から届きます。一方、Mac に接続できないときも、端末起点の限定的なヘルス確認と復旧機能は明示的な表示のもとで役立ちます。本章ではこの 5 つすべてを扱います。設定とロック画面は次章で、ペアリング自体は「デバイスをペアリングする」で説明します。

すべてのタブを貫く考え方が 2 つあります。第一に、観測元を混同しません。Mac のキャッシュデータは経過時間を示し、端末が今行ったチェックを完全なサービスヘルスのようには見せません。第二に、何ができるかは、この端末の権限レベル(Mac 側で設定)によって決まります。最も強力なもの(生のシェル、直接 SSH、AI に変更を許可)は追加の付与が必要で、その都度説明します。

5.1Fleet — サーバとデバイス

Fleet タブがホームです。上部の端末接続とフリートは、端末から Mac への接続経路と、Mac が監視・デバイスの対象に使うフリート拠点を分けて表示します。その下にサーバとピン留めデバイスの 2 グループが並びます。

Servers セクションはピン留めした全サーバを一覧します — ローカルの Mac は最初の行にすぎず、他と同じように操作できます。各行には状態ドットが付きます。

ドット意味
Up — 到達可能で健全。
橙の三角Degraded — 到達可能だが要注意。
Down — 現在 Mac から到達できません。
中空Unknown — まだ未計測。

サーバをタップして開きます。詳細画面ではデスクトップと同じホストレベルの操作ができます。

  • Check server reachability — 保存済み SSH ポートと、FrontierStack が検出済みサービスから判断した標準ポート(最大 8 個)へ、この端末から直接接続します。接続できても、サービス全体が正常であることまでは証明しません。
  • サービス — 検出した各サービスの起動・停止・再起動・リロード。
  • 再起動はリモートの Unix/Windows サーバに対応し、診断の実行(今何が問題かを平易に)、ログ表示も利用できます。再起動は、サーバまたは登録済みモニタが受け付けた後だけ成功と表示します。
  • Web UI を開く(組み込みブラウザ)、シェルを開く(このサーバに紐づくシェルへ)。
  • Remote Tools — ping・traceroute・待受ポート・Web チェック・ログ tail をサーバ上で実行。
  • Terminal Sessions — 内容を読まずに tmux・GNU screen・Zellij セッションを一覧し、Direct SSH で接続、または確認後に 1 セッションを終了。
  • Fleet Run — 全サーバの再起動待ち、ディスク使用量、稼働時間/ロードを読み取り専用で確認(下記 More を参照)。
  • Full status details — Mac が把握しているホスト情報を 1 画面に集約:OS・稼働時間・CPU・メモリ・全アドレス・各サービスの状態・SSH 情報(ホスト鍵のフィンガープリントを含む)。詳細画面は操作を主に置いていますが、こちらは診断のための残り半分です。
  • Performance & history — 後述。
  • Emergency — 後述。

5.5.1Performance & history

デスクトップでは現在のパフォーマンスと Behaviour & History は別セクションですが、端末では「このマシンは正常か」という 1 つの問いに答えるため同じ画面にまとめています。現在の状態(CPU・メモリ・ディスク・ロード・稼働時間)に続き、6 時間から 1 週間の推移をグラフで表示し、判定を示します:正常の基準を学習中、正常に動作中、またはこのサーバにとって異常な点の具体的な指摘です。

再起動はグラフ上に赤い破線で表示され、オンホストのウォッチドッグが動作した時点と共に下に一覧されます。この文脈こそがスパイクを読み解く鍵です。CPU の急落は、その最中にマシンが再起動していたなら意味がまったく変わります。

メモこの履歴はサーバ上の監視ヘルパーが記録するため、Mac がスリープ中でもオフラインでも記録が続きます。ヘルパー未導入のサーバには表示する履歴がなく、空のグラフではなくその旨を表示します。

5.5.2Emergency — SSH 自体が失われたとき

データベースが接続プールを使い切ると、多くの場合そのマシンは SSH も受け付けなくなります。つまり「ログインして直す」という通常の手段が、まさに必要なその瞬間に失われます。Emergency 画面はそのためにあります。その操作はデータベースに直接、そのプロトコルで、そのポートに接続します。ログインができなくても機能します。

手順は影響の小さいものから順に並んでいます。Kill connections が最初にあるのは、これだけでサーバが復旧することが多いためです——再起動も電源断も不要です。その後、書き込みの停止、ディスクへのフラッシュ、最後にデータベースのクリーンシャットダウン(この後なら電源の強制断も安全)と進めます。データベースを停止する操作は必ず確認を求めます。

セキュリティEmergency の操作にはフル権限のデバイスと、ロック解除された Mac が必要です。シェルや AI 変更の許可とは異なり、デバイスに対して事前承認する手段は意図的にありません。データベースの停止は、その場での明確な判断なしに起きてよいことではないからです。データベースの資格情報は Mac に留まり、端末が送るのはホスト・エンジン・手順の指定だけです。
注意Start だけは SSH を必要とします。停止したデータベースは自身のクライアントプロトコルでは起動できないため、サーバが応答するようになって初めて実行できます——もっとも、詰まりを解消したシャットダウンの後であれば、それこそが狙いどおりです。
メモEmergency 操作は SSH を使わずデータベースへ直接到達しますが、その実行主体は引き続きペア済み Mac です。Mac が到達可能でロック解除済みであり、設定済みのデータベース資格情報を保持している必要があります。資格情報が端末へ移ることはありません。

サーバの下に、ピン留めデバイスが種別ごとの折りたたみセクション(ルータ、スイッチ、プリンタ、NAS、スマートホームなど)で並びます。各行にはオンライン/オフラインのドットと、Web UI を開く・状態確認・電源再投入(Mac 側でプラグや KVM を紐づけている場合)のメニューが付きます。

スクリーンショット追加予定
図 5.1. Fleet タブ:コンパクトな 1 行の Phone & Fleet、Mac を先頭にした Servers リスト(各行に状態ドット)、その下に折りたたみのデバイスセクション。撮影手順: capture: 接続済みの Fleet タブ。Phone & Fleet が 1 行、サーバ 2〜3 台が緑/橙のドット付きで並び、デバイスグループが 1 つ展開された状態
メモMac が利用できないとき、Fleet は最後の署名済みスナップショットを保持し、その古さを表示します。Check server reachability を使うと、この端末から今行った別の観測を得られます。この結果が Mac のサービスヘルス判定を上書きすることはありません。

5.2Operations — Mac のヘルスと復旧証拠

Operations タブはライブ接続状態と更新ボタンから始まり、単なるサービス一覧ではなく Mac の運用サマリーをまとめます。Overview はサーバ数、App Lock、MCP、未解決の問題、リモート変更が現在承認されているかを表示します。Restore readiness は、バックアップのパス、内容、アカウント、資格情報を端末へ出さず、最新の限定復元チェック、暗号化済み復旧コピー、代表ワークロードのリハーサル証拠を表示します。

証拠がある場合、Likely upstream causes は最初に調べる価値のある確認済み依存先を示し、Server behaviour はローカル履歴から学習したプライバシー縮約済みの異常を表示します。これらは診断の手掛かりであり、因果関係の証明ではありません。最後の Services セクションは Mac の操作可能なローカルサービスを表示し、権限確認と必要な確認ダイアログを経て Start/Stop を提供します。

本アプリは Mac のサイドバーとは独立 しています。デスクトップを整理するため非表示にした項目も端末から到達できます。端末での操作が Mac の見た目上のサイドバーを変えることはなく、障害時の運用項目が外観設定で隠れることもありません。

メモ以前のバージョンでは端末から Mac のサイドバーを編集できました。これは廃止しました。端末の有用性がデスクトップの見た目の設定に左右されてしまい、Mac から離れていて障害が起きているときにはまさに不都合な結び付きだったためです。

5.3Shell — 本物のコマンドライン

Shell タブは Mac や任意の連携サーバ上のコマンドラインを開きます。上部のバーで対象 — This Mac または任意のサーバ — を選び、コマンドを入力して出力を読みます。サーバへは、Mac に保存済みの鍵と認証情報で自動ログインします。sudo コマンドはサーバの保存済み sudo パスワードを使います。これらの認証情報が端末に届くことはありません — Mac がコマンドを実行し、出力だけを返します。

More → Scripts には、Mac から同期された保存済みスクリプトと既製のメンテナンスプリセットがあります。タップして実行し、出力を確認できます。

直接 SSH — Mac がオフラインのとき。上記のシェルは Mac を経由します。サーバのページでは Enable direct SSH(Mac がオンラインのとき)をタップして、この端末自身の SSH 鍵をそのサーバに導入できます。以後は SSH (direct) で、端末からサーバへ直接、本物のターミナルを開けます — Mac がオフラインでも別ネットワークにいても — サーバのネットワークに到達できる限り(同じ Wi-Fi または Tailscale 経由)。端末の SSH 鍵は端末上で生成され、端末から出ることはなく、Mac 自身の鍵やパスワードが端末にコピーされることもありません。デバイスを失効またはペアリング解除すると、その鍵はサーバから削除されます。

セキュリティシェルはアプリで最も強力な機能なので、厳重に制限されます。この端末はフル権限で、Mac の Paired Devices ペインでその端末に 「Allow remote shell」がオンになっている必要があり、Mac はロック解除済みで、すべてのリクエストが署名されます。この明示的な付与がなければシェルはオフのままです —「フル権限」だけでは不十分です。
メモシェルは行指向で、作業ディレクトリはコマンド間で保持されます(cd は効きます)。通常のコマンドやスクリプトを実行しますが、topvim のような全画面ターミナルプログラムには対応しません。

5.4AI — 管理者と会話する

AI タブは、Mac 上で動くのと同じ AI 管理者とのマルチターン会話です。サーバ・サービス・デバイスについて平易な言葉で尋ねると、作業しながら実行したツールとその結果をその場に表示するので、どう答えに至ったかが分かります。

現在の AI 会話は Mac 経由です。Mac に到達できない場合も、キャッシュ済みヘルスと直接チェックはアプリ内の別画面で利用できますが、端末がインフラのスナップショットや資格情報を別の AI サービスへ送ったり、オフライン回答をライブ情報のように見せたりすることはありません。

既定ではアシスタントは読み取り専用で、見るだけで変更はしません。右上の 「Allow changes」をオンにすると操作を許可します:サービスの再起動、DNS のフラッシュなど。会話履歴 — 秘密情報を含みうるツール結果も — は Mac に残り、端末には表示用の応答だけが届きます。ここでの AI の動作はすべて Mac 上で実行され、デスクトップと同じガードに従います。端末ごとの会話は Mac の AI 管理者を許可スイッチで完全にオフにでき、常にアプリのロック解除とこの端末の署名を必要とします。電話からの会話は Mac の AI 管理者履歴に保存されるので、そこで続きを再開できます。

メモ「承認が必要」と拒否された場合。FrontierStack は既定で、外部からの変更ごとに Mac のアプリ上での確認を求めます。端末を手にしている状態では当然それに答えられません。代わりに、この端末を一度だけ承認してください。Mac で Paired Devices ▸ 対象の端末 ▸「Allow AI changes without asking me here」です。これで免除されるのは確認ダイアログだけです。端末にはツールを許可する権限レベルが必要で、Mac のロック解除も必要、その会話で Allow changes がオンである必要もあり、外部変更にパスワードを要求する設定にしている場合はそれも引き続き適用されます。

各応答の左にある緑のシールドは、その答えが保護されたことを意味します:AI モデルへ何かが Mac を離れる前に、FrontierStack がツール結果から秘密情報(鍵・トークン・パスワード)を除去しました — シールドをタップすると意味が読めます。質問と応答はどちらも選択してコピーできます(長押し、または Copy 操作)。他所に貼り付けられます。またサーバを選択しているときは、アシスタントはそのマシンについて答えます — クエリ自体は Mac 上で動きますが、「どれくらい稼働している?」「何が待ち受けている?」は Mac ではなく選んだデバイスにスコープされます。

スクリーンショット追加予定
図 5.2. 会話中の AI タブ:質問、緑の保護シールドを添えたアシスタントの応答、その場の「ran read_logs」ツール行、右上に Allow changes トグル。撮影手順: capture: 緑のシールド・ツール操作・Allow changes トグルが見える 1 往復を表示した AI チャット

5.5More — アラート・ロケーションなど

More タブは、専用タブが要らないものをまとめます。

5.5.3Agent Activity

Agent Activity は、ペアリング済み Mac が把握する作業の状態限定ビューです。実行中のコーディングエージェント、FrontierStack セッション/ジョブ、設定済みランタイム、検出済みワーカーを Needs YouRunningRecently FinishedReady に分類します。ホスト付き項目から、そのホストの継続ターミナルセッションを確認できます。

セキュリティプロンプト、コマンド行、トランスクリプト、環境変数、ターミナル内容、資格情報は端末へ送りません。セッションの一覧/終了にはペアリング済み Mac が必要です。フルスクリーン接続は Direct SSH でこの端末の鍵を導入し、保存済みサーバ識別が一致する場合だけ提供されます。

5.5.4キュー運用

キュー運用は Mac の読み取り専用キューダッシュボードを表示します。プルして RabbitMQ、Kafka、NATS/JetStream、Redpanda、AWS SQS、Azure Service Bus、Google Pub/Sub、Celery、Redis Streams、Pulsar、RocketMQ の健全性を更新できます。メッセージ本文をダウンロードせず、バックログ・コンシューマ・遅延・デッドレター合計を表示します。資格情報としきい値は Mac で設定し、端末が受け取るのは署名付きのサニタイズ済みヘルスサマリーだけです。

5.5.5Queued Actions

Mac がオフラインのとき、対象サービスのメニューは Queue StartQueue StopQueue RestartQueue Reload と表示します。要求は端末上に留まり、自動実行されません。More → Queued Actions で正確な対象と期限を確認し、不要なものはスワイプして取り消し、Mac の復帰後に残りを明示的に送信します。各要求は 4 時間で期限切れになり、Mac は署名・権限・App Lock を再確認してから 1 回だけ実行します。

メモキューが受け付けるのは名前付きサービス操作だけです。スクリプト、シェルコマンド、サーバ再起動、Fleet Run、デバイス電源、アクセス変更はキューに入れられません。

5.5.6Alerts

Alerts はサーバアラートの受信箱です — サービス停止、ディスク逼迫、証明書の期限切れなど — Mac とそのエージェントが発します。Enable push notifications をタップすれば、アプリを閉じていても届きます。プッシュの送信には Mac(またはそのリレー)がオンラインである必要があります。

セキュリティ端末がプッシュサーバに直接登録することはありません。通知を有効にすると、端末はプッシュトークンを署名付き接続でペア済み Mac に渡し、Mac が有効なライセンスの鍵で登録内容に署名して代わりに登録します。そのため Mac 側で端末を失効する — またはここでペアリング解除する — と、端末がオフラインでもそのプッシュ通知が停止します。

5.5.7Checks — ウォッチドッグと保守用の一時停止

Checks は Mac の Service Guardian の管理画面です。監視対象のサービス、それぞれの健全性、Keep AliveAuto Recover が有効かどうかを確認できます。デスクトップ版マニュアル 第 11 章 のペインを端末側から見たものです。

ディスク修復は自動的に保護されます。Disk UtilityのFirst Aidやファイルシステム修復ツールの実行中は、設定を変えずに自動復旧を一時停止します。保守中のタイムアウト回数を消去し、修復終了後も60秒待ってから新しい状態で再開します。この安全停止はChecks画面に表示されます。

便利なのが一時停止です。作業を始める前に、すべてのチェック、または特定のサービスだけを 15 分から 1 日まで一時停止できます。停止中は Mac がヘルスチェックも再起動も行わないため、保守作業がウォッチドッグと衝突したり、アラートを発生させたりしません。

ヒント一時停止はウォッチドッグをオフにすることとは異なります。何も無効化されず、設定も失われません。時間が過ぎれば、設定どおりに自動で再開します。早めに再開することもできます。これが要点で、保護を戻し忘れることがありません。

5.5.8端末接続とフリート拠点

Fleet tab では、1 行のコンパクトな Phone & Fleet が有効なフリート拠点を示し、詳細な Phone & Fleet Sites 画面を開きます。この画面は、以前の「ロケーション」という表示で混同しやすかった 3 つを分けます。この iPhone から Mac への接続方法、Mac 自身のネットワークから一致した拠点、そして監視・デバイスの対象に使うフリート拠点です。端末の現在地やネットワークがフリート拠点を選ぶことはありません。

Mac が検出した拠点に追従を選ぶと、フリートの対象は Mac に追従します。別のフリート拠点に固定しても、端末から Mac への接続経路は変わらず、別拠点のプライベートネットワークが自動的に到達可能になることもありません。その拠点のデバイスを開くには、Tailscale や VPN など既存の経路が必要です。

5.5.9Fleet Run・共有・Web UI

Fleet Run は、再起動待ち、ディスク使用量、稼働時間/ロードの確認済み・読み取り専用チェックを全サーバで実行し、ホストごとの結果を表示します。パッケージ更新、Git pull、サービス再起動、インストール、カスタムコマンドは Mac の段階的なオペレータ確認フローに残ります。Shared は Mac が開いた一時的な Debug Share を一覧し、開いたり停止したりできます。新規に開くにはフル権限と Mac の外部変更ポリシーが必要です。Web UIs & Bookmarks は、ルータ・NAS・カメラの管理ページと、端末側でブックマークしたアドレスを開きます。ローカルの自己署名サイトはフィンガープリントの明示確認が必要で、公開サイトには通常信頼される HTTPS が必要です。

メモ「到達可能」とは、端末がそのデバイスのネットワークにいることを意味します。同じ Wi-Fi 上なら成り立ち、外出先でも Tailscale 経由(例:サブネットルータ)で成り立つことがあります。ローカル、プライベート、Tailscale 上の自己署名サイトは、初回に SHA-256 フィンガープリントを確認して承認します。後の変更はブロックされます。公開サイトは通常の iOS 証明書検証に合格する必要があります。

5.5.10端末の中のマニュアル

More ▸ Manual は、本書をアプリ内に収録したものです。ネットワークもペアリング済みの Mac も不要です。トラブルシューティングの章は、まさに何かに到達できないときに最も役立つため、これは重要です。章ごとに読むことも、本全体を検索することもできます。検索は端末上で実行されます。

ヒントマニュアルはペアリング画面からも開けます。Mac をまだ接続していなくても読めるので、ペアリング自体がうまくいかないときに役立ちます。

最後に、More には設定ヘルプがあります — 次章で扱います。

6

第 6

設定・アプリロック・トラブルシューティング

アプリを顔やパスコードでロックし、端末を手放すときはきれいにペアリングを解除し、電話と Mac の間で起こりうる数少ないトラブルを解決します。

設定画面(More タブ内)は、この端末を保護し、ペア済み Mac への各経路を説明し、端末を手放すときに安全な失効を行います。本章では、端末ローカルまたは Mac 管理の App Lock、プッシュ状態、経路診断、ペアリング解除、そして Mac への接続が静かになったときも役立つ機能を扱います。

6.1設定の概観

More → 設定を開きます。スクロールする 1 枚のフォームで、次のセクションに分かれています。

  • App Lock — 端末ローカルのパスコードと生体認証、またはペア済み Mac が管理するロック。
  • Notifications — APNs 権限、Mac がリレー登録を確認したか、最後のバックグラウンド同期、設定エラー。
  • Connection — ペア済み Mac、有効なアドレス、保存済みまたは近くで検出した各経路の結果と遅延、Check all routes、この端末の鍵、Unpair this device
  • Help & GuideManual (offline)About — 簡潔なヘルプ、アプリに保存された検索可能なマニュアル、バージョン情報。

設定の大半はこの端末だけに関するものです。ペアリング解除は意図的な例外で、ローカルのペアリングを消す前に Mac へ端末の失効とサーバアクセスの後始末を依頼します。

6.2App Lock:アプリ用のパスコード

FrontierStack モバイルは実サーバのリモコンですから、端末のパスコードとは別に、アプリ専用のロックをかける価値があります。ペア済み Mac が App Lock を要求していない場合、App LockRequire passcode to open をオンにします。6 文字以上のパスコード設定と確認を求められます。以降、全画面ゲートがパスコードを求め、入力するまでインフラ情報を表示しません。

アプリは、離れるたびに再ロックされます — 別のアプリに切り替える、電話をロックする、FrontierStack をバックグラウンドに送る — ので、肩越しにのぞかれてもフリートが露出することはありません。後でコードを変えるには Change passcode をタップします(先に現在のコードを入力します)。削除するにはトグルをオフにし、現在のパスコードで確認します。

スクリーンショット追加予定
図 6.1. 設定の App Lock セクション:「Require passcode to open」トグル、「Change passcode」、そして「Unlock with Face ID」スイッチ。撮影手順: capture: パスコードを設定済みの状態で設定タブを App Lock セクションまでスクロールし、Change passcode と生体認証トグルが見える状態で撮影
セキュリティパスコードは決して保存されません。ローカルロックは、固有のソルトと意図的に低速な PBKDF2-HMAC-SHA256 検証値だけを端末の Keychain に保持し、失敗が続くと待ち時間を段階的に延ばします。読み出せるパスコードは存在しません。

6.9.1App Lock が Mac に管理される場合

ペアリング時に Mac が App Lock を要求していた場合、設定には Managed by paired Mac: On と表示されます。端末は同じパスワードを求めますが、パスワードも Mac の再利用可能な検証値もコピーされていません。この端末の署名身元だけに結び付けられた低速な検証値を保持します。ロックの変更・解除は Mac で行います。Face ID/Touch ID は端末ローカルのスイッチとして残ります。

6.3Fleet:物理セキュリティキーでロック解除

Fleet ライセンスでは、同じ App Lock セクションに物理セキュリティキーが追加されます。Apple のシステム画面を使って Yubico YubiKeyGoogle TitanFEITIAN ePass を登録します。アプリが保存するのは公開認証情報だけです。最大 3 本まで登録できるため、このポリシーに頼る前に予備キーも追加してください。

有効にすると、アプリは起動時からロックされ、フォアグラウンドを離れるたびに再ロックします。対応する USB-C/Lightning キーを接続するか、指示されたときに NFC 対応モデルをかざしてタッチします。パスコードまたは Mac と共通のパスワードも設定している場合は両方が必要で、キーはパスコードの代替ではありません。登録済みキーがなければアプリは閉じたままで、フリート操作を一切表示しません。

注意予備キーは別の安全な場所に保管してください。物理キーロックの解除にも登録済みキーの新しいタッチが必要で、キーを利用できないときに弱いパスワードだけの迂回路は提供しません。

6.4Face ID と Touch ID

パスコードを設定し、端末が生体認証に対応していれば、追加のスイッチが現れます。Unlock with Face ID(または、お使いのハードウェアに合わせて Unlock with Touch ID)です。オンにすると、ロック画面は表示された瞬間に生体認証ロック解除を提示します — ほとんどパスコードを打つことはありません。パスコードは、顔や指が認識されなかったときのフォールバックとして残ります。

生体認証ロック解除は、パスコードの上に重ねる利便性であって、置き換えではありません。先にパスコードを設定する必要があり、パスコードを削除すると生体認証も自動的にオフになります。端末に Face ID や Touch ID がなければ、このスイッチは表示されず、パスコードが唯一のゲートになります。

ヒントいつも持ち歩く電話には Face ID が自然です。見た瞬間にアプリが解除され、それでいて他人には封じられたままです。Mac 側の低い権限レベル(権限レベルを参照)と組み合わせて紛失時のリスクを抑え、見当たらなくなったら速やかに Secure lost phone を実行してください。

6.5この端末のペアリング解除

電話を売る、他人に渡す、または最初からやり直すときは Unpair this device を使います。確認後、アプリは Mac にこの端末の失効、保留中の権限の取り消し、サーバへ登録した直接 SSH 鍵の削除、プッシュアクセスの無効化を依頼します。Mac が後始末を確認してから、端末はピン留め証明書、アドレス、保護済みキャッシュ、署名身元を削除し、ペアリング画面へ戻ります。

Mac が失効を確認できない場合、設定はエラーと Retry UnpairForget Locally を表示します。可能なら再試行してください。Forget Locally はこの端末だけからペアリングを削除します。到達不能な Mac に閉じ込められないための選択肢ですが、その後 Mac の Paired Devices で端末を失効し、一覧に残ったサーバ鍵の後始末を完了する必要があります。

セキュリティ紛失端末は Mac から対処します。Paired Devices で Secure lost phone を使ってください。この決定的な操作は電話への到達を必要とせず、他のペア済み端末にも影響しません。

6.6トラブルシューティング

トラブルの多くは接続です。電話と Mac が互いを見つけられない、あるいは Mac 側の状態のせいで操作がグレーアウトしている、のいずれかです。まず表を上から確認し、その下の注記を読んでください。

症状考えられる原因対処
「This Mac」は到達可能なのに FrontierStack に接続できず、Fleet がキャッシュ済みインベントリを表示直接ポートチェックは成功したが、保存済みまたは近隣のどの経路でも署名・証明書ピン留め付きの FrontierStack コントロール接続を完了できないMac で FrontierStack とコントロールサーバが有効か確認し、引き下げて更新してから、設定の Check all routes で経路・証明書・ハンドシェイクの正確な失敗原因を確認する。最初から再ペアリングは行わない。
操作がグレーアウト — ボタンは見えるが反応しないMac がロックされている、またはこの端末が読み取り専用Mac のロックを解除する、または the Paired Devices pane でこの端末のレベルを上げる。
再確認を押しても読み取り専用のままこのボタンは Mac の現在の判定を読み直すだけで、権限を付与しないMac の Paired Devices でこの端末を Restart services 以上に設定し、FrontierStack のロックを解除する。端末が一覧から消えた場合だけ再ペアリングする。
保存済み LAN アドレスが動かないDHCP またはネットワーク変更で Mac のアドレスが変わった両方を同じ LAN に置いて更新する。Bonjour がペア済み Mac の現在アドレスを見つけ、保存済み証明書フィンガープリントが一致した場合だけ受け入れる。Mac の Paired Devices に自動 LAN 検出のアクセスが必要と表示された場合は、システム設定 → プライバシーとセキュリティ → ローカルネットワークで FrontierStack を許可する。Bonjour がブロックされていても、保存済み LAN と Tailscale の経路は利用できる。
サービス操作が実行されず Queue と表示されるMac がオフラインMore → Queued Actions で確認する。Mac 復帰後に明示的に送るまで実行されず、4 時間で期限切れになる。
直接 SSH がブロックされる端末鍵が未登録、サーバ身元が欠落・変更、またはサーバネットワークへ到達不能Mac がオンラインの間にサーバ画面から直接 SSH を有効化し、身元を保存する。可能なら別経路でフィンガープリントを比較し、同じ LAN または Tailscale でサーバへ到達する。
プッシュ通知が届かない通知が有効でない、または送信側がオフラインAlerts(More タブ内)で有効化し、iOS が尋ねたら通知を許可する。送信のため Mac(またはそのプッシュリレー)がオンラインであることを確認する。
デバイスの Web ページが開かないネットワークへ到達できない、または証明書が未承認・変更済み同じ Wi-Fi または Tailscale を使う。ローカルの自己署名サイトは SHA-256 フィンガープリントを比較して承認する。変更されたフィンガープリントはブロックされ、公開サイトには通常信頼される HTTPS が必要。

6.7Mac に届かないとき

アプリは、応答しない 1 つのアドレスで接続全体を長く待たせず、保存済み LAN、Tailscale、その他の登録済み経路を調べます。同じ LAN 上では、Mac のアドレスが変わっていても Bonjour でこのペアリング済み Mac を見つけ直します。完全な証明書フィンガープリントが一致した場合だけ検出アドレスを受け入れます。複数の端末は 1 台の Mac へ独立して接続でき、複数の Mac も LAN 上で同時に広告できます。表示名を信頼に使わないため衝突しません。

どれも応答しなければ、Operations はオフラインを示し、Fleet は最後の署名済みインベントリとその経過時間を保持します。FrontierStack とコントロールサーバが有効か確認し、同じ Wi-Fi または両端の Tailscale を確認してください。引き下げて更新するとネットワーク変更後の再試行を行います。設定の Reached via は有効なアドレスを示し、Check all routes は各候補が接続済み、待機、到達不能、ブロックのどれかと、その理由を表示します。Tailscale を起動したときも接続更新が自動的に走ります。

キャッシュ済みサーバを開き、Check server reachability を選ぶこともできます。この限定チェックは Mac を経由せず、端末から保存済み SSH・サービスアドレスへ接続します。「Mac が利用できない」のか「サーバにも到達できない」のかを切り分けられますが、ポートが開いているだけでサービスや OS が正常とは判断しません。登録済み直接 SSH と到達可能な Web UI も利用できます。Mac 経由の AI、新しい中央テレメトリ、再起動、ライブ操作は Mac 復帰後に再開します。

ヒント外出先で確実にアクセスするには、電話と Mac の両方に Tailscale を入れる(またはルータで動かす)のが確実です。同じ tailnet 上に両方があれば、Fleet tab・アラート・デバイスページのすべてが、自宅にいるかのように動きます。

6.8グレーアウトした操作と届かないアラート

状態は見えるのに Start/Stop ボタンが反応しない場合、アプリが壊れているのではありません — いまその操作が許可されていないことを伝えているのです。Mac がログインウィンドウでロックされているなら、誰かが解除するまでリモートコマンドに応じません。あるいは、この端末の権限レベルが低すぎます。Mac の the Paired Devices pane でレベルを上げるか、すでに権限のある端末を使ってください。

権限バナーは Mac からライブ応答を受けた場合だけ表示され、Mac に到達できない場合は Fleet が接続問題として表示します。バナーの再確認ボタンは、現在の権限判定を Mac にもう一度問い合わせるだけです。自分自身の権限を上げることはできません。端末が Paired Devices に表示され、現在の状態を読めるなら、ペアリングと署名鍵は機能しています。Mac 側で権限を変更するだけで十分です。Mac の一覧から端末が消えた、端末が失効された、またはアプリがペアリング身元の無効を明示した場合にだけ、再ペアリングしてください。

アラートについては、連鎖に両端があることを思い出してください。電話側で通知が有効になっている必要があり — 設定の Enable notifications、そして iOS が尋ねたら許可 — かつ Mac(またはそのプッシュリレー)が送信のためオンラインである必要があります。アラートがぱたりと止まったときの最もよくある原因は、Mac がスリープまたはオフラインになったことです。起こして、Fleet tab から到達できることを確認してください。

6.9ここから先へ

これでコンパニオンアプリの全体像です。Mac から一度ペアリングし、どこからでもフリートを見守り、権限レベルが許す範囲で操作し、電話自体はロックしておく。FrontierStack が動かすすべてへの、忠実で安全な窓 — それがあなたのポケットの中にあります。

さらに詳しくは、設定内の簡潔な Help & Guide または Manual (offline) を使ってください。マニュアルはアプリ内に保存され、ペアリング前や障害中も利用でき、端末上で検索できます。デスクトップ版マニュアルは Mac の各ペインとサービスを詳しく扱います — FrontierStack マニュアルから始めてください。ニュース、ダウンロード、サポートは frontierstack.app をご覧ください。