1. 程式人生 > >LNMP下配置免費SSL安全證書(https)

LNMP下配置免費SSL安全證書(https)

環境要求

  • LNMP
  • 域名

安裝依賴

$ cd /root/
$ wget https://dl.eff.org/certbot-auto --no-check-certificate
$ chmod +x ./certbot-auto
$ ./certbot-auto -n

生成證書

單域名生成證書:

$ ./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/wwwroot/www.vpser.net -d www.vpser.net

多域名單目錄生成單證書:(即一個網站多個域名使用同一個證書)

$ ./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/wwwroot/www.vpser.net -d www.vpser.net -d bbs.vpser.net

多域名多目錄生成一個證書:(即一次生成多個域名的一個證書)

$ ./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/wwwroot/www.vpser.net -d www.vpser.net -d bbs.vpser.net -w /home/wwwroot/lnmp.org -d www.lnmp.org -d lnmp.org

提示以下資訊表示生成成功

IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/www.vpser.net/fullchain.pem. Your cert will
expire on 2016-10-01. To obtain a new or tweaked version of this
certificate in the future, simply run certbot-auto again. To
non-interactively renew *all* of your certificates, run
"certbot-auto renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

生成的證書會存在:/etc/letsencrypt/live/www.vpser.net/ 目錄下,檢查是否有兩個.pom的證書檔案

修改配置

  • 下載配置檔案並替換掉所有的www.example.net為你的域名,僅限單域名
  • 上傳至/usr/local/nginx/conf/vhost 並替換原來的檔案

  • 執行:/etc/init.d/nginx reload 重新載入配置使其生效。

到這裡你的域名應該就已經變成https了

證書續期

因為證書只有90天,所以建議使用crontab進行自動續期,間隔5天就可以了,不能太頻繁:

$ crontab -e
0 3 */5 * * /root/certbot-auto renew --disable-hook-validation --renew-hook "/etc/init.d/nginx reload"