Renovar domínios usando o certbot e usando o desafio do DNS

5

Eu criei vários certificados SSL para vários domínios usando o método autônomo. Estou interessado apenas nos certificados, sem integração de servidores.

Eles estão agora para renovação. Então eu corri:

certbot -d example.com --manual --preferred-challenges dns certonly

E seguiu as instruções para cada domínio (adicionando a entrada de DNS necessária para cada um). Dessa forma, não precisei parar o servidor e obter meus novos certificados.

Meu entendimento (vago) de tudo é que não há uma maneira atual de renovar certificados automaticamente usando o desafio do DNS. Ou talvez você não possa renovar os certificados automaticamente para o método "manual"?

De qualquer forma, eu escrevi este script:

#!/bin/bash

for i in renewal/*;do
  n=${i:8:-5};
  echo $n;
  # echo "\n" | certbot --text --agree-tos -d $n --manual --preferred-challenges dns --expand --renew-by-default  --manual-public-ip-logging-ok certonly;
done

Neste ponto, no diretório renewal , TODOS os domínios têm:

autenticador = manual

E:

pref_challs = dns-01

Perguntas:

  • Agora ... quando executo o "certbot renew", ele renovará todos eles automaticamente sem usar o meu script?

  • Como posso realmente criar um novo certificado usando o desafio de DNS para começar?

por Merc 22.10.2017 / 01:43

1 resposta

2

quando eu executo "certbot renew", ele renova todos eles automaticamente sem usar meu script?

TL; DR: Sim, deveria.

Vamos dar uma olhada na documentação do certbot :

As of version 0.10.0, Certbot supports a renew action to check all installed certificates for impending expiry and attempt to renew them. The simplest form is simply

certbot renew

Até agora, tudo bem.

This command attempts to renew any previously-obtained certificates that expire in less than 30 days.

Isso deve responder sua pergunta. Cuidado: Não estou ciente de como o certbot pode lidar com situações em que você move os certificados para diretórios diferentes.

Mais tarde no mesmo parágrafo:

The same plugin and options that were used at the time the certificate was originally issued will be used for the renewal attempt, unless you specify other plugins or options. Unlike certonly, renew acts on multiple certificates and always takes into account whether each one is near expiry.

Então, sim; certbot deve renovar todos os seus certificados sem a ajuda do seu script.

Como posso criar um novo certificado usando o desafio de DNS para começar?

O que há de errado com o comando que você postou no início de sua postagem? certbot -d example.com --manual --preferred-challenges dns certonly irá adquirir um certificado para example.com usando o desafio dns.

Os passos para criar um certificado são:

  • Execute o comando certbot que você postou
  • Aguarde até que o comando mostre um registro TXT de DNS
  • Crie esse registro TXT
  • Continue o comando certbot
  • Obter um certificado para o domínio especificado
  • Exclua o registro TXT (já que você só precisa dele para a criação e um novo para a renovação)

Se você deseja automatizar esse processo completo, convém dar uma olhada em uma ferramenta como lego que oferece suporte a um par de provedores de DNS .

    
por 22.10.2017 / 08:50