免费的SSL证书(Let‘s Encrypt / acme)

Let’s Encrypt

一、简介

Let’s Encrypt 是一个由非营利性组织 互联网安全研究小组(ISRG)提供的免费、自动化和开放的证书颁发机构(CA)。
简单的说,借助 Let’s Encrypt 颁发的证书可以为我们的网站免费启用 HTTPS(SSL/TLS) 。
Let’s Encrypt免费证书的签发/续签都是脚本自动化的,官方提供了几种证书的申请方式方法,点击此处 快速浏览。
官方推荐使用 Certbot 客户端来签发证书,这种方式可参考文档自行尝试,不做评价。
我这里直接使用第三方客户端 acme.sh 申请,据了解这种方式可能是目前 Let’s Encrypt 免费证书客户端最简单、最智能的 shell 脚本,可以自动发布和续订 Let’s Encrypt 中的免费证书。

二、安装

前提:

在生产证书之前,Let’s Encrypt 需要验证域名是否是属于你的,才能生产证书。Let’s Encrypt` 支持通过 DNS 解析一条 TXT 记录来验证。 我使用的方法也是这种,可以手动去配置也可以使用脚本调用dns服务的api进行自动验证(自动验证是实现自动签发的关键),该脚本acme.sh 提供了API快速设置。

还有一种验证方式 使用 HTTP 验证签发证书,原理是通过在网站指定路径下加入验证文件,外部正常访问即认证通过。
具体参考:https://u.sb/acme-sh-ssl/
acme:https://github.com/acmesh-official/acme.sh

安装:

curl https://get.acme.sh | sh

#网络问题国内安装参考:https://github.com/acmesh-official/acme.sh/wiki/Install-in-China

成功安装如下:
在这里插入图片描述

DNS 解析验证:

这里使用的是阿里云的dns解析服务,所以需要获取能够调用阿里云dns权限的账号 AccessID 和 AccessKeySecret。

AccessID、KeySecret获取如下:

在这里插入图片描述

账号权限确认:

在这里插入图片描述

修改配置
vim ~/.bashrc

将 dns解析服务的key填入:
在这里插入图片描述

export Ali_Key=""
export Ali_Secret=""

source ~/.bashrc

生产证书

运行如下命令:

acme.sh --issue --dns dns_ali -d example.com -d *.example.com --server letsencrypt

成功后界面上有文件的存放地址:
在这里插入图片描述

cd  /www/server/panel/vhost/cert/guozh.net/

ll
-rw-r--r-- 1 root root 1648 Jul 12 16:27 ca.cer
-rw-r--r-- 1 root root 3563 Jul 12 16:27 fullchain.cer
-rw-r--r-- 1 root root 1915 Jul 12 16:27 xxx.net.cer
-rw-r--r-- 1 root root  558 Jul 12 16:27 xxx.net.conf
-rw-r--r-- 1 root root  980 Jul 12 16:26 xxx.net.csr
-rw-r--r-- 1 root root  220 Jul 12 16:26 xxx.net.csr.conf
-rw-r--r-- 1 root root 1675 Jul 12 16:26 xxx.net.key

其中
证书文件 fullchain.cer 
密钥文件 xxx.net.key 

填写SSL证书内容就是这两个
 

完结

前面说了Let’s Encrypt` 支持通过 DNS 解析一条 TXT 记录来验证。 但是我们在整个安装和生成过程并没有看到啥时候添加了TXT记录,其实有的,如果在安装过程中仔细看日志,就能看到先是 Add 然后 Check 最后 Remove 。
在这里插入图片描述

证书续期

Let’s Encrypt 证书的有效期是三个月。但我们通过脚本acme.sh启动就不用担心,因为它写入了定时命令。用 crontab -l 列出定时任务。

在这里插入图片描述

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
let's encrypt是一个非盈利性质的机构,致力于提供免费SSL证书服务,以促进整个互联网的安全性。在官网上,他们提供了一键式免费申请SSL证书的脚本,使得用户可以快速而简便地获取自己网站的SSL证书。 这个一键式免费申请SSL证书脚本的使用非常简单。首先,用户需要在自己的网站服务器上安装并配置好Certbot工具。Certbot是一个由let's encrypt官方开发的自动化工具,用于申请和更新SSL证书。 在安装和配置好Certbot之后,用户只需要在命令行中输入一条简单的指令,就可以申请自己网站的SSL证书了。具体指令如下: $ sudo certbot certonly --standalone -d <your_domain> 其中,“<your_domain>”替换为用户自己的域名。这条指令的作用是告诉Certbot以standalone模式运行,并申请一个新的证书,该证书将与用户输入的域名关联。 Certbot会自动与let's encrypt的服务器进行通信,验证用户所拥有的域名和服务器的控制权。一旦验证通过,Certbot就会生成一个有效期为90天的SSL证书,并将其保存在用户指定的位置。 用户可以根据自己的需要选择将证书文件保存到哪个目录,以及将其用于哪个Web服务器(例如Apache或Nginx)。 值得一提的是,这个一键式免费申请SSL证书脚本还支持自动续订证书的功能。Certbot会在证书即将过期之前自动执行更新过程,以确保用户的网站能够持续使用最新的SSL证书。 总之,let's encrypt官网提供的一键式免费申请SSL证书脚本极大地简化了证书申请和管理的过程,让网站拥有更安全可靠的加密通信。用户只需几个简单的步骤,就能轻松获得免费SSL证书,提升网站的安全性和可信度。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值