上一篇
https证书认证
- 行业动态
- 2025-04-24
- 4369
HTTPS证书通过CA机构签发,验证服务器身份并加密传输,浏览器校验证书链及域名匹配性,分为DV/OV/EV三类,EV证书可显示绿色地址
HTTPS证书认证原理与流程
HTTPS(Hypertext Transfer Protocol Secure)通过SSL/TLS协议在客户端与服务器之间建立安全通信通道,核心流程如下:
客户端发起请求
浏览器向服务器发送https://
请求,要求建立安全连接。服务器返回证书
服务器将数字证书(包含公钥、域名、有效期等信息)发送给客户端。证书验证
客户端执行以下验证:- 签名验证:用根证书的公钥验证证书签名是否有效。
- 有效期检查:确认证书未过期或未生效。
- 域名匹配:检查证书中的域名是否与访问地址一致。
- 证书链验证:逐级验证证书颁发机构的可信性(如中间证书)。
密钥交换
验证通过后,客户端生成临时对称密钥(如AES),用服务器的公钥加密后发送给服务器,后续通信使用该对称密钥加密。
HTTPS证书类型对比
证书类型 | 验证方式 | 颁发速度 | 信任等级 | 适用场景 |
---|---|---|---|---|
DV SSL | 域名所有权验证 | 即时/小时级 | 低 | 个人博客、测试环境 |
OV SSL | 企业实名验证(组织信息) | 1-3天 | 中 | 企业官网、电商平台 |
EV SSL | 扩展验证(企业+法律实体) | 3-5天 | 高 | 金融、政府机构 |
证书申请与安装步骤
生成密钥与CSR(证书签名请求)
# 生成RSA私钥(2048位) openssl genpkey -algorithm RSA -out private.key -pkeyopt rsa_keygen_bits:2048 # 创建CSR(需填写域名、组织等信息) openssl req -new -key private.key -out request.csr
提交CSR并获取证书
- Let’s Encrypt:免费自动化颁发(需域名解析验证)。
- 付费CA:登录厂商控制台提交CSR,完成企业验证后下载证书文件。
配置服务器
服务器类型 | 配置文件路径 | 关键指令 |
---|---|---|
Apache | /etc/httpd/conf/httpd.conf | SSLEngine on , SSLCertificateFile |
Nginx | /etc/nginx/nginx.conf | ssl on; , ssl_certificate |
IIS | 证书管理器 | 导入.pfx 文件并绑定站点 |
常见问题与解答
问题1:HTTPS证书过期如何处理?
解答:
- 重新申请证书(需再次验证域名/企业信息)。
- 替换服务器上的旧证书文件。
- 配置自动续期工具(如
certbot renew
或ACME客户端)。
问题2:自签名证书与CA颁发证书的区别?
解答:
- 自签名证书:由自身生成,无第三方权威机构背书,浏览器会提示“不受信任”。
- CA颁发证书:由受信任的证书颁发机构(如DigiCert、Let’s Encrypt)签发,浏览器默认信任,适合公开网站