從「能簽憑證」到「可長期營運的信任系統」
在很多企業裡,「Internal PKI」的現況往往是:
- 有自建 CA
- 可以簽憑證
- 但沒人敢動、沒人敢換、沒人知道影響範圍
結果就是:
PKI 變成一顆不敢碰的地雷,而不是企業的安全基石。
這篇文章不談理論、不談名詞,專注在一件事:
企業要如何真正「落地」一套可維運、可控、可交接的 Internal PKI 架構。
一、企業 Internal PKI 的實際目標是什麼?
在實務中,Internal PKI 的目標從來不是「跟公開 CA 一樣完整」,而是:
- 內部系統信任可控
- 憑證外洩可止血
- 人員異動不會炸鍋
- 系統擴充不需重建信任
👉 重點是「可營運」,不是「技術炫技」。
二、實戰架構總覽(企業等級)

Offline Root CA
│(一年用不到一次)
▼
Intermediate CA(Active)
│
├─ Web / API Certificates
├─ Reverse Proxy Certificates
├─ Mail / LDAP / VPN Certificates
└─ (Optional) Client / mTLS Certificates
核心原則
- Root CA:信任錨(Trust Anchor)
- Intermediate CA:營運單位
- 憑證:短命、可撤銷
三、Root CA:企業最重要、也最容易做錯的角色
Root CA 的正確定位
- ❌ 不是拿來每天簽憑證
- ❌ 不是放在 Server 上
- ❌ 不是 IT 一個人保管
Root CA 實戰做法
- 離線設備(未連網)
- 私鑰加密
- 多人保管(至少 2 人)
- 只做一件事:簽 Intermediate CA
Root CA 的存在,是為了「最壞情況還能活下來」。
四、Intermediate CA:企業 PKI 的核心戰場
為什麼企業一定要有 Intermediate?
因為企業一定會遇到:
- 憑證誤簽
- 私鑰疑似外洩
- 系統汰換
- 架構調整
👉 Intermediate CA 可以撤銷,Root CA 不行。
Intermediate CA 實戰建議
- 有效期限:3–5 年
- 專責用途(可多個)
- Web / API CA
- Infra / Device CA
- 上線但嚴格存取控管
- 簽發流程可半自動化
五、憑證分類策略(企業一定要做)
❌ 常見錯誤
- 一張憑證給所有內部系統
- 一個 CA 簽所有用途
✅ 實戰分類方式
| 類型 | 用途 |
|---|---|
| Web / API Cert | HTTPS |
| Proxy Cert | Reverse Proxy |
| Mail Cert | SMTP / IMAP |
| Infra Cert | LDAP / VPN |
| Client Cert | mTLS / Device |
👉 用途分離 = 風險分離
六、SAN 與命名策略(90% 的連線問題在這)
實戰原則
- SAN 只包含必要名稱
- 不用萬用字元(Wildcard)
- 不為方便加「以後可能會用到的」
例子
DNS: api.internal.corp
DNS: api
而不是:
DNS: *.internal.corp
七、憑證有效期限與輪替(不要再 10 年)
實戰建議
| 類型 | 有效期限 |
|---|---|
| Root CA | 10–20 年 |
| Intermediate CA | 3–5 年 |
| Server Cert | 90 天 – 1 年 |
為什麼要短?
- 降低外洩風險
- 強迫建立更新流程
- 減少「不敢動」的心理負擔
八、信任部署策略(不要亂發 CA)
正確作法
- Apache / Nginx:只信任必要 CA
- Docker Image:只放需要的 CA
- Client:只信任該用途 CA
錯誤作法
- 全公司電腦裝 Root CA
- 所有系統信任所有 CA
九、撤銷與事故應變(企業一定會遇到)
實務觀點
- 內網多半不即時查 OCSP
- 但你一定要能回答:
- 哪張憑證撤銷?
- 哪些系統受影響?
- 怎麼換新?
👉 這是「流程問題」,不是工具問題。
十、企業 Internal PKI 的最小可行成熟度(MVP)
你不需要一開始就做到完美,但至少要有:
✅ Root / Intermediate 分離
✅ 憑證用途分類
✅ 憑證清冊(Excel 也行)
✅ 有效期限策略
✅ 撤銷與更換流程
✅ 文件化、可交接
結語:Internal PKI 是企業的「信任基礎建設」
Internal PKI 的本質不是 OpenSSL、不是憑證格式,而是:
企業是否能長期、穩定、可控地管理「信任」。
只要這套架構做對,後續你在推:
- HTTPS 全面化
- Reverse Proxy
- Docker / K8s
- mTLS / Zero Trust
都會變得「自然且不痛苦」。