Let's Encrypt SSL 泛解析证书申请
本文介绍了使用`acme.sh`脚本自动申请泛域名SSL证书的过程。首先,通过API Token来获取必要的信息,然后配置`acme.sh`以自动生成证书。最后,通过命令行工具提交请求并查看证书结果。此外,还提供了一些关于证书续期的提示和链接。

​ Let's Encrypt 提供了免费的证书,今天正好用来申请就记录了下面的内容:

acme.sh介绍

acme.sh是一个实现了 acme 协议的脚本,可以从 Let's Encrypt 生成我们需要的泛解析SSL证书.当然,你用来生产普通证书也是没有问题的.

本文仅对使用域名提供/解析商的 API Token 来自动申请泛域名证书的过程进行讲解,acme.sh还有很多很强大的功能例如配合 Nginx 或者 Apache 自动申请证书等,请自行查看 github 项目 wiki 发掘

项目链接:Github - Link

安装 acme.sh

curl https://get.acme.sh | sh
# 或者
wget -O- https://get.acme.sh | sh

安装过程不会修改已有的任何系统功能和文件,请放心食用. acme.sh在程序结束后会被自动安装到~/.acme.sh/目录中

获取API Token

因为acme.sh支持非常广泛具体 API Token. 支持列表:点我跳转

以DNSPOD为例子:

​ 登录DNSPod,进入顶部导航栏里的用户中心,在左侧的导航栏里,找到安全设置,看到页面的最下面,有个API Token.点击查看->创建API Token->填写Tokens名称,复制好ID与Token即可.

申请域名SSL证书

可以临时设置变量 /或者直接修改 ~/.acme.sh/account.conf 文件配置

export DP_Id="API ID"
export DP_Key="Token"

下面我们来正式开始申请泛域名证书,将 esc.show换成你自己的域名(重要!)

cd ~/.acme.sh/
acme.sh --issue -d esc.show -d *.esc.show --dns dns_dp

注:不同的域名解析商所用命令有细微不同!如果你的提供商不是DNSPod,请自行去上面的链接查看!

查看证书

申请完成后屏显会输出证书路径 证书文件名为fullchain.cer 密匙文件名为example.com.key

由于证书默认(在你没安装宝塔等同样调用 acme 签发证书的面板时)会在 acme 的内部目录~/.acme.sh/中生成,不建议直接使用该路径填写至 nginx 等配置中,而是使用--installcert命令 参考

证书续期

Let's Encrypt 证书的有效期为三个月,acme.sh会每隔60天自动帮你续期,无需你进行任何干预

如果你想强制续期或者取消自动续期可以看 Github链接 参考链接

文章内容引用 https://zhuanlan.zhihu.com/p/75146599

咻兔哔
咻兔哔·2020年10月26日

本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处

推荐文章

Docker环境下数据库的备份操作
运维技术

Docker环境下数据库的备份操作

1. MySQL备份:使用Docker容器执行mysqldump命令,将指定数据库的备份导出为SQL文件。2. MySQL备份压缩:使用gzip命令将备份文件压缩为tar.gz格式,以减小文件大小并提高传输效率。3. 自动清理超过7天的备份:通过find命令查找7天前生成的.gz文件,并删除这些文件。4. 在单个命令中导出和导入MySQL数据库:使用mysqldump命令直接从源数据库导出转储文件,然后使用mysql命令将其导入到目标数据库。5. 从完整的MySQL转储还原单个MySQL数据库:如果备份包含了所有数据库,可以使用--one-database选项从包含多个数据库的备份文件中还原单个数据库。6. 恢复数据库:使用docker exec命令执行mysql命令,从指定的SQL文件中恢复数据库。

12月28日4
docker-mysql配置内存
运维技术

docker-mysql配置内存

这段代码是用于调整MySQL服务器的性能参数,以提高其运行效率。主要修改了以下几个参数:1. `performance_schema_max_table_instances`:将此参数设置为400,意味着MySQL可以同时打开的最大表实例数。2. `table_definition_cache`:将此参数设置为400,表示MySQL可以缓存的表定义数量。3. `performance_schema`:关闭此选项,以减少对监控MySQL服务器资源消耗和资源使用情况的依赖。4. `table_open_cache`:将此参数设置为64,表示MySQL可以打开的表的数量。5. `innodb_buffer_pool_chunk_size`:将此参数设置为64M,表示InnoDB缓冲池中块的大小。6. `innodb_buffer_pool_size`:将此参数设置为64M,表示InnoDB存储引擎的表数据和索引数据的最大内存缓冲区大小。

7月28日3
日常记录-GITLAB部署以及相关资料
运维技术

日常记录-GITLAB部署以及相关资料

Docker部署GitLab的步骤:1. 使用docker run命令,将GitLab容器设置为detach模式,并设置端口映射。2. 设置容器名称为gitlab,并重启容器,除非停止。3. 将容器挂载到本地路径,包括etc、log和data目录。4. 安装GitLab Ce(容器引擎)。5. 在runner执行过程中,如果遇到文件夹不存在或无权限的问题,可以尝试删除gitlab-runner并重新安装,或者更改用户和启动服务。

1月18日2
七牛OSS支持HTTPS的方法
运维技术

七牛OSS支持HTTPS的方法

最近网站图片连接出问题,原来是Chrome规则限制了SSL/HTTPS。解决方法是用反向代理,具体步骤如下:1. 备案域名并确保七牛CNAME正常工作。2. 在服务器上新建站点,绑定SSL证书并修改配置文件。3. 配置反向代理规则,将请求转发到指定地址。

10月26日4