部署與維運要點
- docker compose 單機部署;預設 compose 指令產出的就是正式版 (nginx 供編譯後前端、後端為精簡二進位映像)。
- 資料庫為 PostgreSQL;schema 由單一 baseline migration 完整定義, 啟動時零自動遷移,遇到不認識的既有 schema 版本會拒絕啟動而不是硬跑。
- 目前為單一後端實例的設計前提;多副本/高可用部署尚未支援。
- TLS 終止點在外部 ingress(反向代理)承擔,應用層維持 TLS-ready 契約並附可用範例。
出廠安全底線
Section titled “出廠安全底線”這些底線內建於部署流程,無法用設定關閉:
- 沒有內建的公開 bootstrap 憑證;初始管理員密碼由部署者設定,首次登入強制改密。
- 正式版偵測到 JWT 密鑰仍是內建開發預設值(或長度不足)即拒絕啟動;
quickstart.sh會自動產新值。 - 落庫敏感資料採 KEK/DEK 分層信封加密,附金鑰清冊、換鑰治理與 KEK 切換狀態機。
主體應用資料(審計、錄影、資料庫)集中落在 DATA_PATH 指定的單一資料夾根——
備份範圍收斂為這個資料夾加上 .env(含金鑰組態)。詳細的備份與還原程序、
升級步驟與平台自身特權憑證的輪替方式,主倉庫 docs/ops/ 有四份營運程序文件成文。
審計完整性的營運前提
Section titled “審計完整性的營運前提”審計證據鏈的檢查點會向 syslog 離機錨定——這件事要成立, 離機的 syslog 收集器是必要配套:若審計資料與其完整性錨點存放在同一台主機, 「主機管理者竄改並抹平」就回到不可偵測的範圍。部署時請規劃一台獨立的 syslog 目的地(SIEM 或最小 syslog server)。
同時要知道邊界:外部 syslog 是補充副本,不取代主審計來源; syslog 目的地掛掉不會阻塞連線,事件走有界緩衝,溢出時審計失效告警會出聲。
GET /metrics 以 Prometheus 格式曝光營運指標(路徑刻意不在 /api 之下,
零設定即不對外);錄影儲存佔用可見。三類審計事件可另以 RFC5424 轉發到外部 SIEM。
審計資料有保留政策,到期以檢查點區間為單位分批清除;清除動作本身入審計並留存 tombstone,與惡意刪除可區分。