阿里云免费 SSL 证书申请和使用的过程
悲催啊,本来这个博客的域名是使用 Let's Encrypt 提供 SSL 服务保护的,但是不小心删除之前 Let's Encrypt 生成的验证文件,导致更新证书的时候无法验证通过。目前不知道如何解决这个问题,不知道是否我的理解有误。
没有办法,只能暂时另辟蹊径,不过好在 HTTPS 非常的好,好多公司推出了免费一年的 SSL 证书服务,目前国内有好几家公司推出了免费一年 SSL 证书服务,这里我使用了阿里云 SSL 证书,是因为我的域名也在阿里云,个人觉得配置起来比较方便(事实上在操作的时候确实比较简单)。
阿里云免费 SSL 证书申请
- 阿里云 SSL 服务官网
阿里云 SSL 证书服务 - 选择免费型 DV SSL
- 如有没有登录则会跳转到登录界面先登录,如果已经登录则跳到订单确认页面
- 支付确认页面,支付为 0 元。
- 支付成功页面
- 点击证书控制台按钮,就会进入云盾管理控制台,然后下拉找到证书服务(也许页面会重排,就需要自己找找了)
- 信息补全
支付完成后需要补全证书信息,其过程为:绑定域名、信息验证、CSR 证书请求文件生成。
- 域名绑定
一个订单只能绑定一个域名,目前阿里云可以创建 10 个订单,即最多能绑定 10 个域名。
- 补全个人信息
主要是对域名授权验证,这里着重提醒的是,如果域名服务也在阿里云,那么大胆的勾选“证书绑定的域名在【阿里云的云解析】产品中”这一选项
- CSR 证书请求生成
系统提供了系统生成 CSR 和自己生成 CSR 两种方式,觉得繁琐的就选择系统把。
由于域名在阿里云上,所以进度很快完成了。
阿里云 SSL 在 Nginx 配置方法
- 下载 Nginx 下的证书文件
- 将密钥上传到云服务器指定的目录,下面配置 Nginx 的需要指定
- 配置 Nginx,我的 SSL 证书放在
/apps/ssl/keys/aliyun/www.mzlion.com/
目录下,下面是 Nginx 的配置选项
server {
#启用 https, 使用 http/2 协议
listen 443 ssl http2;
#ssl
#证书路径
ssl_certificate /apps/ssl/keys/aliyun/www.mzlion.com/aliyun.pem;
#私钥路径
ssl_certificate_key /apps/ssl/keys/aliyun/www.mzlion.com/private.key;
#可选的加密算法,顺序很重要,越靠前的优先级越高
ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-RC4-SHA:!ECDHE-RSA-RC4-SHA:ECDH-ECDSA-RC4-SHA:ECDH-RSA-RC4-SHA:ECDHE-RSA-AES256-SHA:HIGH:!RC4-SHA:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!CBC:!EDH:!kEDH:!PSK:!SRP:!kECDH;
#在 SSLv3 或 TLSv1 握手过程一般使用客户端的首选算法,如果启用下面的配置,则会使用服务器端的首选算法.
ssl_prefer_server_ciphers on;
#以下与证书无关了
location /{
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080;
}
重启 Nginx,您就完成了阿里云 SSL 证书的申请和使用了。总体使用下来非常的方便,已经属于比较傻瓜式的了。其次提供了一年服务,就不需要每三个月更新的烦恼了。
最后还是对于 Let's Encrypt 丢失验证文件感到烦躁,不知道有没有大神解决方案!
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于