美文网首页经验总结
阿里云免费SSL正式在nginx上的部署实践

阿里云免费SSL正式在nginx上的部署实践

作者: Jay_小咖 | 来源:发表于2019-06-21 21:47 被阅读0次

    现如今大多数的网站都采用https的方式,因为它比http更安全,HTTPS即HTTP + SSL/TLS,在HTTP的基础上对数据传输进行加密,使网站更加安全。

    所以这次也在小编的个人网站上进行实践一下。大部分SSL证书是收费的,也有一些是免费的,详见:11中免费获取SSL证书的方式。我是用阿里云进行实验。当然也可以用腾讯云百度云之类的,其实都是大同小异的。

    准备工作

    无论是阿里云、腾讯云还是百度云都需要先进行注册、实名认证。腾讯云可以直接用微信扫一扫登录。(这年头什么网站都要手机号实名等等,感觉在互联网的世界已经没什么隐私可言了)。

    其次需要有由注册一个域名,并且已经解析到相关的服务器。

    然后就是你已经部署了一个网站在虚拟主机上,并且已经弄好了域名映射,比如使用Nginx,完成了相关的配置。且网站能够正常访问了。

    开始申请证书

    在以下网址进行购买:
    云盾证书服务(包年)购买-阿里云

    选择免费型DV SSL证书,免费为期一年,只支持一个域名,一个账号最多申请20个免费证书。对于个人博客或微型网站来说应该足够了。


    选择免费型DV SSL证书@2x.png

    付款成功之后呢,就可以在SSL证书管理控制台上看到证书列表了。

    证书验证

    在证书列表右侧点击申请,填写相关信息后进行验证。


    证书申请验证@2x.png

    有三种域名验证方式:

    • 自动DNS验证,这种方式需要域名使用阿里云DNS。
    • 手动DNS验证,需要拥有域名DNS管理权限,手动添加一条TXT记录到DNS的解析记录中。
    • 文件验证,需要拥有站点管理权限,在站点根目录添加指定文件进行验证。

    我的域名虽然是使用阿里云的,但我想试一下文件验证方式。

    验证信息@2x.png

    这里文件验证方式需要将fileauth.txt文件下载下来,然后在站点根目录下创建.well-known/pki-validation目录,然后通过scp或ftp工具上传到该目录下。

    点击验证来验证域名。这里验证往往可能会出现问题,可以参考:
    https://help.aliyun.com/knowledge_detail/48720.html?spm=5176.11065259.1996646101.searchclickresult.459c58a4wc83b4

    需要注意的是,我们填写的www.xxx.com是二级域名,阿里云之后发送给CA的就变成了xxx.com顶级域名了,如果这顶级域名没解析,就会有问题。(我折腾了一翻,真的很蛋疼)。

    可以分别ping一下这两个,即www.domain.comdomain.com,看是否有返回IP地址,都有的话,就是已经做了解析的了。

    ping两种域名

    如果顶级域名没做,则需要添加一条解析记录。即添加一条记录值为@的记录。

    所以只有http://www.domain.com/.well-known/pki-validation/fileauth.txt
    http://domain.com/.well-known/pki-validation/fileauth.txt 都访问成功后才能够验证通过签发证书。

    部署SSL证书

    本人是在Linux Nginx上进行操作的。

    首先安装Nginx就不多说了。相信大家都会,不会的度娘搜一搜跟着安装就行。

    配置开启ssl

    安装Nginx后,进入Nginx的配置目录修改配置文件,如/usr/local/nginx/conf/nginx.conf,打开后找到如下所示位置:

    nginx-https配置@2x.png

    加上如下的证书路径,配置后信息如下:


    配置后的信息@2x.png

    下载证书并上传

    证书信息验证通过后(一般经过几分钟扫描到文件后很快就会通过),如下:


    已签发的证书@2x.png

    然后下载证书:


    两个证书@2x.png

    把这两个证书上传到服务器目录,一般放在:/usr/local/cert中。或放在/nginx/ssl中,都可以。

    然后在配置,接上一步,配置证书路径。

    验证

    重启Nginx后,用Chrome访问域名查看。

    Nginx相关操作:

    查看Nginx配置文件是否配置正确:

    $ ./nginx -t
    

    重启Nginx:

    $ ./nginx -s reload
    

    最后,在浏览器上出现绿色的安全锁,证明SSL证书配置正确了。


    火狐打开https网站提示可信任的网址@2x.png

    相关文章

      网友评论

        本文标题:阿里云免费SSL正式在nginx上的部署实践

        本文链接:https://www.haomeiwen.com/subject/slxcqctx.html