0基礎(chǔ)自學(xué)linux運(yùn)維-2.15-使用acme.sh安裝免費(fèi)ssl證書并自動(dòng)更新

需求

公司想弄一個(gè)https最好是免費(fèi)的,小公司如果付費(fèi)的話一年也得花不少費(fèi)用呢?

一般免費(fèi)的ssl是30-60試用的,如果想一直免費(fèi)下去,是不是寫了下腳本,到期就重新購(gòu)買一個(gè)新的就行了?還真有一個(gè)腳本名字叫“acme.sh”,它是自動(dòng)給你更新證書的

acme.sh教程地址:

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

中文使用說(shuō)明:https://github.com/Neilpang/acme.sh/wiki/說(shuō)明

一、實(shí)驗(yàn)環(huán)境

1. centos6.5 64位,用yum安裝的nginx

2. nginx的ssl證書

二、acme.sh安裝

建議你拿一個(gè)線上在跑的域名,新建立一個(gè)二級(jí)域名來(lái)測(cè)試,我這里所有的安裝都是直接使用root用戶。

#用curl https://get.acme.sh | sh 安裝發(fā)現(xiàn)有問(wèn)題,改用win下用git bash執(zhí)行g(shù)it clone

#直接去官網(wǎng)手工下載zip包再上傳

#安裝依賴

yum install socat

cd /disk1/tools/

#上傳zip

mv acme.sh-master.zip acme.sh.zip

unzip acme.sh.zip

mv acme.sh-master acme.sh

cd acme.sh

./acme.sh --install

#并創(chuàng)建 一個(gè) bash 的 alias

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

三、生成證書

#dns 方式

acme.sh 目前支持 cloudflare, dnspod, cloudxns, godaddy 以及 ovh 等數(shù)十種解析商的自動(dòng)集成,更詳細(xì)的api 用法: https://github.com/Neilpang/acme.sh/wiki/dnsapi

#我這里用的是dnspod解釋的,所以用它生成token

#登陸dnspod-->用戶中心-->安全設(shè)置-->旁邊的“API Token”,生成一個(gè)token

#在ssh上執(zhí)行

cd /root/.acme.sh/

export DP_Id="dnspod ID值"

export DP_Key="dnspod Token值"

#為了方便生成一個(gè)通知證書

acme.sh --issue --dns dns_dp -d hualinux.com -d *.hualinux.com

#建立nginx證書

mkdir /etc/nginx/ssl

#copy/安裝 證書,我這里的域名是hualinux

acme.sh? --installcert? -d? hualinux.com? \

? ? ? ? --key-file? /etc/nginx/ssl/allhualinux.key \

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

? ? ? ? --reloadcmd? "service nginx force-reload"

四、nginx配置ssl

server {

? ? listen? ? ? 80;

? ? listen? ? ? 443 ssl;

? ? #ssl on;

? ? server_name? t1.hualinux.com;

? ? #by hua

? ? ssl_certificate? /etc/nginx/ssl/fullchain.cer;

? ? ssl_certificate_key /etc/nginx/ssl/allhualinux.key;

? ? ...

? ? index index.php

? ? ...

}


五、更新 acme.sh

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

默認(rèn)已經(jīng)加入定時(shí)任務(wù)中

8 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null

升級(jí) acme.sh 到最新版 :

acme.sh --upgrade

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

acme.sh? --upgrade? --auto-upgrade

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

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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