gpt4 book ai didi

ssl - 向letsencrypt证书添加替代名称的自动化方法

转载 作者:行者123 更新时间:2023-12-04 01:08:38 25 4
gpt4 key购买 nike

我正在寻找一种自动添加新域的方法。
我想添加 erzgebirgstraverse.de来自 https://certbot.eff.org/docs/using.html#changing-a-certificate-s-domains :

... to expand the set of domains a certificate contains ...

certbot certonly --cert-name example.com -d example.org,www.example.org


我找到了一种列出所有现有证书的方法:
hz1:/etc/apache2# certbot certificates
Saving debug log to /var/log/letsencrypt/letsencrypt.log

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Found the following certs:
Certificate Name: hz1.yz.to
Serial Number: 345a3c36ff032d325e78120c98d8ddc71f7
Domains: hz1.yz.to thomas-guettler.de
Expiry Date: 2021-03-23 09:19:00+00:00 (VALID: 80 days)
Certificate Path: /etc/letsencrypt/live/hz1.yz.to/fullchain.pem
Private Key Path: /etc/letsencrypt/live/hz1.yz.to/privkey.pem
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
现在我看到了现有的域,可以添加 erzgebirgstraverse.de-d旗帜:
hz1:/etc/apache2# certbot certonly --cert-name hz1.yz.to -d hz1.yz.to,thomas-guettler.de,erzgebirgstraverse.de
但现在一个交互式脚本开始了:
Saving debug log to /var/log/letsencrypt/letsencrypt.log

How would you like to authenticate with the ACME CA?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: Apache Web Server plugin (apache)
2: Spin up a temporary webserver (standalone)
3: Place files in webroot directory (webroot)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-3] then [enter] (press 'c' to cancel):
systemctl reload apache2
有没有办法添加一个新域(替代名称)但是 非交互式 ?

最佳答案

默认情况下,Certbot 将尝试协助您生成证书。此外,它会提示您提供信息以帮助在您的 Apache/Nginx 设置中安装它们。
要跳过此安装步骤,只需使用 certbot certonly ...子命令。根据the CLI manpages : Obtain or renew a certificate, but do not install it或者,您可以使用标志 -n/--non-interactive确保 certbot 将在不提示任何内容的情况下进行处理。在这种情况下,您必须确保所有需要的信息都通过命令行传递。特别是,您必须确保您已经同意条款和条件 (--agree-tos) 并且您提供了有效的联系电子邮件 (-m email@domain)。例子:

certbot certonly --agree-tos -m contact&mydomain.com --cert-name hz1.yz.to -d hz1.yz.to,thomas-guettler.de,erzgebirgstraverse.de
在您的问题中,系统提示您输入身份验证方法。您必须了解,让我们加密必须验证您正在执行的服务器客户端可以正确地与您尝试生成证书的域相关联。可用的方法有:
  • Apache Web 服务器插件 (apache) -> certbot 将创建 apache 设置,因此 HTTP 质询可用于验证域实际上与您的服务器相关联
  • 启动一个临时网络服务器(独立)-> Certbot 将运行自己的网络服务器来执行 HTTP 质询。这只有在没有其他网络服务器在端口 80 上监听时才有效(apache 和 nginx 将在该地址上监听)。这种方法在大多数服务器上可能没用
  • 将文件放在 webroot 目录 (webroot) -> 如果您已经有一个 HTTP 服务器在监听端口 80,您可以指示 certbot 将文件放在 webroot 目录中,以便可以使用 HTTP 质询。

  • 要从命令行预先选择 3 种可用方法之一(并避免交互式提示),请使用选项 --apache (1)、 --standalone (2) 或 --webroot (3)。
    请记住,HTTP 挑战并不是验证服务器/域一致性的唯一解决方案。基于 DNS 和 TLS 的挑战非常有用: https://letsencrypt.org/docs/challenge-types/我不确定 certbot 是否会原生实现此类挑战,但您可以找到可以实现的第三方插件。
    此外,请认为 certbot 不是唯一可用于生成证书的让我们加密的客户端。有很多可用的客户: https://letsencrypt.org/docs/client-options/

    关于ssl - 向letsencrypt证书添加替代名称的自动化方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65529493/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com