為什麼需要SSL
防“釣魚”、防止數據被篡改、信息加密、提高搜索排名,微信公眾號、小程序開發必備!
Let’s Encrypt簡介
Let’s Encrypt 是 一個叫 ISRG ( Internet Security Research Group ,互聯網安全研究小組)的組織推出的免費安全證書計劃。參與這個計劃的組織和公司可以說是互聯網頂頂重要的先驅,除了前文提到的三個牛氣哄哄的發起單位外,後來又有思科(全球網絡設備製造商執牛耳者)、 Akamai 加入,甚至連 Linux 基金會也加入了合作,這些大牌組織的加入保證了這個項目的可信度和可持續性。
Certbot 使用方法
Certbot 的官方網站是 https://certbot.eff.org/ ,打開這個鏈接選擇自己使用的 web server 和操作系統,EFF 官方會給出詳細的使用方法
開始安裝https
假設運行環境為centos7.1,Web 服務器是 Nginx 1.12.0(因為我的生產環境是),當前工作目錄為 /root
獲取certbot客戶端
<code>wget https://dl.eff.org/certbot-autochmod a+x certbot-auto/<code>
停止 Tomcat服務,必須要停止服務
生成證書
<code>./certbot-auto certonly --standalone --email `你的郵箱地址` -d `你的域名地址`/<code>
當前網站有多個域名時需在後面增加,例如
<code>./certbot-auto certonly --standalone --email `你的郵箱地址` -d `你的域名`/<code>
查看生產的證書
<code>tree /etc/letsencrypt/live//<code>
將證書用於Tomcat
合成tomcat的證書,在 tomcat 底下創建一個文件夾用來存放準備生產的證書(當然也可以自己選擇一個目錄存放)我的目錄是:/usr/local/tomcat/conf/LetsEncrypt ,
#進入申請證書的目錄,這個目錄會以第一個域名命名,不影響多域名使用。
<code>cd /etc/letsencrypt/live/你的域名//<code>
#複製到tomcat剛創建的證書目錄下
<code>cp fullchain.pem /usr/local/tomcat/conf/LetsEncrypt
cp privkey.pem /usr/local/tomcat/conf/LetsEncrypt/<code>
#進入到這個目錄
<code> cd /usr/local/tomcat/conf/LetsEncrypt//<code>
#生成.p12文件
<code>openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out fullchain_and_key.p12 -name tomcat/<code>
這裡會被要求設置密碼,輸入就行(下面用到的:yourPKCS12pass)
#生成.jks證書
<code>keytool -importkeystore -deststorepass 'yourJKSpass' -destkeypass 'yourKeyPass' -destkeystore MyDSKeyStore.jks -srckeystore fullchain_and_key.p12/<code>
其中 yourPKCS12pass 是上一步中設置的ssl證書密碼,這裡的yourKeyPass是要設置的keystore密碼,可以與yourPKCS12pass一致,下面配置tomcat會用到
配置tomcat
<code><connector><connector>/<code>
證書續簽
Let’s Encrypt 生成的免費證書為3個月時間,但是我們可以無限次續簽證書
<code>./certbot-auto renew/<code>
續簽之後重新生成jks證書
總結
開發微信公眾號以及微信小程序等應用都要求後端域名為HTTPS,個人開發者以及測試環境使用收費的SSL證書就很不划算了,因此免費的SSL證書可以說解決了很大一部分問題,該篇文同步博客更新,點擊閱讀全文即可查看
閱讀更多 學識野路子 的文章