Cloudflare Docs
Support
Support
Visit Support on GitHub
Set theme to dark (⇧+D)

Como validar o certificado Let’s Encrypt em um site já ativo na Cloudflare

​​ Como validar o certificado Let’s Encrypt em um site já ativo na Cloudflare

Saiba como validar um certificado SSL Let’s Encrypt para um site ativo na Cloudflare.


​​ Visão geral

Este guia descreve detalhes adicionais sobre como usar o método Webroot para verificação no cliente oficial do Let’s Encrypt descrito na documentação desse link: https://letsencrypt.readthedocs.org/en/Latest/using.html#webroot

Observe que o método padrão utilizado para autenticação do ACME pelo cliente do Let’s Encrypt é o DVSNI. O método falhará para um domínio habilitado para a Cloudflare, já que concluímos o SSL (TLS) na nossa borda e o servidor ACME nunca verá o certificado que o cliente apresenta na origem. O uso de métodos alternativos de validação do ACME como DNS ou HTTP será concluído com sucesso quando a Cloudflare estiver habilitada.


​​ Validação de HTTP

Se você estiver configurando o Let’s Encrypt pela primeira vez para um site já ativo na Cloudflare, tudo o que é preciso fazer para verificar e obter seu certificado e seu par de chaves privadas com sucesso é usar o método Webroot para a verificação. 

  1. Baixe o cliente do Let’s Encrypt e alterne para o diretório de download:

    git clone https://github.com/letsencrypt/letsencrypt
    cd letsencrypt/
  2. Execute o script de instalação automática:

    ./letsencrypt-auto
  3. Usando o cliente letsencrypt com o comando certonly e o sinalizador --webroot é possível verificar e obter o par cert/key usando a verificação de HTTP. Um exemplo de comando pode se parecer com o seguinte:

    /root/.local/share/letsencrypt/bin/letsencrypt certonly --webroot --webroot-path /usr/share/nginx/html/ --renew-by-default --email email@host.tld --text --agree-tos -d exemplo.tld -d www.exemplo.tld

    no qual

    --webroot-path

    é o diretório no qual o site está localizado no seu servidor (no exemplo, usando nginx);

    --renew-by-default

    seleciona a renovação por padrão quando os domínios são um superconjunto de um certificado obtido anteriormente;

    --e-mail

    é o e-mail de contato da recuperação e utilizado no cadastramento;

    --text

    exibe o texto do resultado

    --agree-tos

    dá o aceite ao Contrato de Assinatura do Let’s Encrypt

    -d

    especifica os hostnames a serem adicionados ao SAN.

  4. A conclusão bem-sucedida desse método de verificação exibirá um texto parecido com o seguinte:

    Parabéns! Seu certificado e sua cadeia foram salvos em /etc/letsencrypt/live/exemplo.tld/fullchain.pem. Seu certificado expirará em 2016-03-03. Para obter uma nova versão do certificado no futuro, basta executar o Let’s Encrypt novamente.
  5. Observe que tanto o certificado quanto a chave serão salvos /etc/letsencrypt/live/exemplo.tld/ . Após ambos terem sido obtidos, você precisará atualizar seu host virtual manualmente para que passe a utilizar esse par chave/cert.

Certifique-se de verificar as Page Rules para o domínio no painel da Cloudflare e confirme que não existe nenhuma que possa resultar no redirecionamento de uma solicitação da URL de validação ou que a torne acessível somente em HTTPS.


​​ Renovação

Quando chegar a hora da renovação, o comando letsencrypt renew deve permitir que o certificado seja renovado com sucesso sem qualquer alteração na configuração da Cloudflare, desde que:

  • O arquivo .conf utilizado pelo cliente letsencrypt para a renovação tenha um authenticator = webroot especificado.
  • O URL de validação seja acessível em HTTP.
  • Não existam redirecionamentos aplicados ao URL em questão. 

Alternativamente, a repetição das etapas acima também emitirá um novo certificado.