小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

【系統(tǒng)架構(gòu)】如何升級(jí)到https?一個(gè)腳本幫你搞定,且永久免費(fèi)

 美好生活谷 2019-04-01
【系統(tǒng)架構(gòu)】如何升級(jí)到https?一個(gè)腳本幫你搞定,且永久免費(fèi)

現(xiàn)在很多站長(zhǎng)都會(huì)考慮將自己的站點(diǎn)從http升級(jí)到https,不僅是基于安全的考慮,有的也是因?yàn)榈谌狡脚_(tái)的限制,如谷歌瀏覽器會(huì)將http站點(diǎn)標(biāo)記為不安全的站點(diǎn),微信平臺(tái)要求接入的微信小程序必須使用https等。

那如何將一個(gè)http站點(diǎn)升級(jí)為https站點(diǎn)呢?

http與https的區(qū)別

為了數(shù)據(jù)傳輸?shù)陌踩?,https在http的基礎(chǔ)上加入了ssl協(xié)議,ssl協(xié)議依靠證書來(lái)驗(yàn)證服務(wù)器的身份,并為瀏覽器和服務(wù)器之間的通信加密。要想將http升級(jí)為https,只需要給http站點(diǎn)增加一個(gè)CA證書即可。

目前獲取CA證書有兩種途徑:

  1. 購(gòu)買收費(fèi)的CA證書
  2. 獲取免費(fèi)的證書

收費(fèi)的CA證書各大服務(wù)提供商都有賣,如阿里云、騰訊云等。

【系統(tǒng)架構(gòu)】如何升級(jí)到https?一個(gè)腳本幫你搞定,且永久免費(fèi)

收費(fèi)的證書不便宜,從阿里云官方網(wǎng)站看,它的價(jià)格可以從幾千元到上萬(wàn)元不等。

【系統(tǒng)架構(gòu)】如何升級(jí)到https?一個(gè)腳本幫你搞定,且永久免費(fèi)

這對(duì)于小公司平臺(tái),甚至是個(gè)人站點(diǎn)來(lái)說(shuō),是一個(gè)不小的開(kāi)支。

Letsencrypt是一個(gè)免費(fèi)、自動(dòng)化和開(kāi)放的證書頒發(fā)機(jī)構(gòu),其頒發(fā)的證書一次有效期為三個(gè)月,但是只要能持續(xù)更新,基本可以永久使用。

今天推薦的這個(gè)腳本,實(shí)現(xiàn)了 acme 協(xié)議, 可以幫你持續(xù)自動(dòng)從Letsencrypt更新CA證書。下載地址如下:

https://github.com/Neilpang/

安裝

安裝很簡(jiǎn)單,一個(gè)命令即可:

curl https://get. | sh

普通用戶和 root 用戶都可以安裝使用。安裝過(guò)程進(jìn)行了以下幾步:

1、把安裝到你的home目錄下:

~/./

并創(chuàng)建 一個(gè) bash 的 alias,方便你使用:alias =~/./

2、自動(dòng)為你創(chuàng)建 cronjob,每天 0:00 點(diǎn)自動(dòng)檢測(cè)所有的證書。如果快過(guò)期了,需要更新,則會(huì)自動(dòng)更新證書,安裝過(guò)程不會(huì)污染已有的系統(tǒng)任何功能和文件,所有的修改都限制在安裝目錄中: ~/./

生成證書

實(shí)現(xiàn)了 acme 協(xié)議支持的所有驗(yàn)證協(xié)議, 一般有兩種方式驗(yàn)證: http 和 dns 驗(yàn)證。

1、http 方式需要在你的網(wǎng)站根目錄下放置一個(gè)文件, 來(lái)驗(yàn)證你的域名所有權(quán),完成驗(yàn)證,然后就可以生成證書了。

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

會(huì)全自動(dòng)的生成驗(yàn)證文件, 并放到網(wǎng)站的根目錄,然后自動(dòng)完成驗(yàn)證。最后會(huì)聰明的刪除驗(yàn)證文件,整個(gè)過(guò)程沒(méi)有任何副作用。

如果你用的是apache服務(wù)器, 還可以智能的從 apache的配置中自動(dòng)完成驗(yàn)證,你不需要指定網(wǎng)站根目錄:

--issue -d mydomain.com --apache

如果你用的是nginx服務(wù)器,或者反代,還可以智能的從 nginx的配置中自動(dòng)完成驗(yàn)證,你不需要指定網(wǎng)站根目錄:

--issue -d mydomain.com --nginx

注意:無(wú)論是 apache 還是 nginx 模式,在完成驗(yàn)證之后,會(huì)恢復(fù)到之前的狀態(tài),都不會(huì)私自更改你本身的配置。好處是你不用擔(dān)心配置被搞壞,但也有一個(gè)缺點(diǎn),你需要自己配置 ssl 的配置,否則,只能成功生成證書,你的網(wǎng)站還是無(wú)法訪問(wèn)https。 但是為了安全,你還是自己手動(dòng)改配置吧。

如果你還沒(méi)有運(yùn)行任何 web 服務(wù),80 端口是空閑的, 那么 還能假裝自己是一個(gè)webserver, 臨時(shí)聽(tīng)在80 端口,完成驗(yàn)證:

--issue -d mydomain.com --standalone

2、dns 方式,在域名上添加一條 txt 解析記錄,驗(yàn)證域名所有權(quán)。

這種方式的好處是,你不需要任何服務(wù)器,不需要任何公網(wǎng) ip,只需要 dns 的解析記錄即可完成驗(yàn)證。不過(guò),壞處是,如果不同時(shí)配置 Automatic DNS API,使用這種方式 將無(wú)法自動(dòng)更新證書,每次都需要手動(dòng)再次重新解析驗(yàn)證域名所有權(quán)。

--issue --dns -d mydomain.com

然后, 會(huì)生成相應(yīng)的解析記錄顯示出來(lái),你只需要在你的域名管理面板中添加這條 txt 記錄即可。

等待解析完成之后, 重新生成證書:

--renew -d mydomain.com

注意:第二次這里用的是 --renew

dns 方式的真正強(qiáng)大之處在于可以使用域名解析商提供的 api 自動(dòng)添加 txt 記錄完成驗(yàn)證。

目前支持 cloudflare, dnspod, cloudxns, godaddy 以及 ovh 等數(shù)十種解析商的自動(dòng)集成。

copy/安裝 證書

前面證書生成以后,接下來(lái)需要把證書 copy 到真正需要用它的地方。

注意:默認(rèn)生成的證書都放在安裝目錄下:~/./,請(qǐng)不要直接使用此目錄下的文件。例如,不要直接讓 nginx/apache 的配置文件使用這下面的文件。這里面的文件都是內(nèi)部使用,而且目錄結(jié)構(gòu)可能會(huì)變化。

正確的使用方法是使用 --installcert 命令,并指定目標(biāo)位置,然后證書文件會(huì)被copy到相應(yīng)的位置,例如:

--installcert -d <domain>.com \

--key-file /etc/nginx/ssl/<domain>.key \

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

--reloadcmd 'service nginx force-reload'

一個(gè)小提醒,這里用的是 service nginx force-reload,不是 service nginx reload,據(jù)測(cè)試, reload并不會(huì)重新加載證書,所以用的 force-reload。

Nginx 的配置 ssl_certificate 使用 /etc/nginx/ssl/fullchain.cer,而非 /etc/nginx/ssl/<domain>.cer ,否則 SSL Labs 的測(cè)試會(huì)報(bào) Chain issues Incomplete 錯(cuò)誤。

--installcert命令可以攜帶很多參數(shù),來(lái)指定目標(biāo)文件。并且可以指定 reloadcmd, 當(dāng)證書更新以后,reloadcmd會(huì)被自動(dòng)調(diào)用,讓服務(wù)器生效。

值得注意的是,這里指定的所有參數(shù)都會(huì)被自動(dòng)記錄下來(lái),并在將來(lái)證書自動(dòng)更新以后,被再次自動(dòng)調(diào)用。

更新證書

目前證書在 60 天以后會(huì)自動(dòng)更新,你無(wú)需任何操作。今后有可能會(huì)縮短這個(gè)時(shí)間,不過(guò)都是自動(dòng)的,你不用關(guān)心。

更新

目前由于 acme 協(xié)議和 Letsencrypt CA 都在頻繁的更新,因此 也經(jīng)常更新以保持同步。

升級(jí) 到最新版 :

--upgrade

如果你不想手動(dòng)升級(jí), 可以開(kāi)啟自動(dòng)升級(jí):

--upgrade --auto-upgrade

之后, 就會(huì)自動(dòng)保持更新了。

你也可以隨時(shí)關(guān)閉自動(dòng)更新:

--upgrade --auto-upgrade 0

6. 出錯(cuò)怎么辦:

如果出錯(cuò), 請(qǐng)?zhí)砑?debug log:

--issue ..... --debug

或者:

--issue ..... --debug 2

最后,本文并非完全的使用說(shuō)明,還有很多高級(jí)的功能,更高級(jí)的用法請(qǐng)參看其他 wiki 頁(yè)面。

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

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多