Vamos criptografar o certificado renovado, mas o site entrega o antigo

1

Meus certificados https expirarão em aproximadamente uma semana e eu corri o script para renová-los.

Eles parecem ser renovados, pois se eu tentar executar o certbot-auto novamente, ele mostrará algumas mensagens dizendo que a data de expiração do certificado deve estar mais próxima da data de hoje.

O problema é que o site parece que ainda está atendendo o certificado antigo. A data de expiração não é alterada.

Isso é esperado? Como forçar a renovação dos certificados?

Resultado relevante:

$ echo | openssl s_client -connect ionicabizau.net:443 2>/dev/null | openssl x509 -noout -dates
notBefore=Aug 28 03:40:00 2016 GMT
notAfter=Nov 26 03:40:00 2016 GMT

Os arquivos no servidor parecem atualizados:

$ ls
cert.pem  chain.pem  fullchain.pem  privkey.pem
$ stat -c '%y' *
2016-11-17 06:03:20.838837999 +0000
2016-11-17 06:03:20.838837999 +0000
2016-11-17 06:03:20.838837999 +0000
2016-11-17 06:03:20.838837999 +0000
    
por Ionică Bizău 18.11.2016 / 05:20

1 resposta

5

Os deamons do servidor web (apache, nginx, ...) só carregam os certificados quando a configuração é carregada e os mantêm na memória enquanto estão em execução. O certbot fornece alguns parâmetros de hook que você pode usar para recarregar o daemon depois que um certificado for renovado.

Exemplo da documentação :

certbot renew --pre-hook "service nginx stop" --post-hook "service nginx start"

Recarregar o serviço com o gancho de postagem deve ser suficiente. Isso é o que eu uso:

certbot renew --renew-hook "service nginx reload"

É claro que você poderia executar apenas service nginx reload após cada execução do certbot, mas usar o gancho renew tem o benefício de o daemon ser recarregado apenas se os certificados forem realmente renovados.

    
por 18.11.2016 / 08:01