使用acme.sh生成https證書

一、安裝

參考 acme.sh文檔

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

無法下載時可以使用下面的代理方式:

$ curl https://mirror.ghproxy.com/https://raw.githubusercontent.com/Neilpang/acme.sh/master/acme.sh | INSTALLONLINE=1  sh

使用命令source ~/.bashrc讓alias生效,或者再次執(zhí)行

$ alias acme.sh=~/.acme.sh/acme.sh

二、添加DNSAPI密鑰

我使用阿里云的域名,所以直接先添加阿里云的dnsapi, 登錄阿里云控制臺-頭像-accesskeys, 或者登錄后直接打開 鏈接,添加并獲取AccessKeyIDAccessKeySecret,存在舊的也可以直接使用。

其他類型的可以參考dnsapi文檔

三、生成證書

使用阿里云的dns,所以下面的dns參數(shù)是dns_ali, 例如我們申請zqyu.com這個域名的泛域名證書

$ export Ali_Key="[參數(shù)是上面申請的AccessKeyID]"
$ export Ali_Secret="[參數(shù)是上面申請的AccessKeySecret]"
$ acme.sh --issue --dns dns_ali -d zqyu.com -d *.zqyu.com

如果下載失敗可以使用 --debug參數(shù)打印更多的信息,例如

$ acme.sh --issue --dns dns_ali -d zqyu.com-d *.zqyu.com --debug

等待證書下載并保存,acme.sh 用到的所有文件都放在路徑 ~/.acme.sh/, 下載的證書也全部放在這里。

四、安裝證書

官方文檔建議不要直接使用這個目錄下的文件,所以使用命令將生成的證書安裝到其他的目錄。

例如nginx使用的證書,使用下面的命令將證書復(fù)制到/etc/letsencrypt/zqyu.com/nginx目錄中

$ acme.sh --install-cert -d zqyu.com \
--key-file       /etc/letsencrypt/zqyu.com/nginx/key.pem  \
--fullchain-file /etc/letsencrypt/zqyu.com/nginx/cert.pem

nginx中使用證書

ssl_certificate /etc/letsencrypt/zqyu.com/nginx/cert.pem;
ssl_certificate_key /etc/letsencrypt/zqyu.com/nginx/key.pem;

重新加載nginx配置

$ nginx -s reload

五、證書更新

acme.sh 安裝時默認(rèn)添加了一個自動更新證書的定時任務(wù)

57 0 * * * "~/.acme.sh"/acme.sh --cron --home "~/.acme.sh" > /dev/null

所以證書是可以自動更新了,上面的dnsapi賬號信息保存到了~/.acme.sh/account.conf文件中,安裝的目錄保存到了~/.acme.sh/zqyu.com/zqyu.com.conf,自動更新時會讀取這些信息。

更新證書之后需要重新加載nginx配置

$ nginx -s reload

可以將命令也加到定時任務(wù)里面

57 0 * * * "~/.acme.sh"/acme.sh --cron --home "~/.acme.sh" > /dev/null && nginx -s reload

六、 acme.sh 更新

手動更新

$ acme.sh --upgrade

設(shè)置自動更新

acme.sh --upgrade --auto-upgrade

取消自動更新

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

七、 acme.sh 卸載

  1. 刪除文件夾 ~/.acme.sh
  2. 使用 crontab -e 刪除生成的定時任務(wù)
  3. 刪除別名 unalias acme.sh
  4. 刪除 ~/.bashrc 中的 . "/root/.acme.sh/acme.sh.env"
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容