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

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

Linux下SSL证书生成详解从自签名到CA签发全流程

2025-08-29SSL证书704

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

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

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


在当今的互联网环境中,SSL/TLS 证书已成为保障数据传输安全的重要工具,无论是网站、API接口,还是企业内部通信,使用SSL证书可以有效防止数据被窃听和篡改,Linux系统作为服务器领域的主流操作系统,具备强大的网络安全功能,支持通过命令行工具轻松生成和管理SSL证书。

本文将详细介绍如何在Linux环境下生成SSL证书,涵盖从自签名证书到向CA机构申请证书的完整流程,帮助开发者和系统管理员快速掌握相关技能。


SSL证书简介

SSL(Secure Sockets Layer)是一种安全协议,用于在客户端和服务器之间建立加密链接,确保数据在网络中安全传输,TLS(Transport Layer Security)是SSL的继任协议,但在实际应用中,人们通常仍习惯性地称其为SSL证书。

SSL证书通常由权威证书颁发机构(CA)签发,具有公信力,但在测试环境或内部使用中,也可以使用自签名证书(Self-signed Certificate),虽然浏览器会提示证书不受信任,但其加密功能依然有效。


生成SSL证书的前提条件

在Linux系统中,生成SSL证书主要依赖于 OpenSSL 工具包,OpenSSL 是一个开源的密码库,支持各种加密算法、SSL/TLS 协议及证书管理功能。

大多数Linux发行版(如Ubuntu、CentOS、Debian等)默认已经安装了OpenSSL,可以通过以下命令检查是否安装:

openssl version

如果未安装,可以使用以下命令进行安装:

  • Ubuntu/Debian:
sudo apt update
sudo apt install openssl
  • CentOS/RHEL:
sudo yum install openssl

生成自签名SSL证书

自签名证书适用于测试环境、内部网络或非生产环境,以下是在Linux系统中生成自签名SSL证书的步骤。

生成私钥

首先生成一个私钥文件(server.key):

openssl genrsa -out server.key 2048

该命令生成一个2048位的RSA私钥,位数越高,安全性越强,但处理速度会稍慢。

生成证书签名请求(CSR)

CSR是向CA申请证书时使用的请求文件,包含服务器信息和公钥。

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

执行该命令后,系统会提示输入一些信息,包括:

  • 国家代码(Country Name)
  • 省份(State or Province Name)
  • 城市(Locality Name)
  • 组织名称(Organization Name)
  • 组织单位(Organizational Unit Name)
  • 公共名称(Common Name)——通常是域名,如 example.com
  • 电子邮件地址(Email Address)

注意:Common Name(CN)必须与你要保护的域名一致,否则浏览器会提示证书错误。

生成自签名证书

使用私钥和CSR生成自签名证书:

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

上述命令生成了一个有效期为365天的证书文件 server.crt。

你已经拥有一个完整的SSL证书对:server.key(私钥)和 server.crt(证书)。


生成用于多域名或通配符的SSL证书

如果你需要保护多个域名或子域名,可以生成多域名(SAN)证书或通配符证书。

创建配置文件(openssl.cnf)

为了生成多域名证书,需要创建一个配置文件,添加 SAN(Subject Alternative Name)字段:

[ req ]
default_bits        = 2048
distinguished_name  = req_distinguished_name
req_extensions      = req_ext
prompt              = no
[ req_distinguished_name ]
C  = CN
ST = Beijing
L  = Beijing
O  = Example Org
OU = IT
CN = example.com
[ req_ext ]
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = example.com
DNS.2 = www.example.com
DNS.3 = mail.example.com

保存为 openssl.cnf。

生成私钥和CSR

openssl req -new -keyout server.key -out server.csr -config openssl.cnf

生成自签名证书

openssl x509 -req -in server.csr -CAcreateserial -out server.crt -days 365 -sha256 -CA selfCA.crt -CAkey selfCA.key -extfile openssl.cnf -extensions req_ext

这样生成的证书就可以支持多个域名。


向CA申请正式SSL证书

在生产环境中,推荐使用由受信任CA签发的SSL证书,以下是向CA申请证书的基本流程:

生成CSR和私钥

如上文所述,使用以下命令生成CSR和私钥:

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

将 server.csr 文件内容提交给CA机构。

提交CSR并验证域名

根据CA的要求,将CSR提交到其平台,并完成域名验证(DV)、组织验证(OV)或扩展验证(EV)。

下载并安装证书

CA审核通过后,会提供一个证书文件(通常为.crt格式)和中间证书链文件,将它们与私钥一起配置到Web服务器(如Nginx、Apache)中即可。

在Nginx中配置:

server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/server.crt;
    ssl_certificate_key /path/to/server.key;
    ssl_trusted_certificate /path/to/intermediate.crt;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
}

证书管理与更新

SSL证书通常有固定有效期(如1年或2年),到期后需重新申请或更新。

查看证书有效期

openssl x509 -in server.crt -text -noout

在输出中可以找到 Not Before 和 Not After 字段,表示证书的有效期。

自动化证书更新(推荐使用Let’s Encrypt)

Let’s Encrypt 是一个免费、自动化、开放的证书颁发机构,可以使用 Certbot 工具自动申请和更新证书。

安装Certbot(以Ubuntu为例):

sudo apt install certbot python3-certbot-nginx

申请证书:

sudo certbot --nginx -d example.com -d www.example.com

Certbot 会自动配置Nginx并设置自动续期任务(通过cron或systemd timer)。


在Linux系统中生成和管理SSL证书是一个基础但非常重要的技能,无论是用于测试环境的自签名证书,还是用于生产环境的CA签发证书,掌握相关命令和流程都能显著提升服务器的安全性和稳定性。

本文详细介绍了从私钥生成、CSR创建、自签名证书生成,到向CA申请正式证书的全过程,并提供了多域名证书和自动化证书管理的解决方案,希望读者通过本文能够全面掌握Linux下SSL证书的生成与应用方法,为构建更安全的网络环境打下坚实基础。

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

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

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

分享给朋友:

“Linux下SSL证书生成详解从自签名到CA签发全流程” 的相关文章

全球影响力,让您的网站闪耀光芒

我们的公司致力于在全球范围内推广我们的产品和服务。我们通过各种渠道进行宣传和推广,包括社交媒体、搜索引擎优化和合作伙伴关系等。我们也在不断努力提高我们的产品质量和服务水平,以确保我们的客户满意度不断提高。我们相信,只要我们坚持不懈地努力,我们的网站就会在全球范围内闪耀光芒。境外服务器搭建指南:让你的...

笔记本电脑综合评分,性价比、性能稳定性及售后服务全面分析

在选购电脑时,性价比、性能稳定性以及售后服务是三大关键因素。性价比通常与产品的价格和功能配置相关,选择一款既能满足基本需求又不超预算的产品至关重要。稳定的性能是用户长期使用的重要保障。良好的售后服务能及时解决使用过程中遇到的问题,提升用户的满意度和信任度。在购买电脑时,应全面考虑这些因素,并结合自己...

服务器租用成本分析,性价比与服务选择

当前云计算市场,不同云服务提供商在服务器租用价格上表现出显著差异。企业级客户会倾向于选择更经济实惠、功能强大的云服务商,以降低运营成本。这也取决于具体的需求和使用场景。对于初创企业和中小型企业而言,可能需要考虑更高的性价比来满足他们的预算要求。随着市场竞争加剧,一些云服务提供商可能会采取降价策略来吸...

阿里云首推秒杀式服务器租赁价格

全球首款秒杀式阿里云服务器租用价格正式发布,用户只需支付几元即可获取服务器,为用户提供快速便捷的服务。随着互联网的发展,云计算已经成为一种重要的基础设施,而阿里云作为国内最大的云计算服务提供商,其在提供云计算服务的同时,也推出了许多优惠政策和创新产品,阿里云服务器租用价格的创新模式,吸引了众多用户的...

境外服务器租用性价比高

性价比高的境外服务器租用服务,让您的业务更加便捷。前言随着互联网的发展,越来越多的人开始利用网络资源进行各种活动,如何选择一个合适的服务器来满足自己的需求也是一个重要的问题,而一些国外的云服务提供商(如AWS、Azure、Google Cloud等)提供了一种便捷的方式来租用服务器,这种服务通常比国...

如何计算租用服务器一年的费用

租用服务器一年的费用包括基础网络、操作系统安装、软件配置等。具体费用取决于服务器的型号、性能和地理位置等因素,建议参考相关服务提供商的官方价格表进行估算。在当今数字化时代,服务器作为企业运行核心基础设施不可或缺,随着科技的发展和市场竞争的加剧,选择合适的服务器租赁方案变得尤为重要,本文将详细分析租用...