| name | configuring-certificate-authority-with-openssl |
| description | 证书颁发机构(CA)是 PKI 层次结构中的信任锚,负责颁发、签署和吊销数字证书。本技能涵盖使用 OpenSSL 构建两层 CA 层次结构(根 CA + 中间 CA)。 |
| domain | cybersecurity |
| subdomain | cryptography |
| tags | ["cryptography","pki","certificate-authority","openssl","x509"] |
| version | 1.0 |
| author | mahipal |
| license | Apache-2.0 |
使用 OpenSSL 配置证书颁发机构
概述
证书颁发机构(CA)是公钥基础设施(PKI)层次结构中的信任锚,负责颁发、签署和吊销数字证书。本技能涵盖使用 OpenSSL 和 Python cryptography 库构建两层 CA 层次结构(根 CA + 中间 CA),包括证书吊销列表(CRL)分发、OCSP 响应服务器配置和证书策略管理。
目标
- 创建带自签名证书的根 CA
- 创建由根 CA 签署的中间 CA
- 从中间 CA 颁发服务器和客户端证书
- 配置证书吊销列表(CRL)
- 实施证书策略和约束
- 以编程方式构建完整的 PKI 层次结构
核心概念
CA 层次结构
根 CA(离线,气隙隔离)
|
+-- 中间 CA(在线,运营中)
|
+-- 服务器证书
+-- 客户端证书
+-- 代码签名证书
证书扩展
| 扩展 | 用途 | 关键性 |
|---|
| basicConstraints | CA:TRUE/FALSE,路径长度约束 | 是 |
| keyUsage | keyCertSign、cRLSign、digitalSignature | 是 |
| extendedKeyUsage | serverAuth、clientAuth、codeSigning | 否 |
| subjectKeyIdentifier | 公钥哈希 | 否 |
| authorityKeyIdentifier | 颁发者密钥标识符 | 否 |
| crlDistributionPoints | CRL 的 URL | 否 |
| authorityInfoAccess | OCSP 响应服务器 URL | 否 |
安全注意事项
- 根 CA 私钥必须离线存储(气隙隔离的 HSM)
- CA 密钥使用最少 4096 位 RSA 或 P-384 ECDSA
- 在中间 CA 上设置路径长度约束
- 实施证书策略(OID)
- 启用 CRL 和 OCSP 进行吊销检查
- 审计所有证书颁发操作
验证标准