為了安全起見,現在開發微信服務號和IOS客戶端等訪問伺服器端都要求使用https加密傳輸。
SSL證書是數字證書的一種,類似於駕駛證、護照和營業執照的電子副本。因為配置在伺服器上,也稱為SSL伺服器證書。
Let’s Encrypt 也是一個 CA 機構,但這個 CA 機構是免費的!!!也就是說籤發證書不需要任何費用。
現在講解一下,如何在centos作業系統下,獲得Lets Encrypt免費的ssl證書,並在nginx裡配置使用。
1. 安裝Certbot客戶端
Certbot是一個EPEL安裝包,如果沒有配置EPEL庫,需要提前將庫配置好。
運行以下命令安裝Certbot:
$ sudo yum install certbot-nginx2.使用Certbot生成證書
$ sudo certbot --authenticator standalone --installer nginx --pre-hook "nginx -s stop" --post-hook "nginx"生成過程中需要輸入域名,域名要提前進行解析。
3.修改nginx配置
certbot會在/etc/letsencrypt/live/目錄下生成一個域名的目錄,然後修改對應的nginx的配置。
ssl_certificate "/etc/letsencrypt/live/{域名}/fullchain.pem";ssl_certificate_key "/etc/letsencrypt/live/{域名}/privkey.pem";
4.如何讓證書永久免費呢?
Let's Encrypt證書有效期為90天,為了保證在過期前更新證書,Certbot提供了更新證書有效期的功能。使用以下功能可以進行更新:
$ sudo certbot renew --dry-run也可以使用crontab自動更新證書有效期。
0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew