前言
有时候在某些开发场景必须需要用到https安全环境来测试,比如FB的登录sdk调试,FB的App Links,PWA的调试等等。那我们就需要搭建一个https安全环境,这种情况我有两种解决方案。
第1种本地生成的证书只能在自己电脑上信任证书来确保https安全环境为绿色,在其他设备上会显示https不安全。
要使用公网认证的https就用第2种方式,去白嫖SSL安全证书,第2钟方式要有几个前提条件
- 自己拥有ECS云服务器(这个阿里与好像也有能白嫖的低配机器)
- 自己拥有一个域名(去阿里云购买非特殊域名也不贵几块钱一年)
- 注册七牛云账户去0元购买SSL免费证书
- 还有就是你需要基本熟悉Linux操作命令
我下面主要介绍第2种方案,想要实现第1种方案的可以去查看mkcert的文档
七牛云购买免费证书
没有七牛云的朋友我推荐大家去注册一下,特别接地气的云服务商。
https://s.qiniu.com/ZfumU3
登录注册七牛云购买免费SSL证书
注册登录后点击左上角菜单栏 > SSL证书 > 购买证书 > 选择证书品牌(TrustAsia)> DV域名型
购买成功后补全信息
DNS验证域名
因为不能随便填别人的域名添加SSL证书配置,所以需要验证域名所有权确认域名是你的。
按照SSL订单详情给的TXT记录值,去添加TXT域名解析用来验证域名所有权
在阿里云控制台域名解析添加完TXT记录值,再回来七牛云的SSL订单详情页 点击检测验证结果,一般1分钟都不要就通过了。
下载证书并导入阿里云ECS服务器
在七牛云SSL证书服务/证书管理列表 下载刚刚验证完的证书文件。
使用scp命令把证书文件上传到ECS服务器
1 | scp ~user/ssl/xxx.com.zip root@47.244.10.110:/usr/local/cert |
新增Nginx配置
1 | server { |
配置阿里云ECS安全组端口443规则
上面的配置往访问域名你会发现http能正常重定向到https了,但是到了https的请求,请求一直没响应。
然后用curl命令访问发现报错 port 443: Connection timed out
这个时候就是最后一步配置了。ECS云服务器安全组端口规则配置,可参考下面这篇文章。
https://blog.csdn.net/Alen_xiaoxin/article/details/104853828
阿里云ECS允许公网通过HTTP、HTTPS等服务访问实例如何配置?
阿里云ECS安全组规则入口:云服务器 ECS > 网络云安全 > 安全组 > 创建安全组 或者 在现有安全组配置规则 配置入方向
添加安全组规则
OK 现在去访问你的域名就是绿色的https安全环境了,可以愉快的开发调试了。
- 本文标题:Ubuntu Nginx 配置https免费SSL证书安全环境
- 本文作者:Madman
- 创建时间:2021-02-19 11:38:42
- 本文链接:https://www.patpat.site/开发/后端/Ubuntu-Nginx-配置免费https-SSL-安全环境.html
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!