内容简介:如果你不知道這是什麼,請參考我之前寫的在申請 Wildcard 憑證之前,請先確認你的如果你之前有申請過憑證,請先確認到期日:
Let's Encrypt
如果你不知道這是什麼,請參考我之前寫的 HTTPS 連線,使用 Let's Encrypt 。
在申請 Wildcard 憑證之前,請先確認你的 Certbot 是最新版本 (不能低於 0.22.0 版):
certbot --version # 顯示 certbot 0.31.0
如果你之前有申請過憑證,請先確認到期日:
certbot certificates # 會列出所有憑證及到期日
注意!到期日必須少於 30 天才能再次申請。
取得 Wildcard 憑證
請輸入以下 shell 指令:
certbot certonly --manual --agree-tos \ -d "*.你的網域.com" \ -d 你的網域.com \ --email 你的電子郵件信箱 \ --preferred-challenges dns \ --manual-public-ip-logging-ok \ --server https://acme-v02.api.letsencrypt.org/directory \
- --manual:手動安裝憑證。
- --agree-to:同意 ACME 用戶協議,不指定的話會在執行時問你。
- -d 接上要申請的網域:萬用字元(*)是給子網域用,父網域要單獨申請。
- --email:接收到期通知的 email。
- --preferred-challenges dns:使用 DNS 方式申請(Wildcard 只能用此方式)。
- --manual-public-ip-logging-ok:自動接受「詢問是否記錄 IP」,不指定的話會在執行時問你。
- --server:使用 Let's Encrypt ACME2 的伺服器 (必須使用 v2 伺服器)。
註:倒斜線是 shell 指令的換行符號,避免指令太長不容易閱讀。
執行後會得到一個網址及一段 hash code,它們是一對的,記得現在不要按到 Enter
_acme-challenge.你的網域.com 一段 hash code
注意!有幾個 -d 就會有幾組 hash code,一次只會顯示一組。
接下來請到你的 DNS 上去增加 TXT 紀錄,名稱為 _acme-challenge
,類型為 TXT
,值為 那段 hash code
:
_acme-challenge TXT 它給的 hash code
等一陣子 (可能少於一分鐘,也可能比這個久,看你的 DNS),確認 _acme-challenge
可以連上了才回到 certbot 按繼續,可以使用以下指令來確認:
dig TXT _acme-challenge.你的網域.com
註: dig 是網域名稱指令,請確認有安裝,或用 nslookup 。
看到以下內容 (hash code 有出現) 就可以回去按 Enter
;; ANSWER SECTION: _acme-challenge.你的網域.com. 1799 IN TXT 它給的 hash code
如果你有多個 -d ,這時會出現第二組 hash code,請重覆以上動作,TXT 的名稱可以重覆。
當你按下最後一個 Enter 後就完成了,結果會顯示你的憑證被安裝在哪裡及到期日。記得把 DNS 上的 TXT 紀錄刪掉。
IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/你的網域.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/你的網域.com/privkey.pem Your cert will expire on 2019-05-26. To obtain a new or tweaked version of this certificate in the future, simply run certbot-auto again. To non-interactively renew *all* of your certificates, run "certbot renew"
最後就是把它加到你的伺服器的 SSL 設定,這樣就完成了。
ssl_certificate /etc/letsencrypt/live/你的網域.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/你的網域.com/privkey.pem;
記得讓伺服器重新載入
nginx -s reload
下次到期時,可以使用以下指令來更新:
certbot renew
註:我也是第一次使用,不確定 renew 時需不需要重做一次 DNS 的驗證,如果需要,就必須重做一次上面的動作;如果不需要,可以直接加入排程器,定時更新。
刪除不要的憑證
如果你像我一樣,之前已經申請了好幾個子網域的憑證,現在這些都不需要了,可以將它們刪除。先來看看之前申請了哪些憑證:
ls /etc/letsencrypt/live
列出的目錄名稱即是等下要用到的 --cert-name
參數的值:
certbot delete --cert-name 子網域.網域.com
執行後就會刪除該子網域的所有資料;刪除指令執行的實際動作,其實只是去刪除 3 個目錄下的網域目錄,所以你也可以手動刪除:
rm -rf /etc/letsencrypt/archive/網域名稱/ rm -rf /etc/letsencrypt/live/網域名稱/ rm -rf /etc/letsencrypt/renewal/網域名稱.conf
以上所述就是小编给大家介绍的《Let's Encrypt Wildcard 申請流程》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 【Tomcat学习笔记】启动流程分析--总体流程
- 【Tomcat学习笔记】启动流程分析--总体流程
- 从0到1创建高效的产品缺陷管理流程(1):缺陷是什么? 如何建立缺陷管理流程?
- Activiti6.0教程(2) - 初始化表, 部署流程, 启动流程, 创建的表介绍
- 网卡收包流程
- Launcher 启动流程
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Node.js实战
[美] Mike Cantelon、[美] TJ Holowaychuk、[美] Nathan Rajlich / 吴海星 / 人民邮电出版社 / 2014-5 / 69.00元
服务器端JavaScript?没错。Node.js是一个JavaScript服务器,支持可伸缩的高性能Web应用。借助异步I/O,这个服务器可以同时做很多事情,能满足聊天、游戏和实时统计等应用的需求。并且既然是JavaScript,那你就可以全栈使用一种语言。 本书向读者展示了如何构建产品级应用,对关键概念的介绍清晰明了,贴近实际的例子,涵盖从安装到部署的各个环节,是一部讲解与实践并重的优秀......一起来看看 《Node.js实战》 这本书的介绍吧!