探索建站和运维乐趣

阿里云免费DV SSL证书申请自动下发及Apache/Nginx/IIS/Tomcat安装SSL

前几天在"申请腾讯云免费DV SSL证书及Apache/Nginx/IIS/Tomcat证书安装"文章中,我们有看到可以从腾讯云免费申请DV SSL证书,而且基本上秒下发证书。同样的在阿里云也有提供一年免费赛门铁克DV SSL免费证书申请,每个阿里云账户可以申请五个免费证书。如果我们在腾讯云那边申请名额满了,可以再到阿里云申请五个,基本上可以满足一般用途的需要。

根据之前的信息,Chrome新版本好像已经支持赛门铁克证书,所以一般项目用免费证书是没有问题的,如果我们实在介意免费证书与付费证书的区别,且实际的商业用途,我们可以申请付费证书,如今付费证书也不贵,便宜的SSL证书也就差不多一个域名的成本。

实际上,我们如果在腾讯云有申请过SSL证书,再到阿里云这边申请还是比较轻松的,我们只需要有一个实名认证的阿里云账户(一般用户都有),然后我们可以根据下面笔者整理的文章就可以轻松申请,而且与腾讯云一样,是通过自动验证下发证书的。

第一、阿里云免费SSL申请

1、免费SSL证书申请地址

地址:https://common-buy.aliyun.com/?commodityCode=cas#/buy

免费SSL证书申请地址

这里我们可以看到有付费和免费证书,在这篇文章中,我们需要申请的是免费DV SSL证书,我们选择。

2、选择证书和确认订单

选择免费DV SSL证书且时间一年,我们可以在右侧购物车看到是免费。

选择证书和确认订单

直接确认订单即可,然后我们到后台证书列表可以看到下单的证书。

补全阿里云SSL证书资料

第二、激活阿里云免费SSL证书

这里我们可以看到购买的免费证书,需要我们激活补全资料。

这里免费证书只能绑定一个普通域名,输入域名。

这里输入个人信息,个人信息随意,差不多就可以了。我们主要是需要选择域名验证类型,可以用DNS验证或者文件验证。提交申请,需要等待一会。

阿里云免费SSL验证DNS

根据记录值,我们去修改DNS验证。全程无人工干预的,我们只需要根据记录值解析好,会自动审核。

自动签发完毕之后,我们可以看到直接下载证书安装文件包。

第三、阿里云免费SSL证书安装

在自动下发免费SSL证书之后,我们可以直接看到Nginx、Apache、IIS证书安装文件。

阿里云免费SSL证书安装

A、Nginx/Tengine

1. 证书文件214080577850804.pem,包含两段内容,请不要删除任何一段内容。

2. 如果是证书系统创建的CSR,还包含:证书私钥文件214080577850804.key。

( 1 ) 在Nginx的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为214080577850804.key;

( 2 ) 打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件,找到:

# HTTPS server
# #server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
# ssl_prefer_server_ciphers on;
# location / {
#}
#}

( 3 ) 将其修改为 (以下属性中ssl开头的属性与证书配置有直接关系,其它属性请结合自己的实际情况复制或调整) :

server {
listen 443;
server_name laobuluo.com www.laobuluo.com;
ssl on;
root html;
index index.html index.htm;
ssl_certificate cert/214080577850804.pem;
ssl_certificate_key cert/214080577850804.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}

保存退出。

( 4 )重启 Nginx。

B、Apache

1. 证书文件214080577850804.pem,包含两段内容,请不要删除任何一段内容。

2. 如果是证书系统创建的CSR,还包含:证书私钥文件214080577850804.key、证书公钥文件public.pem、证书链文件chain.pem。

( 1 ) 在Apache的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为214080577850804.key;

( 2 ) 打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”:

#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
#Include conf/extra/httpd-ssl.conf

( 3 ) 打开 apache 安装目录下 conf/extra/httpd-ssl.conf 文件 (也可能是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句:

# 添加 SSL 协议支持协议,去掉不安全的协议
SSLProtocol all -SSLv2 -SSLv3
# 修改加密套件如下
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
# 证书公钥配置
SSLCertificateFile cert/public.pem
# 证书私钥配置
SSLCertificateKeyFile cert/214080577850804.key
# 证书链配置,如果该属性开头有 '#'字符,请删除掉
SSLCertificateChainFile cert/chain.pem

( 4 ) 重启 Apache。

C 、Tomcat

1、证书格式转换

在Tomcat的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,附件中只包含214080577850804.pem文件,还需要将私钥文件拷贝到cert目录,命名为214080577850804.key;如果是系统创建的CSR,请直接到第2步。

到cert目录下执行如下命令完成PFX格式转换命令,此处要设置PFX证书密码,请牢记:

openssl pkcs12 -export -out 214080577850804.pfx -inkey 214080577850804.key -in 214080577850804.pem

2、PFX证书安装

找到安装Tomcat目录下该文件server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port="8443"标签,增加如下属性:

keystoreFile="cert/214080577850804.pfx"
keystoreType="PKCS12"
#此处的证书密码,请参考附件中的密码文件或在第1步中设置的密码
keystorePass="证书密码"

完整的配置如下,其中port属性根据实际情况修改:

<Connector port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/214080577850804.pfx"
keystoreType="PKCS12"
keystorePass="证书密码"
clientAuth="false"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>

3、JKS证书安装(帮助)
( 1 ) 使用java jdk将PFX格式证书转换为JKS格式证书(windows环境注意在%JAVA_HOME%/jdk/bin目录下执行)

keytool -importkeystore -srckeystore 214080577850804.pfx -destkeystore your-name.jks -srcstoretype PKCS12 -deststoretype JKS

回车后输入JKS证书密码和PFX证书密码,强烈推荐将JKS密码与PFX证书密码相同,否则可能会导致Tomcat启动失败。

( 2 ) 找到安装 Tomcat 目录下该文件Server.xml,一般默认路径都是在 conf 文件夹中。找到 &lt;Connection port="8443"标签,增加如下属性:

keystoreFile="cert/your-name.jks"
keystorePass="证书密码"

完整的配置如下,其中port属性根据实际情况修改:

<Connector port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/your-name.jks"
keystorePass="证书密码"
clientAuth="false"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>

( 注意:不要直接拷贝所有配置,只需添加 keystoreFile,keystorePass等参数即可,其它参数请根据自己的实际情况修改 )

4、 重启 Tomcat。

D 、IIS7-8

( 1 ) 证书导入

• 开始 -〉运行 -〉MMC;

• 启动控制台程序,选择菜单“文件"中的"添加/删除管理单元”-> “添加”,从“可用的独立管理单元”列表中选择“证书”-> 选择“计算机帐户”;

• 在控制台的左侧显示证书树形列表,选择“个人”->“证书”,右键单击,选择“所有任务"-〉"导入”, 根据"证书导入向导”的提示,导入PFX文件(此过程当中有一步非常重要: “根据证书内容自动选择存储区”)。安装过程当中需要输入密码为您当时设置的密码。导入成功后,可以看到如图所示的证书信息。

( 2 ) 分配服务器证书

• 打开 IIS8.0 管理器面板,找到待部署证书的站点,点击“绑定”,如图。

• 设置参数

选择“绑定”->“添加”->“类型选择 https” ->“端口 443” ->“ssl 证书【导入的证书名称】” ->“确定”,SSL 缺省端口为 443 端口(请不要随便修改。 如果您使用其他端口如:8443,则访问时必须输入:https://www.domain.com:8443)。如图

第四、小结

1、阿里云免费SSL证书与腾讯云提供的一样都是赛门铁克DV SSL证书,都是免费一年。

2、对于这个免费证书,如果我们普通的项目需要一个绿标HTTPS格式,还是没有多大问题的,如果纯商业用途项目,建议还是买个付费的。

3、DV SSL证书申请还是相对简单的,基本上DNS验证和文件验证都是秒过,建议白天申请好像通过速度快一点。

赞(0)
转载保留:老部落 » 阿里云免费DV SSL证书申请自动下发及Apache/Nginx/IIS/Tomcat安装SSL


关注公众号『老蒋朋友圈』

获取更多建站运营运维新知!
互联网创业、前沿技术......