acme.sh注册免费的ssl证书

先决条件:首先我们需要有一个域名和一台有公网IP的服务器

然后需要给该域名添加一个A指向到IPV4地址,否则生成证书时会无法解析域名

安装acme.sh

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

启用别名

source ~/.bashrc 

说明:

acme.sh 会安装到 ~/.acme.sh 目录下。安装成功后执行 source ~/.bashrc 以确保脚本所设置的命令别名生效。

说明:普通用户和 root 用户都可以安装使用. 安装过程进行了以下几步:

1.把 acme.sh 安装到你的 home 目录下: ~/.acme.sh/ ,并创建 一个 shell 的 alias, 例如 .bashrc,方便你的使用: alias acme.sh=~/.acme.sh/acme.sh

2.自动为你创建 cronjob, 每天 0:00 点自动检测所有的证书, 如果快过期了, 需要更新, 则会自动更新证书。

查看帮助信息

acme.sh -h

卸载acme.sh

acme.sh --uninstall

切换CA机构

acme.sh --set-default-ca --server letsencrypt

说明:

acme.sh 支持四个正式环境 CA,分别是 Let’s Encrypt、Buypass、ZeroSSL 和 SSL.com,默认使用 ZeroSSL。

生成证书

acme.sh --issue -d example.com --standalone --keylength ec-256 --force

说明:

1. --standalone 模式下默认使用80端口,如果80端口被占用,添加 --httpport 参数使用80以外的端口

2.  --keylength表示密钥长度,后面的值可以是 ec-256 、ec-3842048307240968192,带有 ec 表示生成的是 ECC 证书,没有则是 RSA 证书。在安全性上 256 位的 ECC 证书等同于 3072 位的 RSA 证书。

3.  生成的证书将放置在~/.acme.sh/example.com/ 目录下:

example.com.cer证书文件
example.com.key私钥
ca.cer中间证书
fullchain.cer证书链

4. 当前证书剩余有效期在30天以上时重新生成证书,需要使用--force参数

5.  建议在生成证书的时候添加 --staging  使用测试环境测试,不明白可参见后面的速率限制

更新证书

acme.sh --renew -d example.com

如果是ecc证书:

acme.sh --renew -d example.com --ecc

说明:

默认情况下acme.sh会自动更新即将过期的证书.可以不用手动更新

如果要更新有效期大于30天的,使用--force参数

部署证书

acme.sh --install-cert -d example.com

--key-file           /path/to/keyfile/in/nginx/key.pem 

--fullchain-file        /path/to/fullchain/nginx/cert.pem

--reloadcmd     "service nginx force-reload"

说明:

        其实就是拷贝证书到指定位置,生成的证书的目录供acme.sh内部使用

查看已经生成的证书:

acme.sh --list

查看debug:

acme.sh  --issue  .....  --debug

查看error:

acme.sh  --issue  .....  --debug  2

生成日志:

acme.sh  --issue  .....  --log

使用测试环境

--staging

说明:

日志文件路径为:~/.acme.sh/acme.sh.log

速率限制

重复证书限制

 概述: 

所有签发请求均受每周 5 个重复证书的限制。 当您超出重复证书限制时,您应该会从 ACME 客户端收到如下错误消息:

too many certificates (5) already issued for this exact set of domains in the
last 168 hours: example.com login.example.com: see https://letsencrypt.org/docs/duplicate-certificate-limit        

此错误所指的“确切集”是为此证书请求的主机名集:在此示例中,example.com 和 login.example.com。 如果您的证书仅针对 1 个名称(例如 example.com)颁发,那么您的证书的主机名“确切集”将是 [example.com]。 当订阅者在一周内为相同的“确切集”主机名请求证书超过 5 次时,就会超出此速率限制。

解决方法:

撤销先前发布的证书将不会重置重复证书限制。 然而,仍然存在着这种情况。 如果您发现您已经超过了上限并且您仍然需要另一个证书来获取相同的主机名,您总是可以要求一个不同的主机名“确切集”的证书。 例如,如果您超出了 [example.com] 的重复证书限制,那么为 [example.com, login.example.com] 请求证书将会成功。 同样,如果您超出了 [example.com, login.example.com]的重复证书限制,那么为 [example.com] 申请一个单独的证书,为 [login.example.com] 申请另一个证书将会成功。

失败验证限制

概述:

所有颁发请求都受到每个帐户、每个主机名、每小时 5 次失败的验证失败限制 并且无法豁免。当您超过失败验证限制时,您会从您的ACME客户端收到以下错误消息:

too many failed authorizations recently: see https://letsencrypt.org/docs/failed-validation-limit/

此错误所指的“授权”是您的 ACME 客户端发送的授权请求的结果,用于在我们颁发或更新证书之前验证对域名的控制。 此错误表示多个验证请求已成功发送,但所有验证尝试均失败。

测试环境速率限制

测试环境使用与生产环境类似的速率限制,但具体数据有所变化:

  • 每个注册域名允许颁发的证书数量限制为每周 30000 张。
  • 重复证书限制为每周 30000 张。
  • 每小时允许 60 次验证失败
  • 每个 IP 地址注册账户数量限制为每个 IP 每 3 小时允许注册 50 个账户。
  • 对于 ACME v2,新订单限制为每个帐户每 3 小时 1500 个。

Let's Encrypt官网:

Let's Encrypt - 免费的SSL/TLS证书 (letsencrypt.org)

acme.sh项目地址:

acmesh-official/acme.sh: A pure Unix shell script implementing ACME client protocol (github.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/4787.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

细谈linux软硬链接

文章目录Ⅰ. 软链接Ⅱ. 硬链接1、硬链接2、硬链接数Ⅲ. 软硬链接的区别Ⅳ. 软硬链接的应用1、软链接的应用2、硬链接的应用3、硬链接创建规定Ⅰ. 软链接 ​ 在讲这些链接之前,我们都会先讲如何创建它们! ​ 对于软连接,在 linux 中&#xf…

python matplotlib 图片显示中文

在Linux 环境中,使用matplotlib 显示中文时,总是提示: /python/stock.py:273: UserWarning: Glyph 33647 (\N{CJK UNIFIED IDEOGRAPH-836F}) missing from current font. fig.savefig(self.name ".jpg", bbox_inches tight) …

【数据结构】插入排序 (直接插入排序 希尔排序)

文章目录直接插入排序希尔排序直接插入排序 把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。 如果tmp比end的数大或者相等,就继续放在end后面。 如果比end的数小&…

Elasticsearch基本安全加上安全的 HTTPS 流量

基本安全加上安全的 HTTPS 流量 在生产环境中,除非您在 HTTP 层启用 TLS,否则某些 Elasticsearch 功能(例如令牌和 API 密钥)将被禁用。这个额外的安全层确保进出集群的所有通信都是安全的。 当您在模式下运行该elasticsearch-ce…

初始React

一.React的诞生1.什么是React?React是一个讲数据渲染为HTML视图的来源Js库,用于构建用户界面的JS库。在以前的学习中构建用户界面的常用操作步骤:发送请求获取数据处理数据(过滤,整理格式等)操作DOM呈现页面2.React诞…

《SpringBoot》第02章 自动配置机制(一) 项目启动

前言 关于SpringBoot,最大的特点就是开箱即用,通过自动配置机制,遵守约定大于配置这个准则,那么这个是如何实现的呢? 本章首先会介绍SpringBoot的启动执行 一、启动第一步:初始化 1.本章概述 当启动Sp…

【论文精读(李沐老师)】Attention Is All You Need

Abstract 在主流的序列转录(给你一个序列,生成另外一个序列)模型中主要是依赖复杂的RNN和CNN,一般包括encoder和decoder两个结构。在性能最好的模型里,通常使用注意力机制连接encoder和decoder。 (本文想做…

HTTP API接口设计规范

1. 所有请求使用POST方法 使用post,相对于get的query string,可以支持复杂类型的请求参数。例如日常项目中碰到get请求参数为数组类型的情况。 便于对请求和响应统一做签名、加密、日志等处理 2. URL规则 URL中只能含有英文,使用英文单词或…

爱玩飞飞加速实现与分析

一步一步找数据。然后根据游戏数据找游戏基址,游戏基址可以遍历所有数据。想学的可以看看。第一步找基础数据,我们用的ce7.1.当然你们也可以用其他版本。网上随便下一个就行。 第一步。打开ce7.1附加游戏进程。 然后看下自己的血量是多少。我们这里是5…

HTML5支持的视频文件格式和音频文件格式有哪些?

在 HTML5 标准中, 我们有了新的 和 标签, 分别可以引入视频和音频文件的标签 那么这些标签又可以支持哪些文件格式呢 ? 格式支持 视频文件格式 MP4:MPEG-4 Part 14,支持H.264编码。几乎所有的浏览器都支持该格式。 WebM:谷歌开发的格式&a…

【最短路算法】第三弹:一文学懂spfa 算法(队列优化的Bellman-Ford算法)

博主简介:努力学习的大一在校计算机专业学生,热爱学习和创作。目前在学习和分享:算法、数据结构、Java等相关知识。博主主页: 是瑶瑶子啦所属专栏: 算法 ;该专栏专注于蓝桥杯和ACM等算法竞赛🔥近期目标&…

Java Script

一.初识js 1.与css html的关系 HTML 网页的结构(骨CSS:网页的表现(皮JavaScript :网页的行为2.运行过程 编写的代码是保存在文件上,也就是存储到硬盘(外存zhong)双击以后,html文件浏览器(引用程序)就会读取文件,将文件内容加载到内存中,(数据流向:硬盘->内存)浏览器会解析用…

Linux——基本指令

目录 01. ls 指令 02. pwd命令 03. cd 指令 04. touch指令 05.mkdir指令(重要) 06.rmdir指令 && rm 指令(重要) 07.man指令(重要) 08.cp指令(重要) 09.mv指令&…

react使用craco.config.js完成rem移动端适配(sass)

环境: "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.8.2", "sass": "^1.58.3", yarn add craco/craco postcss-pxtorem lib-flexible 1、创建 craco.…

Java入门知识(超详细讲解)

🙈作者简介:练习时长两年半的Java up主 🙉个人主页:老茶icon 🙊 ps:点赞👍是免费的,却可以让写博客的作者开兴好久好久😎 📚系列专栏:Java全栈,计…

REDIS19_zipList压缩列表详解、快递列表 - QuickList、跳表 - SkipList

文章目录①. 压缩列表 - zipList②. 快递列表 - QuickList③. 跳表 - SkipList①. 压缩列表 - zipList ①. ZipList是一种特殊的"双端链表",由一系列特殊编码的连续内存块组成。可以在任意一端进行压入/弹出操作,并且该操作的时间复杂度为O(1) (oxff:11111111) type…

BI界的ChatGPT,它有什么厉害之处

​ChatGPT火了,注册用户从0到1亿,仅用了2个月时间。ChatGPT的背后是大数据、大模型、大算力,是AI的能力集中化的典型场景。那么在BI界,是否也有一款像ChatGPT一样智能BI软件,只要告诉它我们想看啥数据,它噔…

使用 Jpom 自动构建和部署项目

比 Jenkins 简单的项目构建和部署工具。 前端项目自动构建部署 我有几个自用的前端项目,每次修改代码后都需要本地打包再上传到服务器进行部署,感觉有点麻烦,不够自动化,所以一直想找个能够实现自动构建和部署的工具。 这时候可…

智能灯泡灯一Homekit智能家居

传统的灯泡是通过手动打开和关闭开关来工作。有时,它们可以通过声控、触控、红外等方式进行控制,或者带有调光开关,让用户调暗或调亮灯光。 智能灯泡内置有芯片和通信模块,可与手机、家庭智能助手、或其他智能硬件进行通信&#…

Camtasia Studio2023非常好用的电脑录屏软件

如果你需要制作视频教程、游戏直播或其他视频内容,那么一个好的录屏软件就是必不可少的。Camtasia Studio是非常好用的录屏软件,它们可以记录计算机屏幕上发生的所有活动,并可捕捉声音。这些软件还提供了一些视频编辑功能,如裁剪、…
最新文章