为什么需要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证书可以说解决了很大一部分问题,该篇文同步博客更新,点击阅读全文即可查看
閱讀更多 學識野路子 的文章