前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >certbot+letsencrypt配置免费单证书多域名ssl证书

certbot+letsencrypt配置免费单证书多域名ssl证书

作者头像
lestat
发布2018-04-17 16:51:23
5.7K0
发布2018-04-17 16:51:23
举报
文章被收录于专栏:lestat's bloglestat's blog

前些天看到微信公众平台官方公告关于公众平台接口不再支持HTTP方式调用的公告之后决定把项目的协议从http改成https,于是开始在网上查,完成之后总结了一点经验

本文演示的是通用证书,即在certbot命令中不需要指定--apache或者--nginx之类,只需要在完成证书生成之后在服务器配置文件里进行引用即可

Let’s Encrypt

Let’s Encrypt 认证签发为每3个月一次,也就是每 90 天必须更新(renew)一次。取得认证的过程需要进主机安裝代理程序:certbot,下面以ubuntu为例:

  • 安装 1 2 3 4 5$ 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 certbot
  • 生成证书 1$ sudo certbot certonly

此时会出现选项,按照提示选择即可

  • 证书自动续期可以使用1certbot renew --force-renew

手动强制为证书续期

如果出现以下提示则说明更新成功

1

Congratulations, all renewals succeeded. The following certs have been renewed:

但为了更方便,通常使用crontab -e编辑定时任务,并加入

1

0 0 1 * * certbot renew --force-renew “重启服务器命令”

实现每个月1号0点自动续期

在服务器配置相关证书

apache2开启SSL

tips:

如果有多个域名

  1. 可以用过在Please enter in your domain name(s) (comma and/or space separated) (Enter 'c' to cancel):步骤通过,来分隔域名
  2. 可以使用以下命令来直接生成多个域名的证书 1$ sudo certbot certonly --webroot -w /var/www/example -d example.com -d www.example.com -w /var/www/thing -d thing.is -d m.thing.is
  3. 生成的证书通常保存在/etc/letsencrypt/live/目录下

注意:如果失败超过5次会被服务器屏蔽1小时

后记

以上操作完成后在pc端浏览器可正常读取证书并显示绿色锁,但在部分移动端浏览器上可能提示证书无效,原因可以参考合并SSL服务器证书和CA包(证书链文件)

简单来说,可以通过合并SSL服务器证书和CA包(证书链文件)

即:复制fullchain.pem里的内容至cert.pem,重启服务器即可

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-01-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Let’s Encrypt
  • 在服务器配置相关证书
  • 后记
相关产品与服务
SSL 证书
腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档