阿里云SSL证书全流程指南:从申请、下载到IIS/Nginx/Apache/Tomcat部署实战

简介: 本文系统讲解阿里云SSL证书从申请到部署的完整技术流程。首先介绍SSL/TLS基础概念与阿里云证书类型选型,包括免费DV证书、付费OV/EV证书的区别与适用场景。然后详细讲解个人测试证书与正式证书的申请流程,涵盖自动DNS验证与手动DNS验证两种方式。证书签发后,分别针对Nginx、Apache、Tomcat、IIS四大主流Web服务器,给出从证书下载、上传、配置到验证的完整操作步骤与代码示例。最后总结443端口开放、证书链完整性、配置文件路径等常见部署问题及解决方案,帮助读者一步到位完成HTTPS加密配置。

引言:为什么你的网站需要HTTPS

在当今互联网环境中,网站安全性已成为用户信任的基石。HTTP协议以明文方式传输数据,面临着信息泄露、内容篡改、中间人攻击等严重安全风险。主流浏览器会对未启用HTTPS的网站标记为“不安全”,直接影响用户访问意愿和搜索引擎排名。为Web服务器配置HTTPS证书,不仅能够加密数据传输、保障用户隐私安全,还能提升网站的专业形象和SEO权重。

SSL(Secure Sockets Layer)及其后继者TLS(Transport Layer Security)是一种加密协议,用于在客户端与服务器之间建立安全的通信通道。SSL证书由CA(证书颁发机构)签发,包含网站的公钥、域名信息、颁发机构及有效期等数据。当用户通过HTTPS访问网站时,浏览器会验证证书的合法性,并与服务器协商加密密钥,从而确保数据传输的机密性和完整性。

需要先登录阿里云控制台,点击:阿里云控制台

第一章:阿里云SSL证书类型与选型

阿里云数字证书管理服务(原SSL证书服务)提供多种类型的SSL证书,主要分为以下几类:

1.1 个人测试证书(免费版)

由DigiCert颁发,为DV(域名验证型)单域名证书。每个阿里云账号在一个自然年内可免费领取20张,有效期90天(3个月)。适合个人博客、开发测试环境等非生产场景。免费版SSL证书到期后不支持续费,需要重新申请。

1.2 个人测试证书(Pro)

付费版本,有效期12个月,提供更长的证书周期和更多的技术支撑。

1.3 正式证书

包括DV、OV(组织验证型)、EV(扩展验证型)等多种级别,支持单域名、多域名和通配符域名,有效期通常为1年。适用于企业官网、电商平台、金融系统等对安全要求较高的生产环境。

  • DV证书:仅验证域名所有权,签发速度快(1~15分钟),价格较低。
  • OV证书:需要验证企业真实性,证书中显示企业信息,签发时长约5个自然日。
  • EV证书:最高级别验证,提供最高信任度,签发时长约5个自然日。

对于大多数个人站长和中小企业,个人测试证书(免费版)已能满足基本的HTTPS加密需求。如需更长的有效期或更高的安全级别,可考虑购买付费证书。

第二章:申请SSL证书

2.1 准备工作

在申请SSL证书之前,需要完成以下准备工作:

  • 已完成阿里云账号的实名认证
  • 拥有一个已备案的域名(如服务器位于中国内地)
  • 域名已添加DNS解析记录,指向服务器的公网IP地址
  • 已在服务器安全组中放行443端口

2.2 申请个人测试证书(免费版)

步骤一:进入数字证书管理服务控制台

登录阿里云控制台,在顶部搜索框输入“SSL证书”或“数字证书管理服务”,进入证书管理页面。

步骤二:领取免费证书额度

在左侧导航栏选择“证书管理”>“SSL证书管理”,点击“个人测试证书(原免费证书)”页签,然后点击“立即购买”。在购买面板中保持默认选项,勾选服务协议后完成0元支付。

步骤三:创建证书并提交申请

在“个人测试证书”页签点击“创建证书”,填写以下信息:

  • 域名名称:输入需要绑定证书的域名,例如example.com。系统会自动包含www.example.com的SAN扩展
  • 域名验证方式:可选择“自动DNS验证”或“手动DNS验证”

自动DNS验证:如果当前阿里云账号与域名的云解析DNS服务在同一个账号下,系统会自动识别并完成DNS验证,只需等待证书签发即可。

手动DNS验证:如果域名DNS服务不在阿里云,需要在域名DNS解析服务商添加TXT解析记录,等待解析生效后完成验证。

2.3 申请正式证书

正式证书的申请流程与个人测试证书类似,但在购买环节需要选择对应的证书品牌、证书类型、域名数量和服务年限。购买完成后,在“正式证书”页签点击“创建证书”,填写域名信息和联系方式,提交审核后等待CA机构签发。

第三章:下载SSL证书

证书签发后,需要从阿里云控制台下载证书文件。不同服务器支持的SSL证书格式不同,数字证书管理服务提供适用于Nginx、Tomcat、Apache、IIS、JKS等主流服务器的证书压缩包,可直接下载使用,无需手动转换证书格式。

3.1 下载操作步骤

V2.0版本中购买的证书:在左侧导航栏选择“证书管理”>“SSL证书管理 V2.0”。

V1.0版本中购买的证书:选择“证书管理”>“SSL证书管理(V1.0停止新购)”。

在正式证书页签,选中需要下载的证书,在证书列表左下方单击下载。在弹出的对话框,根据服务器类型选择对应的证书格式,下载证书包并解压。如果列表中没有与服务器匹配的证书格式,可以先下载PEM格式的证书,再通过证书格式转换工具进行转换。

3.2 服务器类型与证书格式对照

下载证书时,对话框中提供以下证书类型供选择:

服务器类型 证书格式 解压后文件说明
Nginx PEM domain name.pem(证书文件)、domain name.key(私钥文件)
Apache CRT domain name_public.crt(证书文件)、domain name_chain.crt(证书链文件)、domain name.key(私钥文件)
Tomcat PFX/PKCS12 domain name.pfx(证书文件)、pfx-password.txt(密码文件)
IIS PFX/PKCS12 domain name.pfx(证书文件)、pfx-password.txt(密码文件)
JKS JKS domain name.jks(证书文件)、jks-password.txt(密码文件)

重要提示:每次下载证书时都会产生新的密码,该密码仅匹配本次下载的证书文件。如果申请证书时使用OpenSSL、Keytool等工具手动生成CSR文件,私钥文件仅保存在您本地,下载的证书压缩包中不包含私钥。如私钥遗失,证书将无法使用,需重新购买证书并生成CSR和私钥。

第四章:在Nginx服务器部署SSL证书

4.1 准备证书文件

进入SSL证书管理页面,在目标证书操作列单击“更多”进入证书详情页面,然后在下载页签中下载服务器类型为Nginx的证书。解压下载的证书压缩包,将证书文件(.pem)和私钥文件(.key)上传至服务器,并存放在一个安全的目录(如/etc/ssl/cert)。

4.2 配置Nginx

编辑Nginx配置文件(通常位于/etc/nginx/nginx.conf或/etc/nginx/conf.d/目录下),在server块中添加以下SSL配置:

server {
    listen 443 ssl http2;
    server_name example.com www.example.com;
    ssl_certificate /etc/ssl/cert/example.com.pem;
    ssl_certificate_key /etc/ssl/cert/example.com.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;
    root /var/www/html;
    index index.html index.htm;
}
server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://$server_name$request_uri;
}

4.3 验证配置并重启服务

# 测试Nginx配置是否正确
nginx -t
# 重启Nginx服务
systemctl restart nginx
# 或
service nginx restart

第五章:在Apache服务器部署SSL证书

5.1 准备证书文件

在SSL证书管理页面下载服务器类型为Apache的证书。解压后得到证书文件(_public.crt)、证书链文件(_chain.crt)和私钥文件(.key),上传至服务器安全目录。

5.2 配置Apache

确保Apache已加载mod_ssl模块,然后编辑SSL配置文件(通常位于/etc/httpd/conf.d/ssl.conf或/etc/apache2/sites-available/default-ssl.conf):

<VirtualHost *:443>
    ServerName example.com
    ServerAlias www.example.com
    SSLEngine on
    SSLCertificateFile /etc/ssl/cert/example.com_public.crt
    SSLCertificateKeyFile /etc/ssl/cert/example.com.key
    SSLCertificateChainFile /etc/ssl/cert/example.com_chain.crt
    DocumentRoot /var/www/html
</VirtualHost>

对于HTTP到HTTPS的强制跳转,可以在HTTP虚拟主机中添加:

<VirtualHost *:80>
    ServerName example.com
    Redirect permanent / https://example.com/
</VirtualHost>

5.3 验证配置并重启服务

# 测试Apache配置是否正确
apachectl configtest
# 重启Apache服务
systemctl restart httpd
# 或
systemctl restart apache2

第六章:在Tomcat服务器部署SSL证书

6.1 准备证书文件

在SSL证书管理页面下载服务器类型为Tomcat的证书。Tomcat支持JKS和PFX(PKCS12)两种格式。

  • JKS:Java专用的密钥库格式,适合主要在Java环境下使用。
  • PFX:通用格式,被Java及其他平台广泛支持,适合跨技术栈集成。

解压后得到证书文件(.pfx或.jks)和密码文件(.txt),上传至服务器安全目录。

6.2 配置Tomcat(PFX格式)

编辑Tomcat的server.xml文件(位于$CATALINA_HOME/conf/目录下),在Connector中添加SSL配置:

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true"
           scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS"
           keystoreFile="/etc/ssl/cert/example.com.pfx"
           keystoreType="PKCS12"
           keystorePass="证书密码" />

6.3 配置Tomcat(JKS格式)

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true"
           scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS"
           keystoreFile="/etc/ssl/cert/example.com.jks"
           keystoreType="JKS"
           keystorePass="证书密码" />

6.4 重启Tomcat

# 停止Tomcat
$CATALINA_HOME/bin/shutdown.sh
# 启动Tomcat
$CATALINA_HOME/bin/startup.sh

第七章:在IIS服务器部署SSL证书

7.1 准备证书文件

在SSL证书管理页面下载服务器类型为IIS的证书。解压后得到PFX格式证书文件和密码文件(.txt)。

7.2 导入证书到Windows证书存储

双击PFX证书文件,按照向导导入证书。在导入过程中需要输入证书密码(来自密码文件),并选择“将所有的证书放入下列存储”>“个人”。

7.3 在IIS管理器中绑定证书

  1. 打开IIS管理器
  2. 在左侧连接窗格中,选择需要绑定证书的站点
  3. 在右侧操作窗格中,点击“绑定”
  4. 点击“添加”,类型选择“https”,端口填写“443”
  5. 在SSL证书下拉列表中,选择刚才导入的证书
  6. 点击“确定”完成绑定

第八章:证书格式转换

如果下载的证书格式与服务器不匹配,可以使用阿里云数字证书管理服务提供的证书格式转换工具,支持PEM与PFX、PEM与JKS、PEM与PKCS8格式之间的转换。也可以使用OpenSSL命令行工具进行转换:

8.1 PEM转PFX

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

8.2 PEM转JKS

先将PEM转换为PKCS12,再从PKCS12导入JKS:

# PEM转PKCS12
openssl pkcs12 -export -out temp.p12 -inkey private.key -in certificate.crt -certfile chain.crt
# PKCS12转JKS
keytool -importkeystore -srckeystore temp.p12 -srcstoretype PKCS12 -destkeystore certificate.jks -deststoretype JKS

第九章:一键部署到云产品

对于阿里云ECS实例,如果已正确安装云助手(cloudAssistant),可以在控制台实现一键部署SSL证书。操作路径:数字证书管理服务控制台 > 部署和资源管理 > 云服务器部署 > 创建任务,按照引导完成证书部署。一键部署功能支持将证书部署到ECS可信实例、负载均衡(ALB)、内容分发网络(CDN)、Web应用防火墙(WAF)等云产品。

第十章:常见问题与排查

10.1 检查443端口是否放行

在服务器终端执行以下命令检测443端口的开放情况:

# RHEL/CentOS
sudo ss -tlnp | grep ':443'
# 或使用nc命令测试
nc -vz 服务器公网IP 443

如果443端口未开放,需要在ECS安全组入方向添加TCP 443端口规则。

10.2 检查证书与域名是否匹配

确保证书绑定的域名与网站访问的域名完全一致。通配符证书(*.example.com)仅对一级子域名生效,对根域名和多级子域名不生效。

10.3 检查证书链完整性

如果浏览器提示证书链不完整,需要确保证书配置中包含了完整的证书链文件(中间证书)。在Nginx中可以使用ssl_trusted_certificate指令指定证书链文件。

10.4 检查配置文件路径

确保证书文件路径与配置文件中的路径完全一致,包括文件名的大小写。建议使用绝对路径避免路径解析问题。

10.5 证书与私钥不匹配

如果证书与私钥不匹配,可以通过验证MD5值来确认。在Linux服务器中执行:

# 查看证书MD5
openssl x509 -noout -modulus -in certificate.crt | openssl md5
# 查看私钥MD5
openssl rsa -noout -modulus -in private.key | openssl md5

如果两个MD5值不一致,说明证书与私钥不匹配。

10.6 浏览器缓存问题

部署完成后如果浏览器仍显示不安全,可以尝试清除浏览器缓存或使用无痕模式访问。

结语

本文系统介绍了阿里云SSL证书从申请、下载到部署到四大主流Web服务器(Nginx、Apache、Tomcat、IIS)的完整流程。无论是个人测试证书还是企业级正式证书,阿里云数字证书管理服务都提供了便捷的操作路径和丰富的部署方式。希望本文能够帮助读者顺利完成HTTPS加密配置,提升网站的安全性和用户信任度。

常见问题与解答

问1:阿里云免费SSL证书的有效期是多久?每个账号可以申请多少张?

答:阿里云个人测试证书(免费版)有效期为90天(3个月),每个阿里云账号在一个自然年内可免费领取20张。到期后不支持续费,需要重新申请。

问2:下载证书时应该选择什么格式?

答:根据服务器类型选择对应格式——Nginx选择PEM格式,Apache选择CRT格式,Tomcat和IIS选择PFX(PKCS12)格式。如果列表中没有匹配的格式,可以先下载PEM格式再通过转换工具转换。

问3:证书部署后网站仍然显示“不安全”,怎么办?

答:按以下顺序排查:检查443端口是否在安全组中放行;检查证书绑定的域名是否与访问域名一致;检查证书链是否完整;检查配置文件中的证书路径是否正确;清除浏览器缓存后重新访问。

问4:私钥文件丢失了怎么办?

答:如果私钥丢失,证书将无法使用。需要重新购买证书并生成新的CSR和私钥。建议在申请证书时选择“系统生成CSR”,这样私钥由阿里云托管,避免丢失风险。

问5:通配符证书(*.example.com)能保护根域名和多级子域名吗?

答:不能。通配符证书仅对其一级子域名生效(如www.example.com、a.example.com),对根域名example.com和多级子域名(如a.b.example.com)不生效。如需保护多级子域名,需要在证书绑定域名中明确包含该域名。

问6:证书到期后如何续期?

答:免费版证书到期后不支持续费,需要重新申请并部署。付费证书可以在到期前通过控制台进行续费操作。建议开启证书托管服务,实现证书到期前的自动续期。

相关文章
阿里云短信服务平台价格表
阿里云短信服务平台价格表,阿里云短信服务价格表,阿里云短信0.032元一条,阿里云短信价格?阿里云短信怎么收费?阿里云短信多少钱一条,阿里云短信价格0.032元一条
|
4月前
|
存储 弹性计算 网络协议
2026年阿里云服务器ECS购买自定义购买全攻略:从入门到精通
本文为2026阿里云ECS自定义购买全指南,涵盖核心价值、完整流程、配置详解(付费类型、地域网络、实例规格、存储、带宽安全组等)、后续部署及高频FAQ,助用户灵活定制、安全高效上云。
|
4月前
|
域名解析 前端开发 数据可视化
如何创建一个网站?初学者的分步指南
本指南将网站创建分为五个核心阶段:规划准备、域名服务器选择、建站方式确定、内容填充以及测试发布。即使零基础,也能按步骤搭建个人博客、企业官网或电商网站,并持续运营维护。
1721 9
|
4月前
|
安全 数据建模 测试技术
2026阿里云SSL证书价格全解析:免费版与付费版对比及申请指南
阿里云SSL证书提供免费DV单域名(Digicert,3个月)及多品牌付费方案(DV/OV/EV),覆盖测试到金融级安全需求。2026年价格透明,含WoSign、GlobalSign等国际品牌,新老用户享5折起优惠,申请流程一键便捷。(239字)
|
7月前
|
弹性计算 网络协议
阿里云99元服务器——有问必答,你想知道的问题都在这!
阿里云99元服务器来了!ECS经济型e实例,2核2G、3M固定带宽、40G云盘,新老用户同享,续费仅99元/年,不限流量,独立IP,性能稳定。适用于建站、开发、测试等场景,活动持续至2027年
885 1
|
4月前
|
安全 关系型数据库 MySQL
阿里云云数据库RDS功能、优势、应用场景及收费标准与最新活动参考
阿里云的云数据库RDS是一款安全稳定、便捷易用、可弹性伸缩的关系型数据库服务,支持MySQL、SQL Server、PostgreSQL和MariaDB等主流数据库引擎。它提供高可用架构、自动化运维、安全防护及弹性扩展等核心功能,满足企业不同业务场景需求,如高可用与容灾、读写分离与负载均衡、安全与合规等。此外,阿里云还提供多款特惠云数据库产品及云服务器优惠活动,助力企业轻松上云,实现数据高效管理与业务创新提速。
|
6月前
|
弹性计算
阿里云账号注册、实名认证及免费云产品申请流程
阿里云账号注册、实名认证及免费云产品申请流程 1. 打开阿里云官网。 2. 点击网页右上角的“注册”按钮。 3. 注册方式支持手机短信验证码注册、支付宝注册、淘宝注册和钉钉注册四种。 4. 若选择手机号注册,需输入手机号并点击“获取验证码”,随后将手机收到的6位数字验证码输入,即可完成注册。
1172 6
|
7月前
|
开发框架 Cloud Native JavaScript
阿里云轻量应用服务器:值得买的云服务器推荐
阿里云轻量应用服务器全新升级,200Mbps峰值带宽、不限流量,支持多公网IP与丰富应用镜像,如WordPress、宝塔等,一键部署。适用于建站、跨境电商、游戏加速等场景,性价比高,68元起/年,限时抢购低至38元,中小企业和开发者首选。
646 12
|
6月前
|
算法 安全 数据建模
阿里云SSL证书怎么样?2026年阿里云SSL证书介绍、收费标准、性能测评
阿里云SSL证书(数字证书管理服务)是依托国际/国内顶级CA机构(Certificate Authority,证书颁发机构)颁发的加密认证服务,核心定位为“保障网络通信安全、验证身份合法性的基础安全解决方案”,通过TLS/SSL加密协议对客户端与服务器之间的传输数据进行加密,防止数据被窃取、篡改,同时验证网站/服务器身份,避免钓鱼网站冒充风险。2026年,阿里云SSL证书全面升级为订阅服务模式,适配CA/B行业新规,优化证书类型覆盖与性能表现,同时推出针对性优惠活动。以下结合官方定义、实测数据与公示信息,完整还原核心内容,全程不带营销词汇,确保信息真实无篡改。
1140 3
|
5月前
|
Web App开发 网络协议 应用服务中间件
阿里云免费SSL证书申请指南:从申请、下载到部署安装全流程,2026年最新教程
阿里云免费SSL证书申请指南(2026最新):三步完成申请、验证与部署。支持自动DNS验证,证书90天有效期,适用于Nginx/Apache等主流服务器。需实名认证并开放443端口。官方入口直达,图文详解,零基础可操作。