實戰(zhàn)申請Let's Encrypt永久免費SSL證書過程教程及常見問題

目前Let's Encrypt免費SSL證書默認(rèn)是90天有效期,但是我們也可以到期自動續(xù)約,不影響我們的嘗試和使用

第一、安裝Let's Encrypt前的準(zhǔn)備工作
根據(jù)官方的要求,我們在VPS、服務(wù)器上部署Let's Encrypt免費SSL證書之前,需要系統(tǒng)支持Python2.7以上版本以及支持GIT工具。這個需要根據(jù)我們不同的系統(tǒng)版本進行安裝和升級,因為有些服務(wù)商提供的版本兼容是完善的,尤其是debian環(huán)境兼容性比CentOS好一些。
比如CentOS 6 64位環(huán)境不支持GIT,我們還可以參考"Linux CentOS 6 64位系統(tǒng)安裝Git工具環(huán)境教程"和"9步驟升級CentOS5系統(tǒng)Python版本到2.7"進行安裝和升級。最為 簡單的就是Debian環(huán)境不支持,可以運行"apt-get -y install git"直接安裝支持,如果是CentOS直接運行"yum -y install git-core"支持。這個具體遇到問題在討論和搜索解決方案,因為每個環(huán)境、商家發(fā)行版都可能不同。在這篇文章中,老左采用的是debian 7 環(huán)境。

第二、快速獲取Let's Encrypt免費SSL證書
在之前的博文中老左也分享過幾篇關(guān)于SSL部署的過程,我自己也搞的暈乎暈乎的,獲取證書和布局還是比較復(fù)雜的,Let's Encrypt肯定是考慮到推廣HTTPS的普及型會讓用戶簡單的獲取和部署SSL證書,所以可以采用下面簡單的一鍵部署獲取證書。
PS:在獲取某個站點證書文件的時候,我們需要在安裝PYTHON2.7以及GIT,更需要將域名解析到當(dāng)前VPS主機IP中。

git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto certonly --standalone --email admin@laozuo.org -d laozuo.org -d www.laozuo.org

然后執(zhí)行上面的腳本,我們需要根據(jù)自己的實際站點情況將域名更換成自己需要部署的。

letsencrypt-1.jpg

看到這個界面,直接Agree回車。

letsencrypt-2.jpg

然后看到這個界面表示部署成功。目前根據(jù)大家的反饋以及老左的測試,如果域名是用的國內(nèi)DNS,包括第三那方DNSPOD等,都可能獲取不到域名信息。

letsencrypt-3.jpg

這里我們可以看到有"The server could not connect to the client to verify the domain"的錯誤提示信息,包括也有其他提示錯誤,"The server experienced an internal error :: Error creating new registration"我們在郵局的時候不要用國內(nèi)免費郵局。所以,如果我們是海外域名就直接先用域名自帶的DNS。

第三、Let's Encrypt免費SSL證書獲取與應(yīng)用
在完成Let's Encrypt證書的生成之后,我們會在"/etc/letsencrypt/live/laozuo.org/"域名目錄下有4個文件就是生成的密鑰證書文件。
cert.pem - Apache服務(wù)器端證書
chain.pem - Apache根證書和中繼證書
fullchain.pem - Nginx所需要ssl_certificate文件
privkey.pem - 安全證書KEY文件
如果我們使用的Nginx環(huán)境,那就需要用到fullchain.pem和privkey.pem兩個證書文件,在部署Nginx的時候需要用到(參考:LNMP一鍵包環(huán)境安裝SSL安全證書且部署HTTPS網(wǎng)站URL過程)。在這篇文章中老左就不詳細演示Let's Encrypt證書證書的安裝,后面再重新折騰一篇文章詳細的部署證書的安裝Nginx和Apache。

ssl_certificate /etc/letsencrypt/live/laozuo.org/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/laozuo.org/privkey.pem;

比如我們在Nginx環(huán)境中,只要將對應(yīng)的ssl_certificate和ssl_certificate_key路徑設(shè)置成我們生成的2個文件就可以,最好不要移動和復(fù)制文件,因為續(xù)期的時候直接續(xù)期生成的目錄文件就可以,不需要再手工復(fù)制。

第四、解決Let's Encrypt免費SSL證書有效期問題
我們從生成的文件中可以看到,Let's Encrypt證書是有效期90天的,需要我們自己手工更新續(xù)期才可以。

./letsencrypt-auto certonly --renew-by-default --email admin@laozuo.org -d laozuo.org -d www.laozuo.org

這樣我們在90天內(nèi)再去執(zhí)行一次就可以解決續(xù)期問題,這樣又可以繼續(xù)使用90天。如果我們怕忘記的話也可以制作成定時執(zhí)行任務(wù),比如每個月執(zhí)行一次。

第五、關(guān)于Let's Encrypt免費SSL證書總結(jié)
通過以上幾個步驟的學(xué)習(xí)和應(yīng)用,我們肯定學(xué)會了利用Let's Encrypt免費生成和獲取SSL證書文件,隨著Let's Encrypt的應(yīng)用普及,SSL以后直接免費不需要購買,因為大部分主流瀏覽器都支持且有更多的主流商家的支持和贊助,HTTPS以后看來也是趨勢。在Let's Encrypt執(zhí)行過程在中我們需要解決幾個問題。
A - 域名DNS和解析問題。在配置Let's Encrypt免費SSL證書的時候域名一定要解析到當(dāng)前VPS服務(wù)器,而且DNS必須用到海外域名DNS,如果用國內(nèi)免費DNS可能會導(dǎo)致獲取不到錯誤。
B - 安裝Let's Encrypt部署之前需要服務(wù)器支持PYTHON2.7以及GIT環(huán)境,要不無法部署。
C - Let's Encrypt默認(rèn)是90天免費,需要手工或者自動續(xù)期才可以繼續(xù)使用。
本文固定鏈接: http://www.laozuo.org/7676.html | 老左博客

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

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

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