免费获取SSL证书之Certbot


为什么需要SSL

防“钓鱼”、防止数据被篡改、信息加密、提高搜索排名,微信公众号、小程序开发必备!

Let’s Encrypt简介

免费获取SSL证书之Certbot

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证书可以说解决了很大一部分问题,该篇文同步博客更新,点击阅读全文即可查看


分享到:


相關文章: