常见的OpenSSL命令参考

更新时间:2025-10-10 来源:TopSSL 作者:TopSSL

OpenSSL命令大全:SSL证书申请、查看、转换和排错完整指南

OpenSSL是通用的 SSL 工具之一,它是 SSL 协议的开源实现,不想使用 OpenSSL,您可以使用我们的SSL 书工具完成许多相同的操作。本文我们列出了最常见 OpenSSL 命令及其用法供您参考!

常见的OpenSSL命令参考

OpenSSL是什么?

OpenSSL是一款开源密码工具集,广泛用于SSL/TLS证书管理、密钥生成、CSR申请文件创建以及HTTPS故障排查。

在SSL证书部署过程中,OpenSSL常用于:

  • 生成私钥(Private Key)
  • 创建CSR证书请求文件
  • 查看SSL证书详细信息
  • 验证证书链是否完整
  • 检查证书与私钥是否匹配
  • 转换证书格式(PEM、PFX、DER等)
  • 排查HTTPS连接错误

虽然行业习惯仍称“SSL证书”,但当前网站HTTPS通信实际基于TLS协议,OpenSSL主要用于TLS证书相关管理操作。


一、OpenSSL安装方法

OpenSSL支持Windows、Linux、macOS等操作系统。

Linux系统通常默认安装:

openssl version

查看版本:

OpenSSL 3.0.0

如果未安装:

Ubuntu:

apt install openssl

CentOS:

yum install openssl

Windows用户可以安装OpenSSL Windows版本,也可以使用在线SSL证书工具完成部分操作。


二、使用OpenSSL生成SSL证书申请文件(CSR)

申请商业SSL证书时,通常需要提交CSR文件。

CSR中包含:

  • 域名信息
  • 企业信息
  • 公钥信息

私钥不会提交给CA机构,需要由申请方自行保存。

1. 生成私钥和CSR文件

openssl req \
-new \
-newkey rsa:2048 \
-nodes \
-keyout private.key \
-out request.csr

生成:

private.key  私钥文件
request.csr  证书申请文件

申请SSL证书时,将CSR提交给CA即可。


2. 使用已有私钥生成CSR

如果服务器已经存在私钥:

openssl req \
-new \
-key private.key \
-out request.csr

适用于:

  • SSL证书续费
  • 更换CA机构
  • 重新申请证书

三、使用OpenSSL查看SSL证书信息

部署证书前,经常需要确认:

  • 域名是否正确
  • 有效期是否正常
  • 签发机构是谁
  • 是否包含SAN多域名

查看证书详细信息

openssl x509 \
-in certificate.crt \
-text \
-noout

可以查看:

  • Subject(证书主体)
  • Issuer(颁发机构)
  • Validity(有效期)
  • SAN域名列表
  • 公钥算法

查看证书有效期

openssl x509 \
-in certificate.crt \
-noout \
-dates

输出:

notBefore=Jun 01 00:00:00 2026 GMT

notAfter=Jun 01 23:59:59 2027 GMT

可用于检查SSL证书是否过期。


查看证书绑定域名

openssl x509 \
-in certificate.crt \
-text \
-noout | grep DNS

检查:

是否包含在证书SAN列表中。


四、检查SSL证书链是否完整

很多HTTPS错误并不是证书过期,而是:

中间证书未正确安装。

检查服务器证书链:

openssl s_client \
-connect example.com:443 \
-servername example.com

正常情况下会显示:

Certificate chain

0 网站证书

1 中间CA证书

2 根CA证书

如果缺少中间证书,部分浏览器可能提示:


五、检查SSL证书和私钥是否匹配

SSL证书必须与生成CSR时的私钥对应。

如果证书和私钥不匹配,服务器无法启动HTTPS。

查看证书公钥:

openssl x509 \
-noout \
-modulus \
-in certificate.crt | openssl md5

查看私钥:

openssl rsa \
-noout \
-modulus \
-in private.key | openssl md5

两个结果一致:

说明:

✅ SSL证书和私钥匹配

不一致:

说明:

❌ 使用了错误私钥


六、OpenSSL转换SSL证书格式

不同服务器需要不同证书格式

常见格式:

格式常用服务器
PEMApache、Nginx
PFX/P12IIS、Windows服务器
JKSJava Tomcat
DER部分Windows环境

DER转换PEM

openssl x509 \
-in certificate.der \
-inform der \
-out certificate.pem

PEM转换DER

openssl x509 \
-in certificate.pem \
-outform der \
-out certificate.der

PEM转换PFX

IIS服务器通常需要PFX格式:

openssl pkcs12 \
-export \
-out certificate.pfx \
-inkey private.key \
-in certificate.crt \
-certfile ca_bundle.crt

生成:

certificate.pfx

可直接导入:

Windows IIS


七、创建自签名SSL证书

测试环境可以使用自签名证书:

openssl req \
-x509 \
-sha256 \
-nodes \
-days 365 \
-newkey rsa:2048 \
-keyout private.key \
-out certificate.crt

适合:

  • 内网测试
  • 开发环境
  • 实验环境

不适合:

  • 企业官网
  • 商业网站
  • 面向用户的网站

因为浏览器不会默认信任自签名证书。


八、使用OpenSSL排查HTTPS错误

查看服务器TLS连接

openssl s_client \
-connect example.com:443 \
-servername example.com

可以检查:

  • TLS版本
  • 证书链
  • 加密算法
  • 握手状态

常用于排查:

  • SSL握手失败
  • TLS协议错误
  • 证书链异常

OpenSSL常见使用场景总结

需求命令
生成CSRopenssl req
生成私钥openssl genrsa
查看证书openssl x509
查看有效期openssl x509 -dates
检查证书链openssl s_client
检查私钥匹配openssl modulus
转换PFXopenssl pkcs12
生成测试证书openssl req -x509

常见问题

OpenSSL和SSL证书是什么关系?

OpenSSL不是SSL证书,而是管理SSL/TLS证书的工具。

SSL证书由CA机构签发,OpenSSL用于:

  • 创建申请文件
  • 查看证书
  • 验证配置
  • 排查问题

为什么服务器安装证书后仍然提示不安全?

常见原因:

  • 证书链不完整
  • 域名不匹配
  • SSL证书过期
  • HTTPS页面存在混合内容
  • 服务器未正确绑定证书

可以使用SSL检测工具检查:→ SSL证书检查工具


OpenSSL可以申请免费SSL证书吗?

OpenSSL只能生成CSR和管理密钥,不能签发公网可信证书。

免费SSL证书需要通过CA机构申请,例如:

  • Let's Encrypt
  • Sectigo
  • sslTrus

总结

OpenSSL是SSL/TLS证书部署过程中最重要的命令工具之一。

无论是申请SSL证书、检查证书信息、转换证书格式,还是排查HTTPS连接问题,OpenSSL都是运维人员必须掌握的基础工具。

对于普通网站用户,可以使用在线SSL证书工具完成检测;对于企业服务器、云平台和大型系统,建议结合OpenSSL命令进行自动化证书管理。

如果您刚开始部署HTTPS,可以先了解什么是SSL证书以及SSL证书类型有哪些,根据网站规模选择适合的DV、OV或EV SSL证书。如果预算有限,也可以先申请免费SSL证书用于测试或个人网站;正式上线后,再按照SSL证书安装教程完成部署,并将网站从HTTP升级到HTTPS。如果浏览器仍提示SSL证书验证失败,可继续参考SSL证书错误修复专题,对照不同错误代码逐项排查,一般都能快速定位并解决问题。

有用
分享
无用
反馈
返回顶部
0 个回答
1468 次浏览
立即探索,帮您快速寻找适合您的SSL数字证书 申请SSL证书
免费SSL证书 - SSL证书申请与HTTPS加密平台 | TopSSL
提供免费与付费SSL证书申请
关注 TopSSL 公众号, RSS订阅SSL资讯与技术支持

2004-2026 © 北京传诚信  版权所有 | TopSSL 提供免费SSL证书申请、HTTPS加密部署及企业级SSL证书服务,支持网站安全连接、数字证书安装与浏览器信任验证。  北京市朝阳区鹏景阁大厦16层

技术协助:wo@topssl.cn 企业咨询:vip@topssl.cn