使用acme.sh手動更新ssl證書,千萬別忘了更新CDN證書信息

羽度非凡 發佈 2022-12-23T19:19:10.000704+00:00

#頭條創作挑戰賽#雖然現在多數站長都喜歡使用寶塔面板,但我還是更傾向於原生化的web環境,所以我的伺服器環境都是直接安裝LAMP或LNMP套件包,目前這類套件包的安裝也比較簡單,一些開發者直接打包了相應的一鍵安裝包,SSL證書的申請和安裝也包含在一鍵安裝包中。

雖然現在多數站長都喜歡使用寶塔面板,但我還是更傾向於原生化的web環境,所以我的伺服器環境都是直接安裝LAMP或LNMP套件包,目前這類套件包的安裝也比較簡單,一些開發者直接打包了相應的一鍵安裝包,SSL證書的申請和安裝也包含在一鍵安裝包中。


由於免費的SSL證書一般都有有效期,為了管理更加方便,多數環境安裝包集成了自動更新SSL證書的功能,早期會使用certbot-auto設置自動化更新腳本任務,但現在certbot-auto已經過時,大家已經改用acme.sh作為SSL證書的簽發工具了。


不過有時候acme.sh偶爾也會卡殼,導致自動更新SSL證書的功能失效,所以有時候就需要手動更新SSL證書,但手動更新SSL證書並不需要去手動申請、下載、安裝……一系列繁瑣操作,同樣藉助acme.sh可以直接一步完成。


例如我的「非凡博客」目前使用的是Let's Encrypt免費證書,證書有效期是90天,正好現在距離證書到期還有不到半個月,所以我手動更新了一下。

更新的方法:

1.打開終端,連接伺服器,更新acme.sh腳本工具

命令:acme.sh --upgrade

2.使用acme.sh更新伺服器本地所有SSL證書

命令:acme.sh --renew-all

如果你的伺服器有多個網站的SSL證書,而你只想更新其中一個網站的SSL證書,可以使用「-d 域名」參數,例如

命令:acme.sh --renew -d 域名

我這裡兩個網站的SSL證書日期一樣,所以為了方便管理,每次都是直接同時更新兩個網站的SSL證書。

此時網站對應的SSL證書有效期已經延長了,如果你沒有使用CDN雲加速之類的工具,那麼此時查詢網站域名對應的SSL證書有效期,已經是新的時效日期了,但如果你和我一樣使用了CDN雲加速工具的話,別忘了在CDN管理平台重新部署一次SSL證書。

從伺服器端下載網站對應的SSL證書文件,我這裡的SSL證書路徑是「/usr/local/apache/conf/ssl/域名/」,至於其他環境工具,視情況而定了。

我這裡使用的是百度雲加速,「證書」一項直接把fullchain.cer文件內容複製進去,「私鑰」一項直接把「域名.key」文件內容複製進去,然後把舊的證書部署取消並刪除。

再次查詢SSL證書有效期,可以看到SSL證書的時效日期已經更新了。

關鍵字: