Meu próprio servidor é executado com
# Renew Let's Encrypt cert
0 5 * * * root /usr/bin/certbot renew --quiet
(este é o sabor do Ubuntu do crontab). Parece funcionar até agora. Segui as instruções no link e foi direto.
Desde alguns dias, estou tendo problemas para renovar meu certificado letsencrypt.org para o meu servidor da Web.
A documentação das ferramentas letsencrypt pode ser boa ou ruim - isso é impossível porque há certbot
, letsencrypt
, certbot-auto
, letsencrypt-auto
, /etc/certbot
que pode ser instalado ou executado no diretório de origem ou um subcomando inexistente e variado que todos de alguma forma reivindicam fazer o trabalho e então todos falham com uma saída incompreensiva com uma variação tão boa da roda de retorno sem sentido como:
Use of --agree-dev-preview is deprecated. Saving debug log to /var/log/letsencrypt/letsencrypt.log
no HEAD da ramificação principal do link - você está enviando scripts que não funcionam? Failed authorization procedure. [hostname] (http-01): urn:acme:error:connection :: The server could not connect to the client to verify the domain :: Fetching http://[hostname]/.well-known/acme-challenge/JwhGtVHZ7x6pfBztDgYL-IRQXfa1JLwhAn84Hrzi_xo: Error getting validation data
- nenhum comentário necessário O guia oficial no link para o Ubuntu 17.04 e o Apache2 falha devido a
Use of --agree-dev-preview is deprecated.
Use of --agree-dev-preview is deprecated.
Too many flags setting configurators/installers/authenticators 'webroot' -> 'apache'
que me deixa sem noção se há algum sentido em perseguir isso
link tenta explicar isso, mas falha como qualquer coisa que não no formato SE. A informação está desatualizada e tudo o que foi dito está em contradição.
A documentação como man letsencrypt
dificilmente pode ser usada, pelo menos não se você quiser entender o que está fazendo - não é obrigatório, mas é muito útil na administração de computadores - por exemplo, By default, it will attempt to use a webserver both for obtaining and installing the cert
- não tenho certeza de como um servidor da Web deve executar as etapas envolvidas ...
Estou usando o Ubuntu 17.04.
E o segredo é: é preciso configurar o Apache (por exemplo, em /etc/apache2/apache2.conf
) para permitir a leitura do diretório adicionando
Alias /.well-known/acme-challenge/ /var/www/html/.well-known/acme-challenge/
<Directory "/var/www/html/.well-known/acme-challenge/">
Options None
AllowOverride None
ForceType text/plain
RedirectMatch 404 "^(?!/\.well-known/acme-challenge/[\w-]{43}$)"
</Directory>
(de link ).
Não sei ao certo por que esse script é associado à automação se eu tiver que descobrir todos esses segredos manualmente - esse problema poderia ter sido resolvido automaticamente ou pelo menos ser apontado por uma mensagem de erro útil.