- N +

字幕,【体系架构】怎么升级到https?一个脚本帮你搞定,且永久免费,百度云

原标题:字幕,【体系架构】怎么升级到https?一个脚本帮你搞定,且永久免费,百度云

导读:

现在很多站长都会考虑将自己的站点从http升级到https,不仅是基于安全的考虑,有的也是因为第三方平台的限制。如谷歌浏览器会将http站点标记为不安全的站点,微信平台要求接入...

文章目录 [+]

【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费

现在许多站长都会考虑将自己的站点尤小刚周庭伊有孩子从http晋级到https,不仅是根据安全的考虑,有的也是因为第三方渠道的约束,如谷歌浏览器会将http站点标记为不安全的站点,微信渠道要求接入的微信小程序有必要运用https等。

那怎样将一个http站点晋级为https站点呢?

http与https的差异

为了数据传输的安全,https在http的基础上加入了ssl协议,ssl协议依托证书来验证效劳器的身份,并为浏览器和效劳器之间的通讯加密。要想将http晋级为https,只需求给http站点增加一个CA证书即可。

现在获取CA证书有两种途径:

  1. 购买收费的CA证书
  2. 获取免费的证书

收费的CA证书各大效劳供给商都有卖,如阿里云、腾讯云等。

【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费

收费的证书不廉价,从阿里云官方网站看,它的价格能够从几千元到上万元不等。

这关于小公司渠道,乃至是个人站点来说,是一个不小的开支。

Letsencrypt是一个免费、主动化和敞开的证书颁布组织,其颁布的证书一次有效期为三个月,可是只要能继续更新,根本能够永久运用。

今蓝天航空空姐天引荐的这个脚本acme.sh,完结了 acme 协议, 能够帮你桃花云雨继续主动从Letsencrypt更新CA证书。下载地址如下:

https://github.com/Neilpang/acme.sh

装置 acme.sh

装置acme.sh很简单,一个指令即可:

curl https://get.acme.sh | sh

普通用户和 root 用户都能够装置运用。装置进程进行了以下几步:

1、把acme.sh装置到你的home目录下:

~/.acme.sh/

并创立 一个 bash 的 alias,便利你运用富钟水牛:alias acme.sh=~/.acme.sh/acme.sh

2、主动为你创立 cronjob,每天 0:00 点主动检测一切的证书。假如快过期了,需求更新,则会主动更新证书,装置进程不会污染已有的系统任何功用和文件,一切的修正都约束在装置目录中: ~/.acme.sh/

生成证书

acme.sh 完结了 acme 协议支撑的一切验证协议, 一般有两种方法验证: http 和 dns 验证。

1、http 方法需求在你的网站根目录下放置一个文件, 来验证你的域名一切权,完结验证,然后就能够生成证书了。

acme.sh --issue -d mydomain.com -d www.mydomain.com --webroot /home/wwwroot/mydomain.com/

acme.sh 会全主动的生成验证文件, 并放到网站的根目录,然后自余鑫阳动完结验证。最终会聪明的删去验证文件,整个进程没有任何副作用。

假如你用的是apache效劳器,ac字幕,【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费,百度云me.sh 还能够智能的从 apache的装备中主动完结验证,你不需求指定网站根目录:

acme.sh --issue -d myd姬银龙为什么恨杨晓琼omain.com --apache

假如你用的是nginx效劳器,或许反代,acme.sh还能够智能的从 nginx的装备中主动完结验证,你不需求指定网站根目录:

acm陈世渝e.sh --issue -d mydomain.com --nginx

留意:无论是 apache 仍是 nginx 形式,acme.sh在完结验证之后,会康复到之前的状况,都不会私自更改你自身的装备。优点是你不必忧虑装备被搞坏,但也有一个缺陷,你需求自己装备 ssl 的装备,不然,只能成功生成证书,你的网站仍是无法访问https。 可是为了安全,你仍是自己手动改装备吧。

假如你还没蛯名里菜有运转任何 web 效劳,80 端口是闲暇的, 那么 acme.sh 还能伪装自己是一个webserver, 暂时听在80 端口,完结验证:

acme.sh --issue -ag直营d m杨童舒豪宅被毁ydomain.com --standalone

2、dns 方法,在域名上增加一条 txt 解析记载,验证域名一切权。

这种方法的优点是,你不需求任何效劳器,不需求任何公网 ip,只需求 dns 的解析记风流女性录即可完结验证。不过,害处是,假如不一起装备 Automatic DNS API,运用这种方法 acme.sh 将无法主动更新证书,每次都需求手动再次从头解析验证域名一切权。

acme.sh --issue --dns -d mydomain.com

然后,acme.sh 会生成相应的解析记载显示出来,你只需求在你的域名办理面板中增加这条 txt 记载即可。

等候解床奴析完结之后, 从头生成证书:

acme.sh -字幕,【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费,百度云-renew -d mydomain.com

留意:第2次这儿用的是 --renew

dns 方法的真实强壮之处在于能够运用域名解析商供给的 api 主动增加 txt 记载完结验证。

acme.sh 现在支撑 cloudflare, dnspod, cloudxns, godaddy 以及 ovh 等数十种解析商的主动集幼儿园教师图片成。

copy/装置 证书

前面证书生成往后,接下来需求把证书 copy 到真实需求用它的当地。

留意:默许生成的证书都放在装置目录下:~/.acm谭茜小三e.sh/,请修罗武神八一中文网不要直接运用此目字幕,【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费,百度云录下的文件。例如,不要直接让 nginx/apache 的装备文件运用这下面的文件。这儿面的文件都是内部运用,而且目录结构可能会改变。

正确的运用方法是运用 --installcert 指令,并指定方针方位,然后证书文件会被copy到相应的方位,例如:

acme.sh --installcert槌子蛇 -d .com \

--key-f担担鸡ile /etc/nginx/ssl/.key \

--fullchain-file /etc/nginx/ssl/fullchain.cer \

--reloadcmd "service nginx force-reload"

一个小提示,这儿用的是 service nginx force-reload,不是 service ngin重生hx reload,据测验, reload并不会从头加载证书,所以用的 force-reload。

Nginx 的装备 字幕,【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费,百度云ssl_certificate 运用 /etc/nginx/ssl/fullchain.cer,而非 /etc/nginx/ssl/.cer ,不然 SSL Labs 的测验会报 Chain issues Incomplete 过错。

--installcert指令能够带着许多参数,来指定方针文件。而且能够指定 reloadcmd, 当证书更新往后,reloadcmd会被主动调用,让效劳器收效。

值得留意的是,这儿指定的一切参数都会被主动记载下来,并在将来证书主动更新往后,被再次主动调用。

更新证书

现在证书在 60 天往后会主动更新,你无需任何操作。往后有可能会缩短这个时刻,不过都是主动的,你不必关怀。

更新 acme.sh

现在因为 acme 协议和 L字幕,【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费,百度云etsencrypt CA 都在频频的更新,因而 acme.sh 也常常更新以坚持同步。

晋级 acme.sh 到最新版 :

acme.sh --upgrade

假如你不想手动晋级, 能够敞开主动晋级:

acme.sh --upgrade --auto-upgrade

之后, acme.sh 就会主动坚持更新了。

你也能够随时关字幕,【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费,百度云闭主动更新:

acme.sh --upgrade --auto-upgrade 0

6. 犯错怎样办:

假如犯错, 请增加 de字幕,【系统架构】怎样晋级到https?一个脚本帮你搞定,且永久免费,百度云bug log:

acme.sh --issue ..... --debug

或许:

acme.sh --issue ..... --debug 2

最终,本文并非彻底的运用说明,还有许多高档的功用,更高档的用法逍遥小神医金富有请参看其他 wiki 页面。

https://github.com/Neilpang/acme.sh/wiki

有好的文章希望我们帮助分享和推广,猛戳这里我要投稿

返回列表
上一篇:
下一篇: