使用certbot申请免费SSL证书
现在网站使用https已经成为标配,但是SSL证书最便宜的DV证书也要几百块钱一年,对于个人开发者来说很不划算。好在,我们有Let's Encrypt,它是能提供免费的SSL证书,应该也是市面上使用最广泛的免费DV证书了。
原理
一点开Let's Encrypt还是有点懵的,按照在其他平台申请SSL证书的逻辑,它尽然不用注册,那怎么管理证书呢?随着不断的了解,对它也越来越佩服。
Let's Encrypt贡献两个主要的东西
ACME全称 Automatic Certificate Management Environment。它提供一套自动证书管理的规范,这套规范中包含客户端与服务端。而boulder就是Let's Encrypt提供的一套开源的证书颁发软件。ACME客户端官方没提供,只要支持ACME协议都可以实现。目前,官方推荐的客户端是certbot。
证书颁发机构只需要确认你拥有该域名的所有权,就可以帮你生成证书(需要注意Let's Encrypt并不支持OV和EV证书)。
在服务器上运行ACME客户端,已自动化的方法确认用户对于域名的所有权,然后向Let's Encrypt服务端申请证书,通过后,既可以得到所需要的SSL证书。
Let's Encrypt生成的免费证书有效期为90天,但是它也支持自动续签。
使用
以下操作,基于CentOS7.8 + Nginx服务器。
安装certbot
它是一款在Linux上使用的现代包管理工具。
# Centos7中安装snapd
sudo yum install epel-release
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
# 查看snapd服务状态
sudo systemctl status snapd
# 安装certbot
snap install --classic certbot
可以参考官方文档:https://certbot.eff.org/instructions?ws=nginx&os=snap
申请证书
certbot有一些傻瓜式的方式可以直接一键生成证书并安装。但是这并不是我需要的,我只希望他帮我生成证书,然后自己在Nginx中配置。
sudo certbot certonly --webroot -w /path/to/webroot -d example.com -d www.example.com
这条指令的作用是以http的方式验证域名并单独生成证书。-w指定域名所在的根目录,-d指定需要验证的域名。以上命令成功后,它会在/etc/letsencrypt/live/example.com/目录中生成证书。
部署证书
部署证书的操作,另行搜索即可。
自动续签
在证书还有30天过期时,重新验证域名的所有权。验证成功重新颁发证书,并重启Nginx服务。
certbot已经将这些功能实现,只需要进行少量配置即可。
# 验证是否能够续签
sudo certbot renew --dry-run
# crontab中添加定时调度
sudo crontab -e
0 3 * * * certbot renew --quiet --deploy-hook "nginx -s reload"
验证续签功能通过,说明当前环境没问题。就可以将续签的指令添加到crontab中每天晚上3点检测一次。--deploy-hook指定续签成功后reload配置。
其他
# 强制更新证书
sudo certbot certonly --webroot -w /path/to/webroot --force-renewal --deploy-hook "nginx -s reload" -d example.com -d www.example.com
引用
- https://letsencrypt.org/
- https://datatracker.ietf.org/doc/html/rfc8555
- https://github.com/letsencrypt/boulder
- https://certbot.eff.org/
使用certbot申请免费SSL证书的更多相关文章
- 让网站永久拥有HTTPS - 申请免费SSL证书并自动续期 Let’s Encrypt
让网站永久拥有HTTPS - 申请免费SSL证书并自动续期 Let’s Encrypt 为什么要用HTTPS 网站没有使用HTTPS的时候,浏览器一般会报不安全,而且在别人访问这个网站的时候,很有可 ...
- 最新阿里云申请免费SSL证书实现网站HTTPS化(图文教程一)
一.申请免费SSL证书: 1.登录阿里云: 2.领取代金券礼包: https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=0a ...
- 阿里云申请免费SSL证书,并配置到Tomcat,实现https访问
第一步:阿里云免费https证书安装 https://jingyan.baidu.com/article/fdffd1f8619481f3e98ca196.html 第二步:阿里云申请免费SSL证书 ...
- 物联网架构成长之路(20)-申请免费SSL证书
0.前言 今天域名备案申请下来了,接下来就是申请个SSL证书,现在普通的网站没有SSL都不好意思见人了.可是稍微好点的企业级SSL证书还是比较贵的.不过还好有免费的可以用.只不过要定时去续时间.这个不 ...
- [从零开始搭网站六]为域名申请免费SSL证书(https),并为Tomcat配置https域名所用的多SSL证书
点击下面连接查看从零开始搭网站全系列 从零开始搭网站 由于国内的网络环境比较恶劣,运营商流量劫持的情况比较严重,一般表现为别人打开你的网站的时候会弹一些莫名其妙的广告...更过分的会跳转至别的网站. ...
- windows下 申请免费ssl证书的方法 (letsencrypt)
Let's Encrypt,官网是https://letsencrypt.org/,它是一个由各大公司赞助的公益组织: 有趋势有需求,自然也有免费可用.免费的SSL证书中,首推就是Let's Encr ...
- Certbot为域名申请免费SSL证书
Certbot(Let's Encrypt)是一个非盈利性认证机构通过运行互联网安全研究小组(ISRG)提供X.509 证书的传输层安全性不收取任何费用(TLS)加密.证书有效期为90天,在此期间可以 ...
- 阿里云免费申请免费SSL证书
随着互联网的不断进步与发展,对于网站与数据的安全性要求也越来越高,原本的HTTP明文传输已经不被信任,https逐渐被关注,从谷歌.火狐浏览器将对HTTP明文页面标记"不安全",到 ...
- Let's Encrypt申请免费SSL证书
1.https的作用 安全,防止网站被劫持,数据被修改 2.Let's Encrypt是什么 Let's Encrypt是一个证书授权机构(CA),可以从Let's Encrypt获得网站域名的免费证 ...
- 腾讯云服务器申请免费SSL证书,实现Https。
1.首先在腾讯云的SSL证书管理中申请免费的SSL.审核速度还是挺快的... 2.按照步骤申请后,就可以下载主流web服务器的证书了.如图: 3.这里我使用的web服务器是nginx,把nginx下的 ...
随机推荐
- net core中byte数组如何高效转换为16进制字符串
在 .NET Core 中,如何把 byte[] 转换为 16 进制字符串?你能想到哪些方法?什么方式性能最好?今天和大家分享几种转换方式. 往往在处理字符串性能问题时,首先应该想到的是怎么想办法减少 ...
- Identity – Authorize
前言 Authorize 授权和 Identity Framework 关系不是很大. 虽然 Framework 有帮忙处理 Role, Claims 这些, 但这些只是整个 Authorize 小部 ...
- 深入理解ConcurrentHashMap
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进行put操作,调用了HashMap的putVal(),具体原因: 假设两个线程A.B都在进行put操作,并且hash函数计算 ...
- Listener——监听器
Listener
- USB协议详解第10讲(USB描述符-报告描述符)
1.报告描述符的概念和作用 开门见山,报告描述符就是描述报告(HID接口上传输事务中的数据)的一组数据结构. 首先大家可能会问,报告又是什么?我们前面讲过,USB主机一般是以中断的方式向HID设备发送 ...
- 【PyTorch】state_dict详解
这篇博客来自csdn,完全用于学习. Introduce 在pytorch中,torch.nn.Module模块中的state_dict变量存放训练过程中需要学习的权重和偏执系数,state_dict ...
- 03 Transformer 中的多头注意力(Multi-Head Attention)Pytorch代码实现
3:20 来个赞 24:43 弹幕,是否懂了 QKV 相乘(QKV 同源),QK 相乘得到相似度A,AV 相乘得到注意力值 Z 第一步实现一个自注意力机制 自注意力计算 def self_attent ...
- p1ngp0ng
p1ngp0ng 轻量级ICMP C2工具 依赖 Linux环境与GCC套件. 功能: p1ng: p1ng,实现C2服务器正向连接被控端.目前实现了对客户端的命令控制与文件上传下载.明文传输,未加密 ...
- linux 基础(4)文件结构标准 FHS
使用 linux 进行各种各样开发的人实在太多了,因此一套统一的"什么文件存放在哪里"的规范应运而生,被称为 FHS(Filesystem Hierarchy Standard). ...
- 下一代云电脑技术来临,为什么PC Farm才是未来,以ToDesk为例
近年来飞速发展的云电脑技术,正在挤压传统电脑的生存空间.由于用户对电脑计算能力的要求日益增高,而传统电脑往往会受限于硬件性能无法更新,更换花费较高等因素,难以满足用户对高性能电脑的期待. 与此同时,下 ...