OpenSSL 生成根证书、中间证书和网站证书

OpenSSL 生成根证书、中间证书和网站证书

一、生成根证书(ChinaRootCA)

  1. 创建私钥:

    复制代码
    openssl genrsa -out ChinaRootCA.key 2048
  2. 创建根证书的证书签名请求(CSR):

    复制代码
    openssl req -new -key ChinaRootCA.key -out ChinaRootCA.csr

    在这个过程中,需要根据提示输入国家、地区、组织名称等信息,例如国家填"CN",地区填"Beijing"等,组织名称可自定义为"China Root CA Organization"等。

  3. 自签名生成根证书:

    复制代码
    openssl x509 -req -in ChinaRootCA.csr -signkey ChinaRootCA.key -out ChinaRootCA.crt -days 3650

二、生成中间 CA(GuangDongCA)

  1. 创建私钥:

    复制代码
    openssl genrsa -out GuangDongCA.key 2048
  2. 创建证书签名请求:

    复制代码
    openssl req -new -key GuangDongCA.key -out GuangDongCA.csr

    同样输入相应信息,组织名称可填"Guangdong Intermediate CA Organization"等。

  3. 使用根证书签名生成中间 CA 证书:

    复制代码
    openssl x509 -req -in GuangDongCA.csr -CA ChinaRootCA.crt -CAkey ChinaRootCA.key -CAcreateserial -out GuangDongCA.crt -days 3650

三、生成网站证书(gdzwfw)

  1. 创建私钥:

    复制代码
    openssl genrsa -out gdzwfw.key 2048
  2. 创建证书签名请求并添加域名信息:

    复制代码
    openssl req -new -key gdzwfw.key -out gdzwfw.csr -subj "/CN=www.gdzwfw.gov.cn" -reqexts v3_req

    在创建请求时,可以添加 -reqexts v3_req 参数来启用扩展,以便后续添加多个域名。

  3. 创建配置文件(例如 gdzwfw.cnf)用于指定多个域名:

    复制代码
    [req]
    req_extensions = v3_req
    [v3_req]
    subjectAltName = @alt_names
    [alt_names]
    DNS.1 = www.gdzwfw.gov.cn
    DNS.2 = www.gd.gov.cn
    DNS.3 = tyrz.gd.gov.cn
  4. 使用中间 CA 签名生成网站证书:

    复制代码
    openssl x509 -req -in gdzwfw.csr -CA GuangDongCA.crt -CAkey GuangDongCA.key -CAcreateserial -out gdzwfw.crt -days 365 -extfile gdzwfw.cnf
相关推荐
XUEYUAN52124 天前
ASN 自治系统号风控:平台如何通过 IP 所属自治域批量识别代理流量
python·网络协议·http·网络安全·socks5
CHENKONG_CK4 天前
破解制鞋打磨痛点:RFID赋能去毛刺工序自动化升级
网络·单片机·嵌入式硬件·网络协议·tcp/ip
2501_916007474 天前
苹果商店iOS应用上架费用全面解析:开发者计划与审核费用计算
android·ios·小程序·https·uni-app·iphone·webview
Lsetea4 天前
证书没到期却报certificate has expired:OpenSSL定位中间证书与系统时间
运维·https·ssl证书·openssl·证书链
z落落4 天前
C#UDP+串口服务端+UDP 客户端(含 CRC16 校验)
网络·网络协议·udp
2501_916008894 天前
如何实现iOS App代码混淆:SwiftShield使用指南
android·ios·小程序·https·uni-app·iphone·webview
SDWAN_Cheap4 天前
HTTPS到底加密了什么?
https·数据加密
曼巴UE54 天前
UE5 客户端 需要的网络同步概念总结(3 )-事件同步 RPC 以及三种调用方式
网络·c++·网络协议·学习·rpc·ue5
开开心心就好4 天前
安卓手写文字生成工具,多种纸张一直免费
网络·网络协议·tcp/ip·leetcode·智能手机·电脑·模拟退火算法
2501_916008894 天前
怎么用 Godot 导出 iOS 应用并上架 App Store?签名字段该填什么?
android·ios·小程序·https·uni-app·iphone·webview