◆ v1.9.0
ルーターは「何が外へ出たか」を見せますが、「どのアプリが出したか」は見せません。v1.9.0はその穴を塞ぎます。Macで動くエージェントからの観測を受け取れるようになり、公証済みの.dmgで配布します。見覚えのない宛先が、接続したプログラムの名前とセットで届きます(メタデータのみ。通信内容は読みません)。端末がエージェントになるのは管理者が承認したときだけで、その通信も他と同じように脅威フィードと照合されます。あわせて、Web画面が数分間使えなくなる不具合を修正しました。検出ログでMacを選ぶと索引の無い相関クエリがイベントループを占有し、プロセスを再起動するまで504が返る状態でした。同じクエリは30秒超から約1.1秒になり、他の処理がループを占有した場合もwatchdogがプロセスを再起動します。1.8.0からの更新ではデータベース移行が走りますが、既存の履歴は保持されます。
🔒 家庭・SOHOのセキュリティ対策として
現代の家庭・SOHOネットワークには、スマートTV・IPカメラ・NAS・Wi-Fiスピーカー・IoT機器など20〜40台以上が接続されています。これらの多くはファームウェア更新が不定期で、どこに通信しているか把握されていません。一度侵害されると、C2サーバーへのデータ流出やボットネット加担が静かに進みます。
パッシブ・ゼロインパクト
ルーターのNATセッションテーブルをSSHで読み取るだけ。通信の中継・傍受なし、スループット低下なし、レイテンシ追加なし。
デバイス単位の可視性
どのIoT機器・PCがどこに通信しているかを把握。OUI・mDNS・SSDP・NetBIOS・Appleモデル辞書でデバイスを自動識別。
自動脅威検出
Feodo Tracker・ThreatFox・URLhaus・Spamhaus DROPとリアルタイムに全接続を照合。C2サーバー・ボットネット・マルウェア配布元を検出。
即時アラート
LAN内の任意のデバイスが既知の脅威に接続した瞬間にSlack DM通知。宛先ごとのクールダウン設定で通知スパムを防止。
ハードウェア変更不要
既存のYamaha RTX / Cisco IOSルーターと共存。Mac・PC・Raspberry Piにインストールするだけ。通信経路の変更なし。
完全ローカル・プライバシー重視
全処理はローカルで完結。通信データをクラウドに送信しません。エンリッチメント(GeoIP・RDAP・逆引DNS)は接続先IPのみ使用。
✦ 機能
全体把握 + ドリルダウン
グラフマップと統計情報でネットワーク全体を俯瞰し、通信ログと端末一覧でセッション・宛先・メモ・履歴へ掘り下げます。
モバイル監視ビュー
VPN・プライベートネットワーク内のスマートフォンから、ルーター状態、通信、端末、検出を確認。5つの画面を狭い表示幅でも操作できます。
Yamaha RTX 連携
Yamaha RTXルーターにSSH接続し、NATセッションテーブルを60秒ごとに取得。[INSPECT] syslog で短命 TCP セッションを補完。RTX1200〜RTX1300、RTX810/830対応。
Cisco IOS 正式対応
SSHでNATセッションを取得。Cisco単体またはYamaha/Cisco混在で最大10台に対応し、障害を分離して重複観測を統合します。
ASUS WiFi AP 対応
L2クライアント情報を取得 — WiFi帯域、信号強度、トラフィック量、AiMeshトポロジー。
スマートデバイス識別
OUI、mDNS/Bonjour、SSDP、NetBIOS、Appleモデル辞書(200機種以上、「iPhone 15 Pro」レベルまで特定)。
📡 DNS ベース宛先名解決
ローカルの dnsmasq クエリログを監視し、デバイスごとの DNS 解決結果(例: example.com)を宛先名に反映。PTR 逆引きより優先して表示。
IPエンリッチメント
全接続先に対して逆引きDNS、RDAP組織名検索、GeoIP(都市レベルの緯度経度)を自動付与。
接続履歴保存(SQLite)
接続履歴をSQLite(WALモード、クラッシュセーフ)で永続保存。保持期間は最大2年まで設定可能。時系列チャート・接続先別統計で分析。
🛡️ 脅威検出
Feodo Tracker、ThreatFox、URLhaus、Spamhaus DROP と全接続を自動突合。3段階の信頼度で推奨アクションを表示。
🔔 Slack通知
脅威検出時に Slack DM で即時通知。宛先ごとのクールダウン設定でスパムを防止。UI言語に連動して日本語/英語で送信。
📋 通信ログ
ソート・検索可能な全セッション一覧。カラム別フィルター(テキスト、正規表現、日付範囲)。脅威行クリックで詳細ポップアップ。アプリ列でポートと宛先ホスト名からサービス名を自動推測(APNs、FCM、AirPlay、QUIC、iCloud、YouTube、AWS、Slack、Zoom、Tuya Smart など)。
🔔 検出ログ
脅威検出・新規端末アラートの永続履歴。カラム別フィルター・ソート・クリック詳細ポップアップ付き。Slack設定の有無にかかわらず全検出を記録 — いつでも振り返り可能。
✦ AI洞察スタートページ
起動直後に収集状態・接続・端末・宛先・脅威と前期間比較を表示。AI未設定でも統計は利用でき、明示操作時だけOllama / Anthropic / OpenAI / Amazon Bedrockで分析・対話します。月次token・概算料金と回答ごとのモデル/料金も確認可能。既定OFFのイベント通知では、日次・週次レポートと上限付き脅威変化分析をUI履歴またはSlackへ送信できます。設定ガイド →
💻 macOSエージェント
ルーターは「何が外へ出たか」は見せますが、「どのアプリが出したか」は見せません。エージェントはMacの外向き接続をプロセス名つきで報告するため、見覚えのない宛先が「どのプログラムが接続したか」とセットで分かります。メタデータのみで通信内容は読まず、遮断もしません。端末がエージェントになるのは管理者が承認したときだけです。公証済み.dmgで配布。EgressView 1.9.0以降が必要です。導入ガイド →
🤖 AIエージェント連携(MCP)
Model Context Protocol サーバーを内蔵。通信サマリー・脅威接続・宛先ランキング・端末一覧・端末メモなど 11本のツールを AWS Kiro・Anthropic Claude・Anysphere Cursor 等の AI アシスタントに公開。stdio / HTTP 両対応。設定ガイド →
▶ デモ
UI言語: 英語 / 日本語 切り替え可能
グラフマップと統計情報で、デバイス/宛先の偏り、セッション推移、通信量の多い端末をリアルタイムに俯瞰できます。
通信ログと端末一覧では、気になる宛先、通信の多い端末、ビーコン候補、メモ、端末履歴へドリルダウンできます。
◈ スクリーンショット
⬡ アーキテクチャ
┌─────────────────┐ SSH(NAT) ┌──────────────────────┐ WebSocket ┌──────────────────┐
│ Yamaha RTX │◄───────────►│ │◄────────────►│ ブラウザ │
│ [INSPECT] log │ syslog/UDP │ EgressView Server │ MCP ├──────────────────┤
│ [DHCPD] log │────────────►│ (Node.js) │◄────────────►│ AI アシスタント │
└─────────────────┘ │ │ stdio/HTTP │(Kiro, Claude…) │
┌─────────────────┐ SSH(NAT) │ ポーラー: │ └──────────────────┘
│ Cisco IOS │◄───────────►│ • yamaha (SSH) │
│ (正式対応) │ │ • cisco (SSH) │
└─────────────────┘ │ • asus (HTTP) │
┌─────────────────┐ HTTP │ • inspect-syslog │
│ ASUS WiFi AP │◄───────────►│ • dhcpd-syslog │
│ (クライアント) │ │ • dnsmasq-log │
└─────────────────┘ │ │
┌─────────────────┐ tail -F │ │
│ dnsmasq │────────────►│ │
│ クエリログ │ └──────────┬───────────┘
└─────────────────┘ │
┌───────────────────┼───────────────┐
│ │ │
┌─────┴──────┐ ┌─────────┴───┐ ┌───────┴───┐
│エンリッチ │ │ 脅威インテル │ │ SQLite │
│ • dnsmasq │ │ • Feodo │ │ 履歴 │
│ • 逆引DNS │ │ • ThreatFox │ │ (WAL) │
│ • RDAP │ │ • URLhaus │ └───────────┘
│ • GeoIP │ │ • DROP │
│ • OUI │ └─────────────┘
│ • mDNS │
└────────────┘
▶ クイックスタート
Step 1 — 事前準備
| ✅ | Mac / PC / Raspberry Pi に Node.js 22以上をインストール | nodejs.org → |
| ✅ | Yamaha RTXまたはCisco IOSルーターを1台以上SSH有効化 | Yamaha / Cisco → |
| ☐ | (任意)ASUS WiFi AP の Web 管理画面を有効化 | 設定ガイド → |
| ☐ | (任意)AI アシスタント連携(AWS Kiro・Anthropic Claude・Anysphere Cursor 等) | 設定ガイド → |
Step 2 — インストールと起動
git clone https://github.com/yo1t/egressview.git
cd egressview
npm install
npm start
Step 3 — ブラウザを開いてログイン
初回起動時、対話terminalでは初期ログインパスワードを一度だけ表示し、service起動ではmode 0600のone-time fileへ保存します:
══════════════════════════════════════
EgressView login password (initial):
KFpDqntYRfcr...
→ ブラウザ初回アクセス時にこのパスワードでログインしてください
══════════════════════════════════════
http://localhost:3000 を開いてパスワードを入力してください。
任意のGoogle OIDC、失効可能session、CSRF保護、global API rate limit、個人情報を伏せた監査logを設定 → 一般から利用できます。
ブラウザのロールは最小権限が既定です。ローカルログインは管理者、明示したGoogle emailは運用、domainだけの一致は閲覧のみになります。
Step 4 — 設定 → L3/L4で最大10台のルーターを追加
| Yamaha RTX の IP | ルーターの LAN 側 IP(例: 192.168.1.1) |
| SSH ユーザー名 / パスワード | Yamaha 設定ガイドで設定したもの |
| Cisco IOS の IP / ユーザー名 / パスワード | Cisco 設定ガイドで設定したもの |
| ASUS AP の IP / パスワード | AP の LAN 側 IP と管理者パスワード(ASUS 設定ガイド) |
Yamaha/Ciscoをルーターごとの名前付き行として追加し、接続して自動検出 を押してください。各ルーターを独立して収集し、同じ通信はすべての観測元を保持して1件に統合します。
数秒後にデバイス、セッション、統計情報がUIに表示されはじめます。
◎ 対応ハードウェア
Yamaha RTX(L3/L4)
RTX1200, RTX1210, RTX1220, RTX1300, RTX810, RTX830, NVR500, NVR510, NVR700W — SSH+NATディスクリプタ対応の全モデル。
Cisco IOS(L3/L4)
C841M-4X-JSEC/K9(IOS 15.5(3)M9)で実機検証済み。混在10台は自動試験済みですが、物理HAと実フェイルオーバーは未検証です。
ASUS WiFi AP(L2)
RT-AXシリーズ、RT-ACシリーズ、ZenWiFi(AiMesh) — 標準Web管理画面を持つ全モデル(APモード/AiMesh使用)。
◎ Issues & フィードバック
バグ報告や機能リクエストはGitHubのIssueからお願いします。
🔑 リリース署名
portable releaseにはarchiveのchecksumに対するEd25519署名が付きます。archiveに同梱される公開鍵だけでは信頼の起点になりません。下記のDNSレコードとfingerprintを比較してください。このページとSECURITY.mdはどちらもリポジトリから生成されるため、リポジトリが書き換われば一緒に変わります。別の認証情報で配信されるDNSレコードと一致することが、比較に意味を持たせます。
$ dig +short TXT _egressview-release.egressview.com
現在有効な署名鍵
key id egressview-release-2026 · Ed25519
SHA256:6288265bd746d230a3637e3a520e2335f48dc939a4d76d7b05c44ea5baf3eccc
全桁を比較してください。先頭や末尾の一致は一致ではありません。秘密鍵はAWS KMS内にあり取り出せません。検証にAWSは不要で、opensslと公開鍵だけで完結します。検証コマンドは配布ガイドを参照してください。
⬡ リンク
GitHub リポジトリ
ソースコード、Issue、Pull Request、コントリビューションガイドライン。
README(日本語)
完全なドキュメント:セットアップ、設定、機能、セキュリティ。
README (English)
Full documentation: setup, configuration, features, and security.
Yamaha RTX 設定ガイド
Yamaha RTX ルーターの SSH を有効化するステップバイステップ手順。
Cisco IOS 設定ガイド
Cisco IOSのNATセッションをSSHで安全に収集するための正式設定ガイドです。
ASUS AP 設定ガイド
ASUS アクセスポイントを EgressView 用に設定する手順。
AIエージェント連携(MCP)
AWS Kiro・Anthropic Claude・Anysphere Cursor 等の AI アシスタントに自然言語でネットワーク状況を聞ける。脅威サマリー・上位宛先・新規端末・端末メモの追加・アラートなど11ツール搭載。
REST APIリファレンス
認証、全実装endpoint、通信filter、export、router管理、backupの安全性を説明します。
アーキテクチャガイド
複数router収集、観測の重複排除、SQLite lifecycle、interface、security boundaryを説明します。
ライセンス (AGPL-3.0)
自由に使用・改変可能。ネットワークサービスとして提供する場合は変更の公開が必要。