WireCanalby Qualiteg
shield Security

国内サーバー運用・多層防御・迷ったら閉じる

WireCanal は 転送先の固定を軸にした多層防御と fail-closed を前提に設計されています。 要は 転送先の固定、そして入口を絞る送信元IP制限。公開しているのに、公開していないに等しい入口を実現します。

転送先の固定 ― トンネルを通り道にしない

WireCanal の最重要レイヤが 転送先の固定です。エージェントは、設定した転送先(既定はループバック)以外へは絶対に接続しません。だからトンネルが社内のオープンプロキシと化して、ほかのシステムへの通り道に使い回される、という事故を構造的に防ぎます。

verified_userリリース前の回帰テストで確認

「オープンプロキシ化しないこと」を、リリース前の必須回帰テストで毎回確認します。想定外の宛先要求・名前解決のすり替え・リダイレクト追従を投げても、許可した宛先以外へは接続しないことを機械で確かめ続けます。設計思想を口約束で終わらせません。

入口を「専用線化」する

WireCanal の公開入口(Edge)は、正規の呼び出し元の固定 IP からのアクセスだけに限定できます。公開エンドポイントでありながら、実質は専用線。さらに呼び出し元のトークン認証が重なり、二重に守られます。「公開しているのに、公開していないに等しい」入口です。

入口と出口、二段で守る:入口= WireCanal(国内サーバー・発信元 IP 制限・認証・アクセス保護 8 種)/出口= Agent(お客様の社内・転送先の固定・許可した 1 宛先にだけ接続)
Agent の接続先を 1 つに固定(転送先の固定)。許可した宛先だけに、確実に届けます。

転送先の固定を軸にした、多層防御

WireCanal は「fail-closed(迷ったら閉じる)」を前提にした多層防御です。数を掲げるより、実際に稼働している中核をそのまま並べます。目玉は 転送先の固定です。

1
転送先の固定(最重要)

Agent は、許可した 1 宛先(既定はループバック)以外へは接続しません。起動時に宛先を検証し、接続の直前に名前解決をやり直して解決先をすべて再確認、リダイレクトも追いません。トンネルが社内の通り道に転用される事故を、構造的に防ぎます。

2
入口を絞る(送信元IP制限 + 接続元の認証)

公開入口を、正規の呼び出し元の固定 IP に限定できます。Agent の接続は発行キーの指紋で照合し、一致しなければ即座に拒否します。

3
アクセス保護(canal ごと・8 種)

IP/国/BASIC/トークン/時間帯/パス/連続失敗時の自動一時停止/ステルス。ダッシュボードで設定でき、全プランで全種類を開放しています。

4
公開範囲のアロウリスト(two-key)

見せる MCP ツール・HTTP パスをホワイトリストで管理します。既定は全拒否。許可台帳は社内が握り、ダッシュボードからは「提案」まで、反映には社内での承認操作が必要です。

5
標準準拠の MCP 認証 + 認証情報の非転送

OAuth 2.1+PKCE、RFC 9728/8414/8707、短命の署名付きトークンに準拠した認可サーバーを内蔵。入口で検証した Authorization ヘッダは転送先へ渡さず、社内システムの認証と二重にしません。

このほか、canal ごとのアクセスログ(到達アクセスの記録・プランに応じ直近 1,000〜10,000 件・API/CSV で確認)、テナント分離(canal ごとに専用サブドメインと固有 ID・振り分けは詐称できない値で判定)、流量・停止(レート/サイズ/タイムアウトの上限、canal 単位の一時停止、社内側からの即時遮断)を備えています。

今後の対応として、監査ログの改竄検出(ハッシュチェーン)、証明書ベースの端末登録、セッション単位の人手承認(エンタープライズで個別相談)を計画しています。

アクセス保護 ― 全プランで使える

canal ごとに、公開側の入口へ 8 種類のアクセス保護をかけられます。全プランで全種類を開放しています。設定はダッシュボードの「アクセス保護」タブから(接続元/認証/公開範囲/防御動作の 4 分類)。

shieldfail-closed(迷ったら閉じる)

判定できない状況(国が特定できない接続元・設定の形式不正など)は、すべて安全側=「閉じる」方向に倒します。保護の執行点は 443 終端の直後(canal-gate)で、TCP canal では accept 時に接続元 IP を照合して非許可は即座に切断します。

AI(MCP)接続の認証 ― 標準プロトコルに準拠

Claude や ChatGPT などの AI サービスは、リモート MCP サーバーへの接続に OAuth による認証を要求します。 WireCanal は MCP Authorization 仕様(Model Context Protocol の認可仕様)に準拠した認可サーバーを内蔵しており、 canal を作って使う AI を選ぶだけで、標準どおりの認証つき MCP エンドポイントが手に入ります。 OAuth サーバーを自前で建てる必要はありません。事前のクライアント登録も不要(CIMD 対応)で、AI サービスは URL を出すだけで接続できます。 Claude / ChatGPT / Grok の実際の画面で接続と動作を確認済みです。

key認証が通っても、ツールの公開範囲は変わりません

OAuth はあくまで「入口の認証」。どのツールを見せるかの許可台帳は、これまでどおりお手元の wirecanal.json が握ります(two-key)。ダッシュボードから編集する場合も「提案」止まりで、反映には社内での承認操作が必要です(AI に見せるツールを選ぶ に実際の画面つきの解説があります)。詳しくは MCP・AI 連携のページ をご覧ください。

アクセスログと、認証情報の非転送

アクセスログ:canal ごとに、到達したアクセスをプランに応じて直近 1,000 件(プレミアム / エンタープライズは 10,000 件)までダッシュボード(および公開 API)で確認できます。誰が・いつ・どこから来たかを、あとから追えます。ステルスモード時でも、所有者にはログ上で本来の遮断理由がそのまま記録されます。一覧は CSV でダウンロードでき、手元での集計・保管にも使えます。

認証情報の非転送:入口の認証(MCP の OAuth、またはアクセス保護の BASIC/トークン)は WireCanal が入口で検証し、その Authorization ヘッダは転送先へ渡しません。だから社内システムは認証を持たないまま手元で動かしておけばよく、「WireCanal を通したせいで認証が二重になる/すり抜ける」といったことが起きません。

穴を開けずに、外からつなぐ。

登録は無料。カード不要で、いますぐ最初の canal を作れます。

無料で登録して始める