问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

OpenSSL生成SSL.CSR文件教程:从安装到实践

创作时间:
作者:
@小白创作中心

OpenSSL生成SSL.CSR文件教程:从安装到实践

引用
CSDN
9
来源
1.
https://wenku.csdn.net/answer/e23d30230a9a406fa21ceae3a9d2156a
2.
https://blog.csdn.net/weixin_44339850/article/details/139768045
3.
https://blog.csdn.net/chenhao0568/article/details/137881528
4.
https://blog.csdn.net/runbat/article/details/140323118
5.
https://www.cnblogs.com/zhangyouwu/p/18082552
6.
https://wiki.pha.pub/link/291?pk_vid=a135f271812e2bd5165277439229d85f
7.
https://support.enos-iot.com/docs/enos/zh_CN/2.1.0/security/x509_ca/creating_csr.html
8.
https://www.cnblogs.com/exmyth/p/18109696
9.
https://www.cnblogs.com/zhangmingcheng/p/18412749

在申请SSL/TLS证书时,证书签名请求(CSR)是必不可少的一步。它包含了公钥、域名信息、组织详情等数据,是向证书颁发机构(CA)申请数字证书的关键文件。本文将详细介绍如何使用OpenSSL自动生成SSL.CSR文件,包括OpenSSL的安装、CSR的生成步骤以及常见问题的解决方案。

01

OpenSSL安装指南

Linux系统

  1. 从OpenSSL官方网站下载最新版本的源码包:
    https://www.openssl.org/source/

  2. 解压缩下载的文件,并进入解压后的目录:

    tar -zxvf openssl-<version>.tar.gz
    cd openssl-<version>
    
  3. 配置并编译OpenSSL:

    ./config --prefix=/usr/local/openssl
    make
    make install
    
  4. 更新系统动态链接库缓存:

    echo "/usr/local/openssl/lib" > /etc/ld.so.conf.d/openssl.conf
    ldconfig
    
  5. 验证安装:

    openssl version
    

Windows系统

  1. 访问Shining Light Productions网站下载预编译的OpenSSL安装包:
    https://slproweb.com/products/Win32OpenSSL.html

  2. 选择适合的版本(推荐使用不带Light标志的完整版),下载后直接运行安装程序。

  3. 安装过程中请记住安装路径,默认为C:\Program Files\OpenSSL-Win64

  4. 安装完成后,需要将OpenSSL的bin目录添加到系统环境变量中。

  5. 验证安装:

    openssl version
    
02

生成CSR的具体步骤

  1. 创建一个配置文件(例如req.conf),用于指定证书的基本信息:

    [req]
    distinguished_name = req_distinguished_name
    req_extensions = v3_req
    prompt = no
    
    [req_distinguished_name]
    countryName = CN
    stateOrProvinceName = Beijing
    localityName = Beijing
    organizationName = Example Inc.
    organizationalUnitName = IT Department
    commonName = example.com
    emailAddress = admin@example.com
    
    [v3_req]
    subjectAltName = @alt_names
    
    [alt_names]
    DNS.1 = example.com
    DNS.2 = www.example.com
    
  2. 使用OpenSSL生成CSR文件。这里以ECDSA P384算法为例:

    openssl ecparam -name secp384r1 -out ecparam.pem
    openssl req -new -SHA256 -newkey ec:ecparam.pem -nodes -keyout private.key -out csr.csr -config req.conf
    

    如果选择RSA算法,可以使用以下命令:

    openssl req -new -SHA256 -newkey rsa:2048 -nodes -keyout private.key -out csr.csr -config req.conf
    
  3. 检查生成的CSR文件内容是否正确:

    openssl req -noout -text -in csr.csr
    
03

常见问题及解决方案

  1. OpenSSL命令无法识别

    • 确保OpenSSL已正确添加到系统环境变量中。
    • 尝试重启命令行或终端窗口。
  2. CSR生成时提示缺少参数

    • 确认配置文件(如req.conf)的路径是否正确。
    • 检查配置文件中的字段是否填写完整。
  3. Common Name重复

    • 如果是为已有设备或应用更新证书,确保CSR文件中的Common Name与旧证书保持一致。
    • 如果是新申请,确保Common Name与任何已有设备或应用的名称不重复。
  4. CSR内容检查

通过以上步骤,你就可以使用OpenSSL成功生成SSL证书签名请求(CSR)文件。这将帮助你向证书颁发机构申请SSL/TLS证书,从而保障网站通信的安全性。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号