爲了安全起見,現在開發微信服務號和IOS客戶端等訪問服務器端都要求使用https加密傳輸。
SSL證書是數字證書的一種,類似於駕駛證、護照和營業執照的電子副本。因爲配置在服務器上,也稱爲SSL服務器證書。
Let’s Encrypt 也是一個 CA 機構,但這個 CA 機構是免費的!!!也就是說簽發證書不需要任何費用。
現在講解一下,如何在centos操作系統下,獲得Lets Encrypt免費的ssl證書,並在nginx裏配置使用。
- 安裝Certbot客戶端
Certbot是一個EPEL安裝包,如果沒有配置EPEL庫,需要提前將庫配置好。
運行以下命令安裝Certbot:
$ sudo yum install certbot-nginx
2.使用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
歡迎大家關注我的公衆號(xtech100)一起切磋交流!
我的百家號地址鏈接