前言

因新公司web项目上线后在考虑安全问题,其中访问方式准备使用https(http与https的区别)。本文只讲述关于申请和配置SSL的全过程,会讲述web容器和nginx两者的配置。

正文

证书

在讲述具体操作前先认识一下证书,常见的证书格式:cer/crt(pem)、pfx、jks等,详情请看参考文章,点我点我

了解清楚证书是个什么东西,什么格式之后,我们得着手申请证书了,噢对了,证书大部分都是要钱的,不过在近几年越来越多的免费SSL可用了,不过免费没好货,很多都是坑,建议参考这篇文章后选择一个合适自己的免费SSL(土豪请无视,直接找你们云服务提供商买就好)点我点我

申请证书

这里着重说明一下,现在使用云服务器的应该很多了吧,大多数应该都是使用的BAT的云。我这里是用的阿里云,之前没去查阿里云是否提供证书服务,直接去找的其他免费的,发现弄的麻烦,还不方便管理。
补充:JDK从1.4就提供了证书制作工具,路径在%JAVA_HOME%\bin\keytool.exe,通过keytool工具创建证书的命令为:(详情在最后补上)

keytool -genkeypair -alias "tomcat" -keyalg "RSA" 

这里按照以阿里云的方式重新申请一次SSL。
1.登录阿里云后台,管理控制台–安全(云盾)–证书服务–购买证书;
图1

2.别的不用选,也选不了,直接勾选免费型DV SSL,价格就变成0了,这个证书是赛门铁克的;
图2

3.购买完成,直接回到1步证书服务控制台,你申请的证书已经ok了,接下来需要你不全信息,并绑定域名以及DNS;
3-1
在填写域名的时候,是不支持通配符的,毕竟是免费的,只支持单域名,有钱的就买收费的吧,通配符可以成这样:*.360.cn,这样所有二级域名都加了SSL,免费的就一个个配吧,毕竟不会有那么多项目;
然后在填写资料的时候建议以DNS的方式进行域名验证,之后启用系统生成CSR;
3-2

4.填写完相关信息后回到证书管理控制台,等系统审核,一般10分钟完成,如果你的域名不是在阿里云管理的,那么请点查看进度,会提示给你需要添加到DNS的记录,照着到自己的域名管理端去添加DNS解析(下面3张图为流程)。
4-1
4-2
4-3

当配置完成后等待DNS生效,之后等系统验证通过,你申请的SSL就正式生效了,之后点击下载就可以弄到本地了。

Tomcat方式配置SSL

本步骤需要准备好证书,如果没有可以参考上一步申请证书步骤,或以其他方式获得均可。证书文件的格式参考正文证书介绍的内容,以免搞错了。

文件介绍

我这里使用的是阿里云的方式申请的,直接进入证书下载界面选择的“Tomcat”方式。
文件内容为:

214136224450503.pfx PFX格式证书文件
pfx-password.txt PFX格式证书密码文件
214136224450503.key 证书私钥文件

创建一个cert文件夹,存放以上文件;
有的人的证书格式跟我不一样没关系,知道密码,是之前介绍的格式范围内就行了;
有的人没有key私钥文件,我是系统帮我生成的CSR,不是系统生成的需要自己创建,将自己的私钥拷贝到跟证书同级文件夹内,并且文件名一致,格式不一致。

将cert文件夹copy到tomcat的目录下,跟conf同级。

设置证书密码(pfx的注意)

未完待续!!!!

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐