certbot申请泛域名证书并自动续签(使用docker进行部署)

一、涉及到的资源及文档

1、云解析 - OpenAPI 概览:https://next.api.aliyun.com/document/Alidns/2015-01-09/overview

2、certbot-auth-alidns:

https://github.com/zphiliam/certbot-auth-alidns

3证书来源于

LetsEncrypt

4、certbot官方:

https://certbot.eff.org/

二、主要步骤:

1、用git拉取certbo

安装certbot

从gitbhub拉取组件:
git clone https://github.com/tengattack/certbot-dns-aliyun.git

2、获取阿里云AccessKey

包括id和secret,成对儿使用,登录阿里云控制台,可以使用主账号的AccessKey,推荐利用RAM创建子账号的AccessKey,更安全。

  • 所以首先创建ram账号

  • 添加dns访问权限,添加访问accesskey权限

  • 获取刚创建ram用户的id和secret

3、修改配置文件

  • 修改配置文件scripts/credentails/aliyun.ini

(1)、dns_aliyun_access_key 是访问阿里云 DNS 服务所需的 Access Key ID,它是一个唯一的标识符,用于验证您对阿里云资源的访问权限。

(2、)dns_aliyun_access_key_secret 是与 Access Key ID 相对应的密钥秘钥,用于对访问进行身份验证。这是一个保密信息,不应公开或共享。

  • 修改配置文件scripts/letsencrypt/cli.ini

修改域名和邮箱:

  • 个别参数讲解

(1)、installer = nginx: 这个参数指定了使用的安装器,这里是 Nginx。这意味着 Certbot 将尝试自动配置 Nginx 服务器以使用新的证书。

(2)、agree-tos = true: 这个参数表示同意 Let's Encrypt 的服务条款。

(3)、no-eff-email = true: 这个参数表示不向 Let's Encrypt 提供效果统计数据的电子邮件地址。

(4)、authenticator = dns-aliyun: 这个参数指定了认证器,即用于验证域名所有权的方法。这里使用的是阿里云 DNS 认证

(5)、preferred-challenges = dns: 这个参数指定了首选的验证方式,这里是 DNS 验证。在 DNS 验证中,Certbot 通过添加特定的 DNS 记录来验证域名。

(6)、dns-aliyun-credentials = '/root/.secrets/aliyun.ini': 这个参数指定了阿里云 DNS 认证所需的凭据文件的路径。该凭据文件可能包含访问阿里云 API 的密钥和其他配置信息。

(7)、dns-aliyun-propagation-seconds = 120: 这个参数指定了等待 DNS 记录传播的时间(以秒为单位)。在修改 DNS 记录后,需要一些时间让修改生效,这个参数设置了等待的时间。

(8)、email = example@demo.com: 这个参数是必需的,用于提供有效的电子邮件地址,以便通知证书相关的信息。

(9)、domains = '*.demo.com,demo.c: 这个参数是必需的,用于指定要申请证书的域名列表。在这个例子中,包括 *.demo.com 和 demo.com

****这里可以是主域名,也可以是泛域名

  • 泛域名(Wildcard Domain)是指一个通配符(通常是 * 号)被用于代表任意子域名的域名。这意味着泛域名可以匹配多个不同的子域名。
  • 主域名(Primary Domain)是指一个完整的域名,它是由顶级域名(如 .com、.org)和次级域名(如 example)组成的。

4、编写nginx的配置文件

/certbot-dns-aliyun/scripts/letsencrypt/live 这个目录下 需要注意:此文件为软连接文件在使用

源文件在:/certbot-dns-aliyun/scripts/letsencrypt/letsencrypt/archive/

5、执行脚本

./build.sh

****构建一个包含NGINX和阿里云DNS插件的镜像*****

./setup.sh

*****这是一个Shell脚本,主要作用是安装Let's Encrypt证书自动更新的定时任务。****

./run.sh

****用于执行Certbot与阿里云DNS插件的容器化操作。*****

6、启动nginx的docker容器

  • docker-compos up -d

certbot申请泛域名证书并自动续签保姆级教程的更多相关文章

  1. 使用 certbot 申请泛域名https证书

    使用 certbot 申请泛域名https证书 Intro Certbot 是一个基于 Let's Encrypt 的自动化申请证书的工具,支持的系统和web server也很多,详见 Certbot ...

  2. Let's encrypt申请泛域名证书以及报错处理

    申请泛域名证书的步骤请参考该链接地址: https://www.jianshu.com/p/df6d13187578 报错信息: No matching distribution found for ...

  3. Let's encrypt申请泛域名证书

    1.下载工具 wget https://dl.eff.org/certbot-auto chmod a+x ./certbot-auto 2.初始化 ./certbot-auto 3.获取证书(1) ...

  4. Let's Encrypt免费泛域名证书申请

    一. 下载acme.sh,以下四条命令任选一条即可 curl https://get.acme.sh | shwget -O - https://get.acme.sh | sh curl https ...

  5. Let's Encrypt 泛域名证书申请

    泛域名 泛域名证书又名通配符证书是SSL证书中的其中一种形式,一般会以通配符的形式(如:*.domain.com)来指定证书所要保护的域名. OV证书和DV证书都会有通配符的域名形式提供,而EV证书一 ...

  6. 让网站永久拥有HTTPS - 申请免费SSL证书并自动续期 Let’s Encrypt

    让网站永久拥有HTTPS - 申请免费SSL证书并自动续期 Let’s Encrypt 为什么要用HTTPS  网站没有使用HTTPS的时候,浏览器一般会报不安全,而且在别人访问这个网站的时候,很有可 ...

  7. CentOS 7配置Let’s Encrypt支持免费泛域名证书

    Let’s Encrypt从2018年开始支持泛域名证书,有效期3个月,目前仅支持acme方式申请,暂不支持certbot. 1.安装acme.sh curl https://get.acme.sh ...

  8. let's encrypt部署免费泛域名证书

    环境说明 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) [root@localhos ...

  9. acme.sh建立SAN证书 和泛域名证书

    文件来源 https://github.com/Neilpang/acme.sh/wiki/How-to-issue-a-cert domain=$domain time=`date +%Y%m%d% ...

  10. gogetssl申请的域名证书私钥文件丢了,可以重新申请个吗?

    因为gogetssl是不保存我们使用浏览器生成的KEY文件的,CSR文件倒是可以有办法再找到 也就是说Certificate Signing Request(CSR)可以想想办法,但是Your Pri ...

随机推荐

  1. salesforce零基础学习(一百三十二)Flow新功能: Custom Error

    本篇参考: https://help.salesforce.com/s/articleView?id=sf.flow_ref_elements_custom_error.htm&type=5 ...

  2. 使用ensp搭建路由拓扑,并使用isis协议实现网络互通实操

    转载请注明出处: 1.通过拓扑搭建如下拓扑: 其中R7.R8为L1,R6为L1/2,R9为L2. 2.配置isis实现网络互通 R7配置如下: [Huawei]isis 1 [Huawei-isis- ...

  3. dig 简明教程

    哈喽大家好,我是咸鱼 不知道大家在日常学习或者工作当中用 dig 命令多不多 dig 是 Domain Information Groper 的缩写,对于网络管理员和在域名系统(DNS)领域工作的小伙 ...

  4. 这一大波Offer来的太突然了

    今年 10 月份之前,作为双非院校的本科生来说是非常煎熬的,十几年的求学之路,加上猛学编程和猛肝算法,到头来却是"无一次面试机会",背后的辛酸不言而喻. 然而,国庆之后," ...

  5. OpenTiny Vue 支持 Vue2.7 啦!

    你好,我是 Kagol. 前言 上个月发布了一篇 Vue2 升级 Vue3 的文章. 少年,该升级 Vue3 了! 里面提到使用了 ElementUI 的 Vue2 项目,可以通过 TinyVue 和 ...

  6. Odoo—货运管理—odoo时差问题

    第一次踩odoo时差的坑,才知道原来odoo在存储日期数据时,是以UTC0时区存放的,和北京时间相差8个小时.只是odoo本身能很好的处理日期数据的存储和展示,所以刚开始接触odoo,不容易发现这个问 ...

  7. Kurator v0.5.0发布,打造统一的多集群备份与存储体验

    本文分享自华为云社区<Kurator v0.5.0正式发布! 打造统一的多集群备份与存储体验>,作者: 云容器大未来 . Kurator 是由华为云推出的开源分布式云原生套件.面向分布式云 ...

  8. Service Mesh:微服务架构的救世主还是多余的花招?

    Service Mesh的前世今生 在前面,我们提出了一个问题:随着模块和节点的增多,微服务之间难免会遇到各种网络问题.为了解决这些问题,目前有一个解决方案,即使用Spring Cloud中的各个组件 ...

  9. Verilog HDL数据流建模与运算符

    数据流建模使用的连续赋值语句由关键词assign开始,一般用法如下: wire [位宽说明]变量名1, 变量名2, ..., 变量名n; assign 变量名 = 表达式; 只要等号右边的值发生变化, ...

  10. Ubuntu 20.04 挂载 NTFS 硬盘 / 格式化并挂载 EXT4 硬盘

    创建挂载目录 mkdir /mnt/hdd 此目录在最后一步中用得到. 确定要挂载的硬盘 fdisk -l 由于我们要挂载的是 NTFS 硬盘,根据上面的信息,可以确定 /dev/sda1 是我们要挂 ...