You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何生成由独立CA签发的非自签名测试证书及对应CA证书

私有CA签发证书相关问题答复

1 标准同义术语

你描述的这类证书对的标准名称为:私有根CA + 私有CA签发的终端实体证书。
和公网运营的可信CA签发的公网信任证书不同,这类证书仅在你主动将私有根CA导入设备/浏览器的信任根列表后,才会被识别为合法证书,不会触发安全告警。

2 生成操作步骤(基于OpenSSL工具,Windows/macOS/Linux均支持)

所有操作均在命令行执行:

步骤1:生成独立的自签名私有根CA证书

  • 生成CA私钥文件:
    openssl genrsa -out myTestRootCA.key 2048
  • 生成根CA自签名证书(示例有效期设为10年,可自行调整):
    openssl req -x509 -new -nodes -key myTestRootCA.key -sha256 -days 3650 -out myTestRootCA.crt
    执行时按提示填写信息即可,Common Name可填你自定义的CA名称,其余字段可留空。

步骤2:生成业务证书的密钥和签名请求(CSR)

  • 生成业务服务的私钥文件:
    openssl genrsa -out myBusinessCert.key 2048
  • 生成证书签名请求文件:
    openssl req -new -key myBusinessCert.key -out myBusinessCert.csr
    执行时Common Name必须填写你测试用的域名(比如local.test)或IP,其余字段可留空,挑战密码字段直接回车留空即可。

步骤3:用私有根CA签发业务证书

  • 先新建一个名为v3.ext的扩展配置文件,内容如下,避免缺少SAN扩展导致现代浏览器告警:

authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names
[alt_names]
DNS.1 = localhost

有其他测试域名/IP可按格式追加,比如:
DNS.2 = local.test
IP.1 = 192.168.3.4
  • 执行签发命令,生成业务证书(示例有效期1年):
    openssl x509 -req -in myBusinessCert.csr -CA myTestRootCA.crt -CAkey myTestRootCA.key -CAcreateserial -out myBusinessCert.crt -days 365 -sha256 -extfile v3.ext

生效说明

将生成的myTestRootCA.crt导入到你测试设备的受信任根证书颁发机构列表,或对应浏览器的受信任根证书存储区,之后使用myBusinessCert.crt和myBusinessCert.key部署的服务就不会触发浏览器安全告警。

内容的提问来源于stack exchange,提问作者someone324443

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 11:15:03