2025-05-21 20:56:49
766

如何通过根证书为域名生成自签名SSL证书?

摘要
本文详细讲解如何通过OpenSSL工具创建根证书,并基于根证书为域名生成自签名SSL证书,包含完整的命令步骤、目录导航和技术要点,适用于内网HTTPS服务部署。...

通过根证书为域名生成自签名SSL证书指南

一、环境与工具准备

需安装OpenSSL工具并创建以下目录结构:

如何通过根证书为域名生成自签名SSL证书?

mkdir -p ssl_cert/{ca,domain}
cd ssl_cert

根证书与域名证书应分别存储在cadomain目录中,避免文件混淆。

二、生成根证书

  1. 生成根证书私钥:
    openssl genrsa -des3 -out ca/rootCA.key 2048
  2. 创建自签名根证书(有效期20年):
    openssl req -x509 -new -nodes -key ca/rootCA.key -sha256 -days 7300 -out ca/rootCA.crt
    需填写Common Name字段(如”My Root CA”)。

三、创建域名证书

生成域名证书需完成以下步骤:

  • 生成域名私钥:openssl genrsa -out domain/server.key 2048
  • 创建CSR文件:openssl req -new -key domain/server.key -out domain/server.csr
    需确保Common Name与目标域名完全一致
  • 使用根证书签名:
    openssl x509 -req -in domain/server.csr -CA ca/rootCA.crt -CAkey ca/rootCA.key -CAcreateserial -out domain/server.crt -days 3650 -extfile domain/ext.cnf
    需在ext.cnf中定义subjectAltName=DNS:example.com以支持现代浏览器

四、部署与验证

server.keyserver.crt配置到Web服务器(如Nginx),并将rootCA.crt导入操作系统受信任根证书颁发机构。访问域名时需确认:

验证指标
项目 预期结果
浏览器地址栏 显示HTTPS锁标识
证书详情 显示完整证书链

若出现警告,需检查subjectAltName配置或证书链完整性。

通过根证书签发域名证书可实现内网HTTPS服务的安全通信,但需注意自签名证书存在浏览器兼容性风险,建议生产环境使用权威CA证书。

声明:文章不代表云主机测评网观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险自担!转载请注明出处!侵权必究!
回顶部