セキュリティとファイアウォール
開放ポートを監視し、macOS アプリケーションファイアウォールと pf を管理、fail2ban/CrowdSec を実行。変化があればアラートで通知します。
FrontierStack 自身の堅牢化
サーバの鍵を預かるツールは、その信頼に値する必要があります。FrontierStack は 5.6 Sol(High)による約 100 時間のセキュリティ監査を受け、変更のたびに実行される 900 件以上の自動セキュリティ/ポリシーテストを備えています。
具体的には、アプリはループバック優先です。新規インストール時はネットワーク接続を一切受け付けず、 リモートアクセスには明示的にペアリングしたデバイスが必要です。外部からのリクエストはすべて 暗号署名(Ed25519)され、デフォルト拒否のルートポリシーで検証されるため、未レビューのルートは応答しません。 認証情報はキーチェーンに保管し、設定ファイルやログには残しません。クラウド AI へ送る内容は必ず 秘匿フィルタを通り、任意でローカルモデルによる検査も追加できるため、秘密情報や内部ホスト名がマシンの外に出ることはありません。 エージェントジョブやセキュリティ監査など信頼できない処理は、通常の認証情報にアクセスできない デフォルト拒否のサンドボックス内で実行されます。
ファイアウォールと侵入防止
- macOS アプリケーションファイアウォールと pf(パケットフィルタ)を、アプリ管理のルールで運用
- fail2ban と CrowdSec による侵入防止
- 新しいリスナーを検知してアラートする開放ポート監視と、リモートアクセスの露出チェック
連携できるルータ/ファイアウォール
OPNsense(REST API)、pfSense、OpenWrt、DD-WRT、MikroTik RouterOS、Ubiquiti UniFi/EdgeOS、ASUSWRT、FRITZ!Box、TP-Link Omada のライブ状態の読み取りと設定操作を、API があれば API で、なければ SSH で行います。
インターネットへポートを開く
- UPnP IGD(miniupnpc)と NAT-PMP/PCP(libnatpmp)でルータにポートマッピングを依頼
- OPNsense の境界ルールを API 経由で設定
- Cloudflare トンネルと Tailscale Funnel で、受信ポートを一切開かずに外部からサービスへ到達
ダイナミック DNS(DDNS)
変化する自宅 IP にホスト名を追従 — Cloudflare DDNS(現在のパブリック IP を追う A レコード)と、他プロバイダ向けの汎用インターバル更新。
メッシュ・VPN・ゼロトラスト(ZTNA)
WireGuard、Tailscale(出口ノードやサブネットルータを SSH または OPNsense API で設定)、Headscale、NetBird、Nebula、ZeroTier。
リモート監視・モバイルアプリでの Headscale と Tailscale: Mac への到達という点では相互に置き換え可能です。Headscale は Tailscale の制御プレーンを置き換えるだけで、データ経路は公式の Tailscale クライアントのままなので、Mac アプリも iPhone/iPad アプリも、どちらでも同じテイルネットアドレスで接続します。クライアントは tailscale up --login-server で自分のサーバに向けます(iOS では Tailscale アプリの「代替コーディネーションサーバ」を設定)。唯一の例外は Tailscale Funnel(ワンクリックの公開)で、これは Tailscale のクラウドに依存するため Headscale では使えません。公開到達には Tailscale Serve(非公開)・LAN・Cloudflare トンネルが利用できます。
トランスポートと証明書
信頼された HTTPS/TLS を mkcert(ローカル)と Let’s Encrypt(公開)で、フリートには鍵ベースの SSH、エージェント接続は TLS ピン留め(TOFU SHA-256)。
デバイスとリクエストの認証
コントロールサーバと MCP サーバには FS1 署名付きリクエスト層 — ベアラートークンと TLS の上に、デバイスごとの Ed25519 キー — を追加。デバイスごとのスコープ(読み取り専用〜フル)とワンタップ失効を備えます。iOS アプリのペアリングもこの仕組みです。
認証情報の保管とパスワードマネージャ
既定では、FrontierStack が保持する秘密(SSH/sudo パスワード、SaaS の API キー、ルータ/レジストラのシークレット、AI プロバイダキー)はすべて暗号化された macOS Keychain に保存され、平文ファイルには置かれません。ボールトリンクを使えば、これらを自分のパスワードマネージャ/シークレットボールトから取得できます — Bitwarden とセルフホストの Vaultwarden、1Password、HashiCorp Vault、Infisical、Doppler、Keeper。アプリの認証情報をボールト内の項目にリンクすると、各社の CLI 経由で必要時に取得します(キャッシュされ非ブロッキングなので UI を止めません)。既存機能はそのまま動き、Keychain ではなくボールトから読み取るだけです。アプリから強力なシークレットを生成してボールトへ直接保存し、ワンステップでリンクすることもできます。どの保管先を使っても、秘密の値はクラウド AI や外部経路へ送る内容から伏字化されます — AI 管理者をご覧ください。
auth.md — パスワード不要の自動ログイン
FrontierStack は auth.md(WorkOS 発のオープン仕様)に対応します。サービスが /auth.md を公開していれば、各サービスの「接続 ▸ ログイン自動化(auth.md)」でドメインを入力すると、対応フロー(agent-verified/user-claimed)・スコープ・OAuth エンドポイントを取得・要約します。付与はサービス側で行われ、短命で失効可能なスコープ付きトークンが発行されるため、長期パスワードは保存しません。
マルウェアと整合性
マルウェア監査は Gatekeeper/SIP/FileVault/XProtect を確認し、永続化を調査、ClamAV・YARA・VirusTotal を実行。EDR フリートボードや高度なツール(Volatility 3・capa・CAPE/Cuckoo)も備えます。
これはアプリ内ヘルプの Web 版です。アプリ内で同じトピックを開くと、操作可能なコントロールが使えます。
すべてをひとつの Mac アプリで。
FrontierStack は、ローカルでもフリート全体でも、スタック全体のインストール・監視・保護をひとつのネイティブ macOS アプリで行います。
FrontierStack をダウンロード