如果您已经拥有一个通过ICP备案的可公网访问的域名,并计划在正式上线前通过HTTPS协议在真实网络条件下进行性能测试,您可以免费获取个人测试证书,并将其部署到您的Web服务器上。
流程概述
在您的服务器中部署个人测试证书只需要三步:
前提条件
已在Web服务器开放443端口(HTTPS通信的标准端口)。
如果您使用的是阿里云ECS服务器,请确保已经在安全组规则入方向添加TCP 443端口。具体操作,请参见管理安全组规则。
如果您使用的是其他云服务商或本地服务器,请确保在防火墙或安全组中开启TCP 443端口。
443是HTTPS证书使用的常见端口,但具体使用的端口可以根据您的实际需求进行自定义配置。请根据实际情况调整相关设置,以确保证书能够正常工作。
步骤一:领取个人测试证书(免费版)
登录数字证书管理服务控制台,在左侧导航栏,选择。在个人测试证书(原免费证书)页签,单击立即购买。
在立即购买面板,填写购买数量,其它配置项保持默认选项,仔细阅读并勾选证书服务服务协议、证书技术支持服务须知,单击立即购买并完成支付。
重要如果该账号不满足个人测试证书(免费版)购买规则,请参见购买个人测试证书(pro)。
个人测试证书(免费版)领取后不支持取消订单。
步骤二:提交证书申请
在个人测试证书(原免费证书)页签,找到目标证书订阅实例,单击操作列下的申请证书。
填写以下必要信息,其他保持默认即可,确认信息无误后,单击提交审核。
证书绑定域名:输入证书要绑定的域名,示例域名
www.aliyun.com。域名验证方式:选择自动DNS验证。
由于本示例域名
www.aliyun.com的DNS云解析服务在当前账号,所以系统会自动识别为自动DNS验证。购买后系统会自动进行DNS验证,只需等待证书签发即可。联系人:选择本次证书申请的联系人。
所在地:选择申请人所在城市和地区。
密钥算法:根据需求选择。密钥长度越长,加密强度越高。RSA_2048 表示 2048 位密钥的 RSA 算法。
CSR生成方式:选择系统生成即可。
完成域名验证。单击目标证书订阅实例操作列下的验证。根据页面提示,完成域名所有权的验证。
域名所有权验证成功后,证书通常会在1~15分钟(平均时长)内完成签发。证书签发后,当前证书状态将变更为已签发。如果SSL证书长时间未签发,请您检查DNS验证配置是否正确。
说明证书自签发之日起生效,有效期为90天。
如果您遇到DNS检测长时间没有通过,遇到文件内容不正确、DNS记录值不匹配、DNS验证超时等问题,可参见域名所有权验证相关问题获取解决方案。
步骤三:部署证书到 Web 服务器
下文以CentOS 8.0 64位操作系统、Nginx 1.14.2为例介绍。其他操作系统或Web服务器(如Apache、Tomcat、IIS等)的部署操作可能有所不同,详情请参见登录服务器部署(支持国际/国密SSL证书)。
下载证书文件。
找到已签发的证书,单击操作列下的下载。
选择与您Web服务器类型对应的证书(如Nginx),单击操作列下的下载,获取证书文件压缩包。
上传证书文件到服务器。
在Nginx的conf目录下创建一个用于存放证书的目录。
重要本示例中的Nginx配置目录位于
/usr/local/nginx/conf。如果您不清楚Nginx配置目录,请执行nginx -t查看。#进入Nginx默认配置文件目录。 cd /usr/local/nginx/conf #创建证书目录,命名为cert。 mkdir cert将解压后的证书文件上传到Nginx服务器。解压后的证书文件通常包括:
证书文件(如:
example.com.pem)私钥文件(如:
example.com.key)
说明您可以使用远程登录工具的本地文件上传功能来上传文件。例如PuTTY、Xshell或WinSCP等工具。如果您使用的是阿里云云服务器 ECS,关于上传文件的具体操作,请参见上传或下载文件。
配置Web服务器:编辑Nginx配置文件
nginx.conf,修改与证书相关的配置。重要本示例中的Nginx配置目录位于
/usr/local/nginx/conf。如果您不清楚nginx.conf的位置,可以执行nginx -t查看。执行以下命令,打开配置文件。
sudo vim /usr/local/nginx/conf/nginx.conf在
nginx.conf中找到HTTPS server属性配置。
说明如果确定
nginx.conf或include指令所引用的文件不存在上图server块,请您自行手动进行添加。删除行首注释符号#,并参考如下示例进行修改。
修改完成后,按下
Esc键确保处于命令模式。输入:wq,然后按Enter键,保存并退出。server { #HTTPS的默认访问端口443。 #如果未在此处配置HTTPS的默认访问端口,可能会造成Nginx无法启动。 listen 443 ssl; #填写证书绑定的域名 server_name <YOURDOMAIN>; #填写证书文件绝对路径 ssl_certificate cert/<cert-file-name>.pem; #填写证书私钥文件绝对路径 ssl_certificate_key cert/<cert-file-name>.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; #自定义设置使用的TLS协议的类型以及加密套件(以下为配置示例,请您自行评估是否需要配置) #TLS协议版本越高,HTTPS通信的安全性越高,但是相较于低版本TLS协议,高版本TLS协议对浏览器的兼容性较差。 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #表示优先使用服务端加密套件。默认开启 ssl_prefer_server_ciphers on; location / { root html; index index.html index.htm; } }执行以下命令,重载配置文件。
#进入Nginx服务的可执行目录。 cd /usr/local/nginx/sbin #重新载入配置文件。 ./nginx -s reload
验证部署。
证书部署完成后,您可通过访问证书绑定的域名验证该证书是否部署成功。
https://yourdomain #将yourdomain替换为您的实际域名如果浏览器的地址栏出现
图标,表示证书已经安装成功。从Chrome 117版本开始,Chrome浏览器将地址栏HTTPS的
改为了
图标。请单击该图标,参考如下示例,出现
标志时,表示证书安装成功。
相关文档
安装SSL证书后,如果证书未生效,请参见根据浏览器错误提示解决证书部署问题、SSL证书部署故障自助排查指南。
在正式环境中,建议您使用正式证书来为您的网站提供安全加密,具体文档请参见购买正式证书。
除了手动部署证书到Web服务器以外,还支持将证书部署至阿里云云产品,确保安全和高效的使用。
