保持交易與客戶資料隱密性
Let's Encrypt免費憑證取得與安裝全攻略
還記得先前在我們的知識分享文章中有提到Let's encrypt計畫嗎? 很榮幸的本網站獲得此計畫的同意,加入他們的測試名單內,以下我們就把如何加入以及加入後要如何安裝真正的憑證進行說明,如果您也想共襄盛舉的話,也可以依照此步驟試試看,(我們這次用www.certzon.com來嘗試!)
以下是我們申請之後收到的信同意信函內容,如下圖,您有申請成功的話應該也會收到!
首先來到let's Encrypt的官方網站,如下圖https://letsencrypt.org/ ,可以看到目前正在進行Beta的測試!
這時候我們找到下方Public Beta: December 3, 2015的連結,點擊進入!會看到下一頁的說明,如下圖
這時候找到sign up給他點擊進入後,會看到申請的網頁,如下圖,填寫相關的資料後就可加入,請注意,您填寫的網域是必須您申請的(有人在使用),如果您隨便亂填不存在的網域,是不會讓您申請的!
這邊要注意的是有兩個部分
1.請填寫您要保護的網域名稱,如何填寫ㄋ,說明如下:
要保護單網域請填如www.sslbuyer.com
要保護多網域,請用逗號隔開,如www.sslbuyer.com,www.sslbuyuer2.com,www.sslbuyer3.com,....
要保護子網域,請把所有子網域列出來(不要用*.sslbuyer.com),如test.sslbuyer.com,mail.sslbuyer.com,.....
2.請填寫可以聯絡到您的電子郵件,這很重要不要亂填,以免被退信!
您都填好之後就可以送出了!送出之後您會收到一封信(大約2-3天的時間),如下!
如果您收到此封信件,表示您已經可以開始進行取得let's encrypt所核發的憑證了! 以下就開始說明如何取得與安裝免費的憑證喔!
首先請來到以下的網頁https://letsencrypt.readthedocs.org/en/latest/using.html#installation-and-usage,如下圖,這就是如何安裝的說明頁面
請點擊Installation進入安裝的步驟說明頁
第一步:請您先安裝GIT套件(可取得GIT網站上面的資料檔案),請點擊 install Git來到安裝GIT的頁面,如下圖
這個頁面有說明如何安裝在不同的平台(Linux,Windows,MAC,from Source),您可以選擇您的作業系統來進行安裝,我們的是linux因此選擇linux的方式,請執行以下命令
sudo yum install git-all
以下請全程用root的權限進行,輸入後執行,會開始安裝GIT套件,如下圖
安裝完成後,這時候請輸入如下指令
git clone https://github.com/letsencrypt/letsencrypt
取得letsencrypt的資料下來,如下圖
我們可以看一下是否letsencrypt已經抓下來了,請輸入ls -l,如下圖
這時候進去letsencrypt的資料夾,請輸入
cd letsencrypt
然後輸入
./letsencrypt-auto
如果您想要查詢指令的用法 可以輸入./letsencrypt-auto --help all就可以知道指令的用法
這時候開始安裝一些東西(會跑一段時間),如下圖
最後會跳出一個視窗,說明此憑證目前正在測試階段,請直接按下accept,這時候跳出No installers are available on your OS yet,try running "letsencrypt-auto certonly" to get a cert you can install manually 如下圖
這邊是說明目前我的作業系統沒有可用的安裝檔案(因為我是centos,目前自動安裝只支援Apache 2.4 on a Debian-based OS)
所以請手動輸入./letsencrypt-auto certonly,來取得憑證檔案,這時候我們輸入
letsencrypt-auto certonly之後,會跳出一個警示如下圖
這邊的說明一開始沒有很注意,結果用此指令所取的的憑證簽發者為 happy hacker fake CA,因為此指令是向利用目前ACME的協定取得憑證,而此憑證尚未取得公開的認證,因此發證者才會顯示happy hacker fake CA,這個憑證我們不能使用,我們有安裝起來,但是瀏覽器有告警如下圖!
請用新的語法./letsencrypt-auto --agree-dev-preview --server https://acme-v01.api.letsencrypt.org/directory auth
這樣執行就能拿到正確的憑證了!輸入之後,會請您輸入email address,如下圖
輸入之後請按下確定,然後來到下一頁,如下圖
本頁主要提醒您去看一下同意條款,如果沒問題的話請按下agree來到下一頁,如下圖https
請輸入您當初申請要保護的網域名稱,我這邊舉www.certzon.com為例,輸入後按下確定,來到下一頁,如下圖
這邊如果您的web server沒有關閉,就會出現此頁面,port80被占用,這時候請按下確定,就會跳回作業系統,如以下畫面,請先停掉您的web server然後再重新執行
./letsencrypt-auto --agree-dev-preview --server https://acme-v01.api.letsencrypt.org/directory auth
如果沒有占用port80的話,經過一段時間執行,會出現如下成功申請的畫面,這憑證效期只到2016-02-29,只有三個月喔,如下圖
這邊說明你的憑證檔案會放在/etc/letsencrypt/live/www.certzon.com/的資料夾下面! 這時候憑證就算取得完成了!我們到此此資料夾下看看是否有檔案,如下圖https
這邊有四個檔案的路徑
cert.pem:伺服器憑證
chain.pem:憑證串鏈(伺服器憑證+中繼憑證)
fullchain.pem憑證串鏈(伺服器憑證+中繼憑證+根憑證)
privkey.pem:私密金鑰
所以我們的確已經申請並取得let's Encrypt的免費憑證了,接下來要來進行安裝囉! 我們到系統上看看檔案真正的位置,如下圖
可以發現真正檔案的位置是在/etc/letsencrypt/archive/www.certzon.com/下面
特別說明:如果您第一次安裝就成功的話,憑證檔案的確是會放在/etc/letsencrypt/live/www.certzon.com/,但是因為我們安裝了三次,都重新取得新的憑證,因此檔案會指向/etc/letsencrypt/live/www.certzon.com/之下,個人是猜測比較好管理! 如下圖有三組憑證檔案
沒關係,我們取最新的憑證進行安裝,也就是cert3.pem,chain3.pem,fullchain3.pem,privkey3.pem來裝! 以下是安裝步驟,我們只要把檔案放到該放的位置重新啟動web server即可! 一樣進到opt/lampp/etc/extra/httpd-ssl.conf的檔案中,找到擺放憑證的位置,如下圖
然後把憑證改名放到該放的位置,如下圖
然後重新啟動web server,打開瀏覽器您就可以看到您安裝好的憑證了,這憑證是綠色的合法的喔!同時可以看看憑證的內容,如下圖https
後記: 其實原本我們是用www.sslbuyer.com進行申請,也取得同意的信函,但是在取得憑證的最後一步,發生如下的錯誤,
一樣輸入網域之後,按下enter,這時候跳出一個錯誤,是說我輸入的網域名稱無法認證(IP有問題),如下圖
這邊經過我們多次嘗試後,主要是發現DNS的設定有問題,關鍵是: 您的IP要與domain綁定,而且是固定IP,才能安裝成功!因此您的網域提供商DNS以及IP的設定一定要正確! 這點要多多注意
因為憑證目前效期只有三個月,三個月後必須renew,因此您可以執行以下的指令已讓系統自動三個月後重新renew
./letsencrypt-auto certonly -t -d www.certzon.com -m Email住址會使用灌水程式保護機制。你需要啟動Javascript才能觀看它 –renew-by-default –agree-tos –agree-dev-preview
Let's Encrypt目前的憑證屬於Domain Valid的憑證,如果您有OV或者EV的憑證需求,還是需要根憑證的廠商購買,同時此憑證效期為3個月,跟一般賣給您1年的產品不同,所以使用上有些不方便,如果能提供一年的效期,這將會對DV憑證的市場造成很大的衝擊!