一、自签名证书基础概念
TLS协议通过数字证书实现身份认证和数据加密,自签名证书体系包含三个核心组件:
- 根证书:信任链的起点,自签名且独立存在
- 中间证书:可选层级,用于隔离根证书与终端证书
- 服务器证书:终端实体证书,绑定具体域名/IP地址
二、生成自签名根证书
使用OpenSSL生成根证书的标准流程:
- 生成4096位RSA私钥
openssl genpkey -algorithm RSA -out root.key -pkeyopt rsa_keygen_bits:4096
- 创建证书签名请求(CSR)
openssl req -new -key root.key -out root.csr
- 自签名生成根证书
openssl x509 -req -days 3650 -in root.csr -signkey root.key -out root.crt
三、签发服务器证书
基于根证书签发服务器证书的完整步骤:
步骤 | 命令示例 |
---|---|
生成服务器私钥 | openssl genrsa -out server.key 2048 |
创建CSR文件 | openssl req -new -key server.key -out server.csr |
签署证书 | openssl x509 -req -in server.csr -CA root.crt -CAkey root.key -CAcreateserial -out server.crt -days 365 |
需在CSR生成阶段正确填写Common Name字段,建议包含SAN扩展以支持多域名
四、技术选型建议
- 密钥算法:优先选择ECDSA(P-256)替代RSA,兼顾性能与安全性
- 有效期设置:根证书建议10年,服务器证书不超过1年
- 密码保护:根证书私钥必须加密存储,服务器私钥可移除密码
五、证书验证与部署
完成签发后需执行:
- 验证证书链完整性
openssl verify -CAfile root.crt server.crt
- 检查证书详细信息
openssl x509 -in server.crt -text -noout
- 配置Web服务器(Nginx示例):
ssl_certificate /path/server.crt;
ssl_certificate_key /path/server.key;
自签名证书体系适用于测试环境与内部系统,但需注意浏览器不信任自签根证书的警告。生产环境建议采用权威CA签发证书,或通过企业级PKI体系管理证书生命周期
本文由阿里云优惠网发布。发布者:编辑员。禁止采集与转载行为,违者必究。出处:https://aliyunyh.com/456187.html
其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。