一鍵快速申請(qǐng)Let's Encrypt泛域名SSL證書及SSL證書安裝方法
時(shí)間:2023-02-23 05:51:02 | 來(lái)源:建站知識(shí)
時(shí)間:2023-02-23 05:51:02 來(lái)源:建站知識(shí)
一鍵快速申請(qǐng)Let's Encrypt泛域名SSL證書及SSL證書安裝方法:早年,如果我們網(wǎng)站項(xiàng)目需要安裝SSL證書那基本上只有購(gòu)買付費(fèi)證書,而且成本還相對(duì)比較高。從Let's Encrypt等服務(wù)商都相繼提供免費(fèi)SSL證書之后,以及普及SSL證書的應(yīng)用之后,我們看到原本很多付費(fèi)且較高的SSL證書也比較便宜。如今我們?nèi)绻枰?gòu)買付費(fèi)證書成本基本上也與一個(gè)域名的價(jià)格差不多甚至更便宜。
如果個(gè)人或者普通項(xiàng)目,我們其實(shí)完全沒有必要購(gòu)買付費(fèi)證書,使用Let's Encrypt這樣的免費(fèi)證書足矣,而且現(xiàn)在Let's Encrypt也支持申請(qǐng)泛域名證書。這對(duì)于原來(lái)只能單一申請(qǐng)且使用的用戶來(lái)說(shuō),又一個(gè)利好消息。不過(guò)對(duì)于一般的用戶而言,基本上也用不上泛域名SSL證書。
一般我們SSL證書都用于網(wǎng)站項(xiàng)目,且大部分的WEB一鍵包、WEB面板都支持快速安裝SSL證書,且基本上都默認(rèn)將Let's Encrypt作為免費(fèi)證書內(nèi)置。但是,因?yàn)長(zhǎng)et's Encrypt商家才推出免費(fèi)泛域名證書,所以對(duì)于泛域名證書的申請(qǐng)還沒有提供快速申請(qǐng)。在這篇文章中,需要分享的是我們利用網(wǎng)友提供的腳本可以快速給網(wǎng)站申請(qǐng)泛域名證書。
關(guān)于免費(fèi)SSL證書申請(qǐng),老部落還有幾篇文章可以參考:1、申請(qǐng)騰訊云免費(fèi)DV SSL證書及Apache/Nginx/IIS/Tomcat證書安裝
2、阿里云免費(fèi)DV SSL證書申請(qǐng)自動(dòng)下發(fā)及Apache/Nginx/IIS/Tomcat安裝SSL
3、景安免費(fèi)1年基礎(chǔ)級(jí)DV SSL證書申請(qǐng)及網(wǎng)站HTTPS加密安裝
第一、Let's Encrypt泛域名申請(qǐng)準(zhǔn)備工作
1、了解申請(qǐng)?jiān)?br>
這篇文章后面用到的一鍵腳本申請(qǐng)Let's Encrypt泛域名SSL證書,是利用第三方域名DNS API接口快速申請(qǐng)的,這樣。無(wú)論我們Linux VPS、服務(wù)器使用的何種WEB環(huán)境都可以快速申請(qǐng)。
2、申請(qǐng)DNS API
根據(jù)腳本的介紹,提供且支持我們常見的第三方DNS,包括DNSPOD、CLOUDXNS、阿里云DNS、GoDaddy、CLOUDFLARE、PowerDNS、Linode 等40多家DNS服務(wù)商。如果我們域名有用哪家的DNS,然后到對(duì)應(yīng)的商家申請(qǐng)API。
舉個(gè)例子:如果我們域名申請(qǐng)DNSPOD API,如上圖申請(qǐng)之后需要記錄好ID和Token。
export DP_Id="1234"
export DP_Key="sADDsdasdgdsf"
然后根據(jù)對(duì)應(yīng)的標(biāo)準(zhǔn)準(zhǔn)備好,后面需要在VPS服務(wù)提交。
3、自定義腳本
~/.acme.sh/acme.sh --issue --dnsdns_dp-d
http://laobuluo.com -d *.
http://laobuluo.com需要注意的問題:我們需要到
https://github.com/Neilpang/acme.sh/blob/master/dnsapi/README.md,查看支持的DNS服務(wù)商,以及看到對(duì)應(yīng)的API格式和自定義腳本設(shè)置。每個(gè)DNS服務(wù)商需要用的稍微不同,比如DNSPOD,我們看到上標(biāo)注是dns_dp。
第二、Let's Encrypt泛域名申請(qǐng)過(guò)程
1、準(zhǔn)備VPS和登入
這里我們需要準(zhǔn)備好已經(jīng)安裝過(guò)WEB環(huán)境的VPS,以及域名解析到服務(wù)器且DNS是使用的對(duì)應(yīng)的準(zhǔn)備好的。如果我們不放心可能產(chǎn)生的問題,那就先將服務(wù)器備份。
2、安裝軟件和acme.sh
apt-get update && apt-get install curl -y
&& apt-get install cron -y && apt-get install socat -y
//Debian/Ubuntu系統(tǒng)
yum update && yum install curl -y && yum install cron -y && yum install socat -y //CentOS系統(tǒng)
curl
https://get.acme.sh | sh
3、提交API和腳本申請(qǐng)
我們登錄SSH之后,先將自己的API丟進(jìn)去,然后再將申請(qǐng)腳本丟進(jìn)去會(huì)自動(dòng)申請(qǐng)。
看到上面界面就表示申請(qǐng)成功。
4、檢查證書
在"/root/.acme.sh/"對(duì)應(yīng)的域名下,可以看到上圖的這么多文件,其實(shí)我們只需要fullchain.cer和域名前綴.key文件就可以的。
第三、Let's Encrypt泛域名SSL證書安裝
根據(jù)上文我們可以看到只需要2個(gè)文件就可以安裝證書,但是我們需要先將證書拷貝到對(duì)應(yīng)的證書專門目錄中,不要直接引用這個(gè)目錄文件。
~/.acme.sh/acme.sh --installcert -d .com /
--key-file /etc/nginx/ssl/.key /
--fullchain-file /etc/nginx/ssl/fullchain.cer /
--reloadcmd "service nginx force-reload"
這里用的是
service nginx force-reload, 不是
service nginx reload,
據(jù)測(cè)試, reload 并不會(huì)重新加載證書, 所以用的 force-reload)。Nginx 的配置 ssl_certificate 使用
/etc/nginx/ssl/fullchain.cer ,而非 /etc/nginx/ssl/.cer ,否則 SSL Labs 的測(cè)試會(huì)報(bào)
Chain issues Incomplete 錯(cuò)誤。
第四、小結(jié)
1、通過(guò)上面腳本的辦法可以快速的結(jié)合域名DNS API申請(qǐng)Let's Encrypt泛域名SSL證書,不需要特定哪種WEB環(huán)境才可以安裝。且不同的DNS渠道使用的API申請(qǐng)和腳本是不同的,需要參考官方文檔。
2、申請(qǐng)的Let's Encrypt泛域名證書是自動(dòng)更新的,且我們需要將證書考慮到對(duì)應(yīng)網(wǎng)站目錄在安裝,不要直接用生成的目錄安裝。
本文來(lái)自:https://www.laobuluo.com/1194.html
關(guān)鍵詞:證書,方法,安裝,申請(qǐng)