Let's Encrypt是一個公共的免費SSL項目,由 Linux 基金會託管,它的來頭不小,由Mozilla、思科、Akamai、IdenTrust和EFF等組織發起,目的就是向網站自動簽發和管理免費證書,以便加速互聯網由HTTP過渡到HTTPS,目前Facebook等大公司開始加入贊助行列。
我的站點和小型應用的最佳選擇,缺點在於有效期爲90天,但咱們能夠用計劃任務配置自動續期。
那麼咱們開始安裝, 假設個人域名爲:163.org
一、克隆代碼
git clone https://github.com/letsencrypt/letsencrypt
# 沒有git的先安裝git # yum install git # apt-get install git
二、安裝
cd letsencrypt
./letsencrypt-auto certonly --standalone --email admin@163.org -d 163.org -d www.163.org
命令解析 --standalone 須要手動關閉佔用443端口的程序,此命令會佔用443端口進行驗證
--email admin@163.org 填寫您的Email
-d 163.org 須要使用ssl的域名(必須是當前主機綁定的地址,不然驗證失敗。)
三、配置
在完成Let's Encrypt證書的生成以後,咱們會在"/etc/letsencrypt/live/163.org/"域名目錄下有4個文件,這就是生成的密鑰證書文件。
cert.pem - Apache服務器端證書
chain.pem - Apache根證書和中繼證書
fullchain.pem - Nginx所須要ssl_certificate文件
privkey.pem - 安全證書KEY文件
若是咱們使用的Nginx環境,那就須要用到fullchain.pem和privkey.pem兩個證書文件
# nginx.conf 配置文件中加入生成的證書
server {
server_name
163.org;
listen 443;
ssl on;
ssl_certificate /etc/letsencrypt/live/163.org/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/163.org/privkey.pem;
}
ps:在Nginx環境中,只要將對應的ssl_certificate和ssl_certificate_key路徑設置成對應的文件路徑就能夠。
不要移動和複製文件,由於續期的時候還會在這個文件生成證書。
四、Let's Encrypt免費SSL證書有效期
Let's Encrypt證書是有效期90天的,須要手工更新續期。
* * * * 1 /var/www/letsencrypt/letsencrypt-auto renew
將此命令添加到定時任務中便可自動續期。
完