系統架構
Panguard AI 是一個 TypeScript monorepo,包含 13 個套件,組織為三個部署層級。每個元件 — 從您筆電上的 CLI 到資料中心的 Threat Cloud — 都共享相同的@panguard-ai/core 基礎。
三個部署層級
- 端點層
- Manager 層
- 雲端層
Guard 代理程式與 CLI 工具直接在受保護的設備上執行。這是安全事件被偵測、由 Layer 1 與 Layer 2 AI 分析,並進行即時回應的地方。關鍵元件:
- Guard 代理程式(持續監控)
- Scan 引擎(按需稽核)
- Chat 通知(Telegram、Slack、Email、LINE、Webhook)
- Trap 蜜罐(8 種誘餌服務類型)
- Report 產生器(PDF、JSON)
- 透過 Ollama 的本地 AI(Layer 2)
13 套件 Monorepo
程式碼庫以 pnpm workspace monorepo 組織。每個套件有單一職責:| 套件 | 層級 | 用途 |
|---|---|---|
@panguard-ai/core | 共享 | 規則引擎、監控器、AI 供應商、i18n、加密 |
@panguard-ai/panguard | 端點 | CLI 入口點(panguard 指令) |
@panguard-ai/panguard-guard | 端點 | 即時防護代理程式(5 階段 AI 流水線) |
@panguard-ai/panguard-scan | 端點 | 安全掃描器與風險評分 |
@panguard-ai/panguard-chat | 端點 | 通知系統(5 個頻道、3 種角色格式) |
@panguard-ai/panguard-trap | 端點 | 蜜罐系統(8 種服務類型) |
@panguard-ai/panguard-report | 端點 | 合規報告產生(TCSA、ISO 27001、SOC 2) |
@panguard-ai/panguard-auth | 共享 | OAuth 流程、連線管理、層級限制 |
@panguard-ai/panguard-manager | Manager | 機群編排與代理程式註冊 |
@panguard-ai/threat-cloud | 雲端 | 集體情報 API 伺服器 |
@panguard-ai/panguard-web | 雲端 | 網頁儀表板(Next.js) |
@panguard-ai/admin | 雲端 | Threat Cloud 與使用者管理的管理面板 |
@panguard-ai/website | 雲端 | 行銷網站 (panguard.ai) |
@panguard-ai/core — 共享基礎
core 套件是所有其他套件依賴的基礎。它提供:
規則引擎
規則引擎
- Sigma 規則剖析器與評估器(布林邏輯、聚合、修飾器、萬用字元)
- YARA 掃描器,支援原生引擎與正規表達式降級
- 3000+ 條內建 Sigma 規則、自訂規則載入
監控器
監控器
4 個系統監控器收集安全相關事件:
- Log 監控器 — 系統日誌剖析(syslog、journald、Windows Event Log)
- Network 監控器 — 連線追蹤、連接埠掃描、DNS 查詢
- Process 監控器 — 行程建立、終止、資源使用
- File 監控器 — 檔案系統變更、權限修改、新的可執行檔
AI 供應商
AI 供應商
- FunnelRouter 用於 Layer 2/3 級聯
- Ollama 轉接器(本地 AI)
- Claude 與 OpenAI 轉接器(雲端 AI)
- 啟動時供應商自動偵測
- AES-256-GCM 加密金鑰儲存(
~/.panguard/llm.enc)
國際化 (i18n)
國際化 (i18n)
- 英文與繁體中文
- 所有 CLI 輸出、報告與通知皆完整在地化
- 透過
panguard init或--lang旗標選擇語言
系統偵察
系統偵察
- 作業系統偵測(macOS、Linux、Windows)
- 網路介面列舉
- 執行中服務清單
- 安全工具偵測(防毒、EDR、IDS)
- 硬體識別碼收集,用於加密金鑰衍生
技術堆疊
| 技術 | 版本 | 用途 |
|---|---|---|
| TypeScript | 5.7 | 所有套件的主要語言 |
| Node.js | 22 | 執行環境 |
| pnpm | 9+ | 支援 workspace 的套件管理器 |
| Vitest | 最新 | 單元與整合測試 |
| esbuild | 最新 | CLI 發布的快速打包工具 |
| better-sqlite3 | 最新 | Threat Cloud 與 Guard 狀態的嵌入式資料庫 |
| Next.js | 14 | 網頁儀表板與行銷網站 |
跨平台支援
Panguard 在三大主要作業系統上運行:| 平台 | Guard | Scan | Trap | Manager |
|---|---|---|---|---|
| macOS (ARM64, x64) | 是 | 是 | 是 | 是 |
| Linux (x64, ARM64) | 是 | 是 | 是 | 是 |
| Windows (x64) | 是 | 是 | 是 | 是 |
core 中透過介面抽象化:
- 防火牆: macOS
pfctl、Linuxiptables/nftables、Windowsnetsh - 服務管理: macOS
launchd、Linuxsystemd、Windows Services - 日誌來源: macOS unified log、Linux
journald/syslog、Windows Event Log