OpenSSL生成一个自签名的泛域名证书 并且给Windows使用

技术文章9个月前更新 gyx131
83 0 0

OpenSSL生成一个自签名的泛域名证书,遵循以下简明步骤:

  1. 生成私钥: 执行以下命令创建一个2048位的RSA私钥文件(以yyyy.com.key为例):
#bash
   openssl genrsa -out yyyy.com.key 2048
  1. 生成证书签名请求 (CSR): 使用刚才创建的私钥来生成CSR,并确保在Common Name字段中指定泛域名(如*.yyyy.com):
#bash
   openssl req -new -key yyyy.com.key -out yyyy.com.csr

当提示输入信息时,确保将Common Name (e.g., server FQDN or YOUR name)设置为*.yyyy.com

  1. 生成自签名证书: 利用CSR和私钥创建一个有效期为365天的自签名证书:
#bash
   openssl x509 -req -days 365 -in yyyy.com.csr -signkey yyyy.com.key -out yyyy.com.crt
  1. (可选)配置扩展以明确泛域名和其他选项: 如果需要更详细的配置,比如指定证书扩展,可以这样做:
#bash
   openssl req -new -key yyyy.com.key -out yyyy.com.csr -subj "/CN=*.yyyy.com"
   openssl x509 -req -days 365 -in yyyy.com.csr -signkey yyyy.com.key -out yyyy.com.crt -extensions v3_req -extfile <(echo "[v3_req] basicConstraints=CA:FALSE,pathlen:0 keyUsage=keyEncipherment,dataEncipherment extendedKeyUsage=serverAuth subjectAltName=@alt_names"; echo "[alt_names] DNS.1=*.yyyy.com")
   
  1. 验证证书: 检查生成的证书是否包含了正确的泛域名信息:
#bash
   openssl x509 -in yyyy.com.crt -text -noout

注意:自签名证书在正式环境中可能不被浏览器信任,因为它们没有由权威的证书颁发机构(CA)签署。这类证书更适合于本地测试或内部网络使用。对于公开互联网上的部署,请通过受信任的CA获取证书,例如使用Let’s Encrypt服务申请免费的泛域名证书。

将自签名的泛域名证书应用到Windows系统上,以便用于HTTPS服务(如本地Web服务器),主要涉及以下几个步骤:

1. 安装证书到受信任的根证书颁发机构存储区

这一步是为了让Windows系统信任您的自签名证书。

  1. 导出证书: 首先,您需要将生成的.crt证书转换为Windows可识别的格式(通常是.pfx.p12),并包括私钥。这可以通过以下命令完成:
#bash
   openssl pkcs12 -export -out yyyy.com.pfx -inkey yyyy.com.key -in yyyy.com.crt -certfile ca.crt
   

注意:这里的ca.crt是可选的,如果您没有单独的CA证书文件,可以忽略此参数。

  1. 导入证书到“受信任的根证书颁发机构”存储区:
    • 打开“开始菜单” > “运行”,输入mmc,点击确定打开Microsoft管理控制台。
    • 在MMC中,点击“文件” > “添加/删除管理单元”。
    • 在弹出的窗口中选择“证书”,点击“添加” > “我的用户账户” > “完成” > “确定”。
    • 展开左侧的“证书 – 当前用户”,找到并点击“受信任的根证书颁发机构”。
    • 右键点击“证书”,选择“所有任务” > “导入”。
    • 按照向导指示,浏览并选择之前导出的.pfx文件,完成证书的导入过程。

2. 配置IIS或其他Web服务器使用证书

这里以IIS(Internet Information Services)为例:

  1. 打开IIS管理器: 打开“开始菜单” > 搜索“IIS管理器”并启动。
  2. 绑定SSL证书:
    • 导航到您的网站,在左侧栏中选择需要配置SSL的站点。
    • 右键点击站点名称,选择“编辑绑定”。
    • 在弹出的窗口中点击“添加”,选择类型为“https”,IP地址和端口根据需要设置。
    • 在“SSL证书”下拉菜单中,选择您刚才导入的自签名证书(例如yyyy.com)。
    • 确定后关闭所有窗口。

 

© 版权声明

相关文章

暂无评论

暂无评论...