成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何升級到Https?一個腳本幫你搞定,且永久免費

安全 應用安全
現在很多站長都會考慮將自己的站點從http升級到https,不僅是基于安全的考慮,有的也是因為第三方平臺的限制,如谷歌瀏覽器會將http站點標記為不安全的站點,微信平臺要求接入的微信小程序必須使用https等。

 現在很多站長都會考慮將自己的站點從http升級到https,不僅是基于安全的考慮,有的也是因為第三方平臺的限制,如谷歌瀏覽器會將http站點標記為不安全的站點,微信平臺要求接入的微信小程序必須使用https等。

[[287204]]

那如何將一個http站點升級為https站點呢?

http與https的區別

為了數據傳輸的安全,https在http的基礎上加入了ssl協議,ssl協議依靠證書來驗證服務器的身份,并為瀏覽器和服務器之間的通信加密。要想將http升級為https,只需要給http站點增加一個CA證書即可。

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

  • 購買收費的CA證書
  • 獲取免費的證書

收費的CA證書各大服務提供商都有賣,如阿里云、騰訊云等。

收費的證書不便宜,從阿里云官方網站看,它的價格可以從幾千元到上萬元不等。

 

這對于小公司平臺,甚至是個人站點來說,是一個不小的開支。

Letsencrypt是一個免費、自動化和開放的證書頒發機構,其頒發的證書一次有效期為三個月,但是只要能持續更新,基本可以永久使用。

今天推薦的這個腳本acme.sh,實現了 acme 協議, 可以幫你持續自動從Letsencrypt更新CA證書。下載地址如下:

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

安裝 acme.sh

安裝acme.sh很簡單,一個命令即可:

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

普通用戶和 root 用戶都可以安裝使用。安裝過程進行了以下幾步:

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

  1. ~/.acme.sh/ 

并創建 一個 bash 的 alias,方便你使用:alias acme.sh=~/.acme.sh/acme.sh

2、自動為你創建 cronjob,每天 0:00 點自動檢測所有的證書。如果快過期了,需要更新,則會自動更新證書,安裝過程不會污染已有的系統任何功能和文件,所有的修改都限制在安裝目錄中: ~/.acme.sh/

生成證書

acme.sh 實現了 acme 協議支持的所有驗證協議, 一般有兩種方式驗證: http 和 dns 驗證。

1、http 方式需要在你的網站根目錄下放置一個文件, 來驗證你的域名所有權,完成驗證,然后就可以生成證書了。

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

acme.sh 會全自動的生成驗證文件, 并放到網站的根目錄,然后自動完成驗證。最后會聰明的刪除驗證文件,整個過程沒有任何副作用。

如果你用的是apache服務器,acme.sh 還可以智能的從 apache的配置中自動完成驗證,你不需要指定網站根目錄:

  1. acme.sh --issue -d mydomain.com --apache 

如果你用的是nginx服務器,或者反代,acme.sh還可以智能的從 nginx的配置中自動完成驗證,你不需要指定網站根目錄:

  1. acme.sh --issue -d mydomain.com --nginx 

注意:無論是 apache 還是 nginx 模式,acme.sh在完成驗證之后,會恢復到之前的狀態,都不會私自更改你本身的配置。好處是你不用擔心配置被搞壞,但也有一個缺點,你需要自己配置 ssl 的配置,否則,只能成功生成證書,你的網站還是無法訪問https。 但是為了安全,你還是自己手動改配置吧。

如果你還沒有運行任何 web 服務,80 端口是空閑的, 那么 acme.sh 還能假裝自己是一個webserver, 臨時聽在80 端口,完成驗證:

  1. acme.sh --issue -d mydomain.com --standalone 

2、dns 方式,在域名上添加一條 txt 解析記錄,驗證域名所有權。

這種方式的好處是,你不需要任何服務器,不需要任何公網 ip,只需要 dns 的解析記錄即可完成驗證。不過,壞處是,如果不同時配置 Automatic DNS API,使用這種方式 acme.sh 將無法自動更新證書,每次都需要手動再次重新解析驗證域名所有權。

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

然后,acme.sh 會生成相應的解析記錄顯示出來,你只需要在你的域名管理面板中添加這條 txt 記錄即可。

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

  1. acme.sh --renew -d mydomain.com 

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

dns 方式的真正強大之處在于可以使用域名解析商提供的 api 自動添加 txt 記錄完成驗證。

acme.sh 目前支持 cloudflare, dnspod, cloudxns, godaddy 以及 ovh 等數十種解析商的自動集成。

copy/安裝 證書

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

注意:默認生成的證書都放在安裝目錄下:~/.acme.sh/,請不要直接使用此目錄下的文件。例如,不要直接讓 nginx/apache 的配置文件使用這下面的文件。這里面的文件都是內部使用,而且目錄結構可能會變化。

正確的使用方法是使用 --installcert 命令,并指定目標位置,然后證書文件會被copy到相應的位置,例如:

  1. acme.sh --installcert -d <domain>.com \ 
  2.  
  3. --key-file /etc/nginx/ssl/<domain>.key \ 
  4.  
  5. --fullchain-file /etc/nginx/ssl/fullchain.cer \ 
  6.  
  7. --reloadcmd "service nginx force-reload" 

一個小提醒,這里用的是 service nginx force-reload,不是 service nginx reload,據測試, reload并不會重新加載證書,所以用的 force-reload。

Nginx 的配置 ssl_certificate 使用 /etc/nginx/ssl/fullchain.cer,而非 /etc/nginx/ssl/.cer ,否則 SSL Labs 的測試會報 Chain issues Incomplete 錯誤。

--installcert命令可以攜帶很多參數,來指定目標文件。并且可以指定 reloadcmd, 當證書更新以后,reloadcmd會被自動調用,讓服務器生效。

值得注意的是,這里指定的所有參數都會被自動記錄下來,并在將來證書自動更新以后,被再次自動調用。

更新證書

目前證書在 60 天以后會自動更新,你無需任何操作。今后有可能會縮短這個時間,不過都是自動的,你不用關心。

更新 acme.sh

目前由于 acme 協議和 Letsencrypt CA 都在頻繁的更新,因此 acme.sh 也經常更新以保持同步。

升級 acme.sh 到最新版 :

  1. acme.sh --upgrade 

如果你不想手動升級, 可以開啟自動升級:

  1. acme.sh --upgrade --auto-upgrade 

之后, acme.sh 就會自動保持更新了。

你也可以隨時關閉自動更新:

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

6. 出錯怎么辦:

如果出錯, 請添加 debug log:

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

或者:

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

最后,本文并非完全的使用說明,還有很多高級的功能,更高級的用法請參看其他 wiki 頁面。

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

 

 

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2020-01-14 11:19:38

網絡安全網絡安全技術周刊

2017-09-06 17:30:41

網站升級HTTPS

2021-10-05 16:00:58

Windows 10Windows 11微軟

2011-09-27 09:13:16

Ubuntu 11.0

2018-06-11 17:27:56

APP流量華為

2020-01-13 10:00:32

升級Windows 10Windows

2010-03-08 15:04:29

Office 2010微軟

2018-06-20 15:50:38

JDK9JVMJDK10

2011-07-29 10:22:37

Ubuntu One

2022-03-25 08:31:09

ReactReact 18升級

2015-07-29 10:21:03

微軟Windows 10升級

2013-11-27 09:38:11

OpenSUSE 13OpenSUSE 12

2022-08-28 20:34:42

LinuxLinux Mint

2021-10-20 12:47:06

UbuntuUbuntu 21.1Linux

2013-10-21 10:07:30

微軟Windows 8.1理由

2017-03-09 17:02:23

UbuntuLinux升級

2022-02-12 19:30:22

KDE PlasmaPlasma桌面

2021-07-06 05:04:50

MDK源代碼文件

2011-02-18 09:06:15

ChromeChrome DevLinux

2015-10-10 17:41:41

Kernel內核Ubuntu
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区三区四区 | 国产精品爱久久久久久久 | 日韩日韩日韩日韩日韩日韩日韩 | 91www在线观看 | 欧美一区二区三区视频在线观看 | 一区二区精品 | 91香蕉| 亚洲成人激情在线观看 | www日本在线播放 | 狠狠色综合欧美激情 | 日韩一区二区三区视频 | 亚洲成av片人久久久 | 欧美精品91爱爱 | 日韩一区二区三区在线看 | 在线视频 亚洲 | 一区视频在线播放 | 久久久久亚洲精品 | 亚洲第一视频网站 | 亚洲一区二区中文字幕在线观看 | 欧美精品99| 国产一区二区三区四区三区四 | 国产精品国产a | 久久伊人亚洲 | 欧美不卡| av国产精品毛片一区二区小说 | 国产精品国产三级国产aⅴ无密码 | 日韩免| 日本不卡一区二区 | a在线免费观看视频 | 久久精品国产久精国产 | 国产精品久久久久久久久免费 | 国产乱码精品一区二区三区中文 | 自拍偷拍精品 | 久久久国产一区二区三区 | 亚洲精品国产一区 | 国产四虎 | 精品久久久久久久久久 | 免费观看一级特黄欧美大片 | 成人在线视频免费观看 | 麻豆国产一区二区三区四区 | 91天堂网 |