使用" letsencrypt certonly"生成新的(未续订的)SSL证书在非交互模式下

时间:2016-06-03 21:09:59

标签: ssl docker ssl-certificate kubernetes lets-encrypt

以下命令会针对公司信息,联系信息等信息提供一系列合理的提示...我希望能够运行它,但将该信息作为参数或配置文件传递但我无法从文档(https://certbot.eff.org/docs/using.html#command-line-options)中找到答案。有什么想法吗?

letsencrypt certonly \
--webroot -w /letsencrypt/challenges/ \
--text --renew-by-default --agree-tos \
  $domain_args \
 --email=$EMAIL

请注意,我并非尝试续订,而是要生成新的证书。

谢谢

2 个答案:

答案 0 :(得分:1)

您应该将--noninteractive标记传递给letsencrypt。根据您链接到的文档,这将产生错误,告诉您哪些其他标志是必要的。

答案 1 :(得分:0)

使用ployst/letsencrypt时,可以使用内部脚本完成初始证书创建。这些脚本已经传递了所有正确的参数,使其成为一个自动化过程,而不是一个交互过程。该文档包含以下两个步骤,它们都创建证书并将其作为密钥应用。

如果您的环境变量已经正确设置,您甚至不必通过-c 'EMAIL=....等。

  

生成一组新的证书

     

此容器运行后,您可以生成新证书   使用:

kubectl exec -it <pod> -- bash -c 'EMAIL=fred@fred.com DOMAINS=example.com foo.example.com ./fetch_certs.sh'
     

将证书集保存为秘密

kubectl exec -it <pod> -- bash -c 'DOMAINS=example.com foo.example.com ./save_certs.sh'