本文首發(fā)于我的個人博客:尾尾部落
HTTPS(全稱:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全為目標的HTTP通道,簡單講是HTTP的安全版员帮。即HTTP下加入SSL層兆览,HTTPS的安全基礎是SSL涂圆,因此加密的詳細內(nèi)容就需要SSL钳枕。 它是一個URI scheme(抽象標識符體系)横朋,句法類同http:體系梦重。用于安全的HTTP數(shù)據(jù)傳輸兑燥。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默認端口及一個加密/身份驗證層(在HTTP與TCP之間)忍饰。這個系統(tǒng)的最初研發(fā)由網(wǎng)景公司(Netscape)進行贪嫂,并內(nèi)置于其瀏覽器Netscape Navigator中,提供了身份驗證與加密通訊方法“叮現(xiàn)在它被廣泛用于萬維網(wǎng)上安全敏感的通訊力崇,例如交易支付方面。
簡而言之赢织,就是讓你的網(wǎng)站有下圖這個小綠標:
之前用過阿里云的 SSL 免費證書亮靴,但是期限只有一年,昨天過期了于置,看了其他收費的 SSL 證書茧吊,還是很貴的,在讀小碩實在買不起八毯,只能找找免費的 SSL 證書了搓侄。
我們可以從 Let’s Encrypt 獲得網(wǎng)站域名的免費的證書。?Certbot是Let’s Encrypt推出的獲取證書的客戶端话速,可以讓我們免費快速地獲取Let’s Encrypt證書讶踪。
下面,一步一步教你申請部署ssl證書泊交,并自動續(xù)期乳讥。
-
進入Certbot官網(wǎng),并選擇你的系統(tǒng)和軟件廓俭。我這邊是
Nginx
和Ubuntu 16.04 (xenial)
云石。
image -
選擇好之后,就會出現(xiàn)具體的部署教程研乒,如下圖
image
安裝
先安裝python-certbot-nginx
$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install python-certbot-nginx
開始
certbot有一個Nginx插件汹忠,運行它,按照提示一步一步操作就會自動幫你把證書部署好。
運行如下命令
$ sudo certbot --nginx
選擇你要激活 HTTPS 的域名宽菜,輸入序號即可
選擇直接通過 HTTPS 訪問并刪除 HTTP 的方式奖地,或者保留 HTTP,如何你確定你網(wǎng)站中所有的鏈接都是按照HTTPS來配置的赋焕,那么你可以像我這樣選擇 2。
之后仰楚,看到Congratulations!就表示部署成功了隆判。
自動續(xù)期
由于Let的加密證書的有效期是90天,90 天之后證書就會過期僧界,如果要續(xù)期就要重復一次上面的步驟侨嘀,這太麻煩了,Certbot提供了一個自動續(xù)期的功能捂襟,只需運行如下命令即可:
$ sudo certbot renew --dry-run
至此咬腕,SSL證書的部署和自動續(xù)期的配置就完成,你的網(wǎng)站就不再是無證駕駛了葬荷。