完美!竟然用一个脚本就把系统升级到https了,且永久免费!
共 2932字,需浏览 6分钟
·
2020-07-27 19:34
点击“开发者技术前线”,选择“星标?”
在看|星标|留言, 真爱
来自:GitHub中文社区 作者:huber
http与https的区别
◎ 购买收费的CA证书
免费的Letsencrypt
主要步骤如下
安装 acme.sh
生成证书
复制证书到服务
更新证书
更新 acme.sh
curl https://get.acme.sh | sh
1、把acme.sh安装到你的home目录下:
~/.acme.sh/
◆ 生成证书
acme.sh --issue -d mydomain.com -d www.mydomain.com --webroot /home/wwwroot/mydomain.com/
如果你用的是apache服务器,acme.sh 还可以智能的从 apache的配置中自动完成验证,你不需要指定网站根目录:
acme.sh --issue -d mydomain.com --apache
如果你用的是nginx服务器,或者反代,acme.sh还可以智能的从 nginx的配置中自动完成验证,你不需要指定网站根目录:
acme.sh --issue -d mydomain.com --nginx
如果你还没有运行任何 web 服务,80 端口是空闲的, 那么 acme.sh 还能假装自己是一个webserver, 临时听在80 端口,完成验证:
acme.sh --issue -d mydomain.com --standalone
2、dns 方式,在域名上添加一条 txt 解析记录,验证域名所有权
acme.sh --issue --dns -d mydomain.com
然后,acme.sh 会生成相应的解析记录显示出来,你只需要在你的域名管理面板中添加这条 txt 记录即可
等待解析完成之后, 重新生成证书:
acme.sh --renew -d mydomain.com
dns 方式的真正强大之处在于可以使用域名解析商提供的 api 自动添加 txt 记录完成验证
acme.sh 目前支持 cloudflare, dnspod, cloudxns, godaddy 以及 ovh 等数十种解析商的自动集成
◆ 安装证书
前面证书生成以后,接下来需要把证书 copy 到真正需要用它的地方
acme.sh --installcert -d .com \
--key-file /etc/nginx/ssl/.key \
--fullchain-file /etc/nginx/ssl/fullchain.cer \
--reloadcmd "service nginx force-reload"
◆ 更新证书
◆ 更新脚本
acme.sh --upgrade
最后
传送门
生命可贵,愿逝者安息!天堂没有代码
前线推出学习交流一定要备注:研究/工作方向+地点+学校/公司+昵称(如大数据+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群
扫码加我微信和大佬们零距离
历史推荐 再见!RxJava 知乎1.3万亿条数据查询毫秒级响应,如何做到的? 为什么程序员都不喜欢使用switch,而是大量的 if……else if ? PG Vs MySQL ,到底谁更强? 好文点个在看吧!