特网科技为您提供高速、稳定、安全、弹性的云计算服务计算、存储、监控、安全,完善的云产品满足您的一切所需,深耕云计算领域10余年;我们拥有前沿的核心技术,始终致力于为政府机构、企业组织和个人开发者提供稳定、安全、可靠、高性价比的云计算产品与服务。

当前位置:首页 > 行业资讯 > SSL证书 > 正文内容

详解SSL证书生成key和pem文件的全过程

2025-10-03SSL证书470

海外云服务器 40个地区可选            亚太云服务器 香港 日本 韩国

云虚拟主机 个人和企业网站的理想选择            俄罗斯电商外贸虚拟主机 赠送SSL证书

美国云虚拟主机 助力出海企业低成本上云             拨号云主机


在现代互联网通信中,保障数据传输的安全性至关重要,SSL(Secure Sockets Layer)证书作为实现 HTTPS 加密通信的核心技术之一,已被广泛应用于网站、API 接口以及各类网络服务中,通过 SSL 证书,客户端与服务器之间的通信内容得以加密,有效防止窃听、篡改和身份冒充等安全威胁。

在部署 SSL 证书的过程中,生成私钥(.key 文件)和证书文件(.pem 文件)是不可或缺的基础步骤,本文将详细介绍如何使用开源工具 OpenSSL 安全高效地生成这些关键文件,并深入解析其作用、格式及实际应用场景,帮助开发者和运维人员更好地理解并掌握 HTTPS 的底层机制。


.key 与 .pem 文件的含义与区别

我们需要明确 .key 和 .pem 文件分别代表什么。

  • .key 文件:这是服务器的私钥文件,通常采用 PEM 编码格式存储,私钥是整个加密体系中最敏感的部分,用于解密由公钥加密的数据,在 TLS 握手过程中起着决定性作用,私钥必须严格保密,不得泄露或公开。

  • .pem 文件:这是一种基于 Base64 编码的文本格式文件,扩展名为 .pem(Privacy Enhanced Mail),可包含多种类型的加密信息,如服务器证书、中间证书、根证书,甚至私钥本身,在 SSL/TLS 体系中,.pem 文件常用于存储完整的证书链,便于 Web 服务器统一加载和验证。

需要注意的是,虽然 .pem 可以封装私钥,但在生产环境中应避免将私钥与证书合并存储于同一文件,除非有明确的安全控制措施。


使用 OpenSSL 生成 SSL 证书文件的标准流程

OpenSSL 是一个功能强大且广泛应用的开源密码学工具包,支持多种加密算法和协议操作,以下是生成 SSL 所需 .key 和 .pem 文件的标准流程:

生成私钥(.key 文件)

打开终端或命令行工具,执行以下命令生成一个 2048 位的 RSA 私钥:

openssl genrsa -out server.key 2048

该命令会生成一个名为 server.key 的私钥文件,适用于大多数现代安全标准,若需更高安全性,推荐使用 4096 位长度:

openssl genrsa -out server.key 4096

为增强安全性,还可以为私钥添加密码保护(加密存储):

openssl genrsa -des3 -out server.key 2048

⚠️ 注意:添加密码后,每次启动 Web 服务器时都需要手动输入密码,可能影响自动化服务运行,生产环境通常选择不加密私钥,但必须确保其文件权限设置严格(如 chmod 600 server.key)。

生成证书签名请求(CSR)

使用上一步生成的私钥创建 CSR(Certificate Signing Request),以便提交给证书颁发机构(CA)进行正式签发:

openssl req -new -key server.key -out server.csr

执行过程中系统会提示输入以下信息:

  • Country Name (国家)
  • State or Province (省份)
  • Locality Name (城市)
  • Organization Name (组织/公司名称)
  • Organizational Unit (部门)
  • Common Name (通用名,即域名,如 example.com)
  • Email Address

“Common Name” 必须与目标域名完全一致,如果是通配符证书,则填写为 *.example.com。

此命令生成的 server.csr 文件可以提交给 Let's Encrypt、DigiCert、Sectigo 等受信任的 CA 机构,用于申请正式 SSL 证书。

生成自签名证书(.pem 文件)

对于测试环境、内部系统或开发用途,可以生成自签名证书,无需依赖第三方 CA:

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.pem

该命令将基于 CSR 和私钥生成一个有效期为 365 天的 X.509 格式证书,输出为 server.pem 文件,该文件即可作为服务器证书部署到 Nginx、Apache、Tomcat 等 Web 服务中。

✅ 提示:自签名证书不会被浏览器默认信任,访问时会出现安全警告,仅适用于非公网场景。

验证生成的文件完整性

为确保生成的私钥和证书正确无误,可通过以下命令查看内容并校验有效性:

# 查看证书详细信息
openssl x509 -in server.pem -text -noout

上述命令将输出证书的版本、序列号、签名算法、有效期、公钥信息及扩展字段等内容,帮助确认配置准确性。


生产环境中的最佳实践

在真实生产环境中,不应使用自签名证书,而应向权威 CA 申请正式证书,常见做法如下:

  1. 将 server.csr 提交给 CA(如通过 Let's Encrypt 的 ACME 协议自动签发);
  2. 获取签发后的服务器证书(通常为 .crt 或 .pem 格式);
  3. 下载对应的中间证书(Intermediate Certificate),并将其与服务器证书合并成完整的证书链文件(.pem):
cat server.crt intermediate.crt root.crt > fullchain.pem

在 Web 服务器配置中同时指定私钥和完整证书链:

ssl_certificate     /path/to/fullchain.pem;
ssl_certificate_key /path/to/server.key;

这样可以确保客户端能够完整验证证书路径,避免出现“证书不可信”的错误。


补充说明:PEM 格式的灵活性与兼容性

.pem 文件因其可读性强、结构清晰、易于拼接而在 Linux 环境中广受欢迎,它本质上是以 ASCII 文本形式封装的 DER 编码数据,开头通常为:

-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----

不同,也可能包含:

  • -----BEGIN PRIVATE KEY----- (PKCS#8 私钥)
  • -----BEGIN RSA PRIVATE KEY----- (传统 RSA 私钥)
  • -----BEGIN CERTIFICATE REQUEST----- (CSR)

正因为这种标准化格式,.pem 被广泛用于 Apache、Nginx、Node.js、Python Flask/Tornado 等各类服务框架中。


生成 SSL 证书所需的 .key 和 .pem 文件,是构建 HTTPS 安全通信的基石,通过 OpenSSL 工具,我们可以轻松完成私钥生成、CSR 创建和证书签发等核心操作,无论是用于开发调试还是正式上线,掌握这一流程都具有重要意义。

关键要点回顾:

  • 私钥(.key)必须严格保密,禁止泄露;
  • .pem 文件可用于存储证书、公钥或证书链;
  • 生产环境应使用 CA 签发的正式证书,而非自签名;
  • 合理配置证书链,确保客户端信任链完整;
  • 定期更新证书,建议启用自动化续期机制(如 Certbot)。

只有在每一个环节都做到严谨规范,才能真正实现端到端的数据加密与身份可信,为用户提供安全可靠的网络体验。

扫描二维码推送至手机访问。

版权声明:本文由特网科技发布,如需转载请注明出处。

本文链接:https://www.56dr.com/mation/79956.html

分享给朋友:

“详解SSL证书生成key和pem文件的全过程” 的相关文章

探索我的世界的世界!

《我的世界》是一款由Minecraft制作的游戏,它是一个基于沙盒概念的虚拟游戏世界。玩家可以在一个由方块组成的环境中自由探索、建造和生存。通过简单的指令和工具,玩家可以创建各种建筑、植物和生物,与其他人互动,并解决各种谜题和挑战。《我的世界》以其丰富的内容、高度可玩性和社区支持而闻名。在快节奏的现...

腾讯服务器租赁费用,综合成本与优化建议

腾讯云提供了多种服务器租赁方案,包括按量计费和预付费等多种方式。具体费用计算需要根据不同的规格、使用时间以及地域等因素进行综合考虑。在选择服务器时,用户需要注意服务器的性能、稳定性、安全性和价格等多方面因素。随着互联网的飞速发展,企业对服务器的需求日益增长,腾讯云作为国内领先的云计算服务商,为用户提...

服务器租用费用一年大概多少钱?

服务器租用费用通常按月计算。如果你使用的是阿里云等大型云计算平台,每月的费用可能会有所不同,具体取决于你的需求和选择的服务包。建议在购买前查看详细的报价表或联系客服获取准确的价格信息。随着科技的快速发展和互联网的普及,服务器租赁已成为许多企业获取计算资源的重要方式,关于服务器租用费用的一年价格,不同...

轻松构建你的在线平台

轻松构建你的在线平台是一个涉及多个步骤的过程。你需要确定你的目标用户群体和业务需求。你可以使用各种在线工具和技术来创建一个功能齐全、易于使用的平台。你还需要确保你的平台符合相关法律法规,并且能够持续发展和完善。你可能需要考虑如何吸引和留住用户的注意力,以及如何提高平台的转化率。在当今数字化时代,拥有...

跨境电商新机遇,开启跨境业务的翅膀

随着全球化的深入发展,跨境电商已成为推动经济发展、促进贸易繁荣的重要途径。它通过线上平台将世界各地的商品和服务连接起来,为消费者提供了便捷的选择和多样化的购物体验。跨境电商的发展不仅提高了国际贸易效率,也促进了当地经济的转型升级。随着互联网的发展和科技的进步,越来越多的企业开始将目光投向全球市场,而...

如何在Linux上搭建一个独立的云服务器

在阿里云平台上搭建独享节点是一种灵活且高效的方式,适合需要高性能和独立计算资源的用户。登录阿里云控制台,进入“云服务器”服务。选择“购买实例”,并按照页面提示填写相关信息,如操作系统、配置(如CPU核心数、内存大小)、网络带宽等。选择“独享节点”作为实例规格,并确认所有设置无误后提交订单。等待您的订...