使用Let's Encrypt生成免费SSL证书操作记录
最近要做微信小程序,要求接口必须备案且是https,个人小站就直接准备使用免费的SSL证书,网上搜了一圈,发现Let's Encrypt是浏览器支持比较好的。
流程:
1. 首先去服务器上安装了Let's Encrypt的生成工具,我系统是云服务器CENTOS7,在github clone了源码,无需安装。
2. 进入到clone下来的代码文件夹,看看cerbot-auto这个文件有没有执行权限,如果没有,chmod +x ./cerbot-auto
3.可以开始正式生成了,如果是第一次申请,中间应该会有email的注册流程,一路yes即可,另外需要用root执行,一般有3种生成方式,
(1)--standalone 这种需要使用80端口,需要停止网站服务,不太方便
例:
./certbot-auto certonly --standalone --email admin@example.com -d example.com -d www.example.com -d other.example.net
(2)--webroot 这种比较方便只会往网站根目录生成随机认证文件,然后会验证,这种方式比较常用,不过有多少子域名就得写多少个,不支持通配符
例
./certbot-auto certonly --webroot -w /var/www/example --email admin@example.com -d example.com -d www.example.com -d other.example.net
(3) 支持通配符的方法。
./certbot-auto certonly --email admin@example.com -d *.example.com -d example.com --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory
这种方法是通过DNS验证,一定要看清楚再下一步,其中有一步是给了你一个随机字符串,需要添加到域名解析的TXT记录里,这一步必须加好了且测试已经生效才能回车,测试方法,新开一个shell执行一下:dig -t txt _acme-challenge.example.com @8.8.8.8,如果在返回信息里包含了正确的随机字符串,则说明已经生效,这时回车即可
4. 证书生成好会放在/etc/letsencrypt/live里,以域名区分不同的证书,像nginx这些直接配置一下就可使用
ssl_certificate /etc/letsencrypt/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/chain.pem;
5. docker中使用的话,建议容器启动时分配一个volume,然后在宿主机上手动复制到这个volume,容器中就可以直接使用,这里注意不能使用软链,因为容器启动后软链的地址会变成容器自己的/etc/letsencrypt,就会找不到文件
6. 其他地方使用,像有些服务商的虚拟机,不支持pem后缀的,就必须转换成.crt和.key
openssl x509 -in fullchain.pem -out fullchain.crt
openssl rsa -in privkey.pem -out privkey.key
把转换后的文件传到对应位置即可
7.续期,一般直接使用./cerbot-auto renew即可,可写个脚本,设置成每60天执行一次
#!/usr/bin bash
cd /data/certbot
./certbot-auto renew
/usr/bin/cp -f /etc/letsencrypt/live/example.com/* /data/nginxconf/
# 每隔60天执行一次
0 4 */60 * * sh /root/certbot-renew.sh >> /var/log/certbot-renew.log
8.如果重复执行生成命令会生成example.com-001等带后缀的域名文件夹,新的证书就放在这里面,这样会对脚本使用产生问题,就需要删除历史不用的证书
rm -rf /etc/letsencrypt/archive/example.com/
rm -rf /etc/letsencrypt/live/example.com/
rm -rf /etc/letsencrypt/renewal/example.com.conf rm -rf /etc/letsencrypt/archive/example.com-001/
rm -rf /etc/letsencrypt/live/example.com-001/
rm -rf /etc/letsencrypt/renewal/example.com-001.conf
必须删除这3个路径下的文件,不然继续执行还会生成-002文件夹,删除完成执行,重新执行生成命令,就会看到生成新的证书到正确的目录了,,后面就最好直接用renew来续期
使用Let's Encrypt生成免费SSL证书操作记录的更多相关文章
- 【转】IIS - 自动申请、部署Let's Encrypt的免费SSL证书
IIS - 自动申请.部署Let's Encrypt的免费SSL证书(让网站实现HTTPS协议) 2017-12-19发布:hangge阅读:161 一.HTTPS 协议介绍 1,什么是 HTTP ...
- IIS - 自动申请、部署Let's Encrypt的免费SSL证书(让网站实现HTTPS协议)
IIS - 自动申请.部署Let's Encrypt的免费SSL证书(让网站实现HTTPS协议) 2017-12-19发布:hangge阅读:161 一.HTTPS 协议介绍 1,什么是 HTTP ...
- docker获取Let's Encrypt永久免费SSL证书
一 起因 官方的cerbot太烦了,不建议使用 还不如野蛮生长的acme.sh,而这里介绍docker运行cerbot获取Let's Encrypt永久免费SSL证书 二 选型 cerbot的证书不会 ...
- 实战申请Let's Encrypt永久免费SSL证书过程教程及常见问题
最近需要https这里看到一份不错的博客,收录一下! Let's Encrypt作为一个公共且免费SSL的项目逐渐被广大用户传播和使用,是由Mozilla.Cisco.Akamai.IdenTrust ...
- 申请Let's Encrypt永久免费SSL证书
Let's Encrypt简介 Let's Encrypt作为一个公共且免费SSL的项目逐渐被广大用户传播和使用,是由Mozilla.Cisco.Akamai.IdenTrust.EFF等组织人员发起 ...
- 申请Let’s Encrypt永久免费SSL证书过程教程及常见问题
配置证书https://easy.zhetao.com/ 虽然目前Let’s Encrypt免费SSL证书默认是90天有效期,但是我们也可以到期自动续约,不影响我们的尝试和使用,为了考虑到文章的真 ...
- Windows Server 快速生成免费SSL证书 (letsencrypt)
最近官网需求部署个SSL证书,一番操作后把借鉴的网站与实际过程记录下来 Let's Encrypt,官网是https://letsencrypt.org/,它是一个由各大公司赞助的公益组织: 有趋势有 ...
- Let's Encrypt申请免费SSL证书
1.https的作用 安全,防止网站被劫持,数据被修改 2.Let's Encrypt是什么 Let's Encrypt是一个证书授权机构(CA),可以从Let's Encrypt获得网站域名的免费证 ...
- 使用lets encrypt获取免费ssl证书
lets encrypt也是一个CA,并且在众多大厂的加持下有可能成为最棒的免费颁发证书的CA,尤其是chrome的加入. 目前https已经成为了一种趋势,无奈证书授权费用相当昂贵,将一大批企业挡在 ...
随机推荐
- 对比 Git 与 SVN,这篇讲的很易懂
---恢复内容开始--- 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯工蜂发表于云+社区专栏 导语 本文从 Git 与 SVN 的对比入手,介绍如何通过 Git-SVN 开始 ...
- 【Oracle RAC】Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂)
[Oracle RAC]Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂) 2 Oracle11gR2 RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件 ...
- Git报错 bad numeric config value '100000' for 'pack.windowmemory': out of range
Git报错 bad numeric config value '10240M' for 'pack.windowmemory': out of range $ git config --edit -- ...
- eShopOnContainers 知多少[2]:Run起来
环境准备 Win10(开启Hyper-V) .NET Core SDK Docker for Windows VS2017 or VS Code Git SQL Server Management S ...
- Activity 之使用
Activity 之使用 本文内容 1. 使用 Activity 显式简单界面 2. Activity 之间的跳转 2.1 startActivity 2.3 startActivityForResu ...
- 爬虫框架之Scrapy(三 CrawlSpider)
如何爬取一个网站的全站数据? 可以使用Scrapy中基于Spider的递归方式进行爬取(Request模块回调parse方法) 还有一种更高效的方法,就是基于CrawlSpider的自动爬取实现 简介 ...
- DensityUtil【尺寸转换工具类(px、dp互相转换)】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 用于项目中dp.px.sp之间的转换以及指定缩放值下的转换. 效果图 暂不需要 代码分析 常用的方法是px2dip.dip2px: ...
- java~lambda表达式让查询更优雅
在java之前的版本里,如果希望从集合时查找符合条件的数据,如果先遍历他,这种写法是我们不能接受的,所以现在java有了lambda就很好的解决了这个问题,让代码更优雅一些! /** * lambda ...
- 使用 线性规划 解决 数字 排序问题, +Leapms模型
问题 将如下一组数字从大到小排序. {10, 20, -32, 177, 0, -11.5, 19, 7, 6.2, -6.28, -2.71, 44} 解决办法 建立数学模型,给出各个数字的次序值. ...
- nmon - 性能监控利器介绍
关于nmon nmon 是一款小巧的系统监控程序(只有5000行代码),可以用来对CPU.磁盘.内存等资源指标来做实时监控. 之前在做系统性能优化工作时用得较多,觉得非常不错,于是在这里给大家介绍下用 ...