O que é o desafio Let's Encrypt DNS-01 e como usá-lo para obter certificados SSL?

O Que E O Desafio Let S Encrypt Dns 01 E Como Usa Lo Para Obter Certificados Ssl



Let’s Encrypt é uma autoridade de certificação (CA) SSL gratuita e confiável. Let’s Encrypt usa políticas rígidas para verificar a propriedade de um domínio e fornece apenas certificados SSL para esses domínios verificados.

Por padrão, Let’s Encrypt usa o desafio HTTP-01 para verificar a propriedade. O desafio HTTP-01 coloca um arquivo no Webroot do seu servidor web e usa o nome DNS do servidor web para buscar o arquivo. Se o arquivo puder ser obtido na Internet, a autoridade do nome de domínio será verificada e o certificado SSL será emitido. Isso é bom para a maioria dos servidores e usuários domésticos que podem pagar um endereço IP público de seu provedor de serviços de Internet (ISP).

Mas, e se você quiser usar os certificados Let’s Encrypt SSL para os nomes de domínio da sua rede doméstica ou rede privada/interna? Bem, na maioria das redes domésticas, obter um certificado SSL Let’s Encrypt é um desafio porque muito provavelmente o seu ISP não fornecerá um endereço IP público. Portanto, você não conseguirá passar no desafio Let’s Encrypt HTTP-01 (já que seus computadores/servidores não são acessíveis pela Internet).







Nesse caso, você pode usar o desafio Let’s Encrypt DNS-01 para obter os certificados SSL para sua rede doméstica/interna. Neste método, Let's Encrypt adiciona um registro DNS TXT para o “subdomínio _acme-challenge.yourdomain.xyz” em seu servidor DNS e verifica se o registro DNS TXT está disponível na Internet. Se o registro TXT corresponder, você será verificado como proprietário do domínio e o Let’s Encrypt emitirá o certificado SSL.



Para que o desafio Let’s Encrypt DNS-01 funcione e renove automaticamente o certificado SSL, você deve usar um provedor de serviços DNS (ou seja, CloudFlare, DigitalOcean) que exponha uma API que pode ser usada para adicionar/remover os registros TXT no servidor DNS.



Se o seu registrador DNS (onde você registrou o nome de domínio) não tiver suporte para esses serviços, você poderá usar um provedor de serviços DNS terceirizado. Tudo o que você precisa fazer é alterar o endereço do servidor de nomes DNS do seu domínio do servidor DNS do seu registrador DNS para o endereço do servidor de nomes DNS do provedor de serviços DNS terceirizado desejado.





Tópico de Conteúdo:

  1. Lista de provedores de DNS que se integram facilmente com a validação de DNS Let's Encrypt
  2. Lista de clientes Let's Encrypt ACME
  3. Alterando o servidor de nomes DNS do seu registrador de domínio
  4. Vantagens da validação Let's Encrypt DNS-01
  5. Desvantagens da validação Let's Encrypt DNS-01
  6. Conclusão
  7. Referências

Lista de provedores de DNS que se integram facilmente com a validação de DNS Let's Encrypt

A comunidade Let’s Encrypt compilou um lista de provedores de DNS que expõem algum tipo de API para adicionar/remover automaticamente os registros DNS para que os clientes Let's Encrypt possam validar os nomes de domínio e emitir os certificados SSL.

A lista de provedores de DNS que se integram facilmente com a validação de DNS do Let’s Encrypt pode ser encontrada em esse link .



Lista de clientes Let's Encrypt ACME

Os clientes Let’s Encrypt também são chamados de clientes ACME. ACME significa Ambiente de gerenciamento automático de certificados. ACME é um protocolo para automatizar a interação entre o computador/servidor e a autoridade certificadora (ou seja, Let’s Encrypt).

Os clientes Let’s Encrypt ACME mais populares são:

Alterando o servidor de nomes DNS do seu registrador de domínio

Se o seu registrador de domínio não estiver na lista de provedores de DNS que se integram facilmente ao Let’s Encrypt, você pode usar CloudFlare ou outros provedores de serviços DNS terceirizados. Tudo o que você precisa fazer é alterar o servidor de nomes DNS do seu domínio do painel do seu registrador de domínio para o servidor de nomes DNS do provedor de serviços DNS terceirizado que você deseja usar.

Mostramos a você o processo de alteração do servidor de nomes DNS (para o servidor DNS da CloudFlare) de um de nossos domínios no painel/site de nosso registrador de domínio (onde registramos nosso nome de domínio) na captura de tela a seguir. O processo deve ser semelhante para o seu registrador de domínio. Para obter mais informações, leia a documentação do registrador de seu domínio ou entre em contato com ele.

Vantagens da validação Let's Encrypt DNS-01

As vantagens da validação DNS-01 do Let’s Encrypt são:

  • Não requer um endereço IP público/acessível pela Internet ou um servidor web.
  • Você pode usá-lo para emitir certificados SSL para nomes de domínio curinga (ou seja, *.nodekite.com, *.linuxhint.com).
  • Funciona bem para vários servidores web.

Desvantagens da validação Let's Encrypt DNS-01

Embora existam muitas vantagens da validação Let’s Encrypt DNS-01, também existem algumas desvantagens:

  • Para que a validação DNS-01 funcione, você precisa manter a chave/token API do seu provedor de serviços DNS no servidor que um cliente Let’s Encrypt usará para criar um registro TXT no servidor DNS para validação DNS-01. Como a chave/token da API é mantida no servidor, se o servidor for hackeado, há uma chance de que a chave/token da API seja comprometida.
  • Depois que o cliente Let’s Encrypt adiciona um registro TXT no servidor DNS, demora um pouco para propagar as alterações para outros servidores de nomes DNS em todo o mundo. O cliente Let’s Encrypt precisa aguardar que as alterações sejam propagadas para os servidores de nomes DNS comuns em todo o mundo para verificar a propriedade do domínio. Se o seu provedor de serviços DNS não fornecer o tempo de propagação do DNS na API, o cliente Let’s Encrypt não saberá quanto tempo esperar para que as alterações no DNS se propaguem para outros servidores de nomes em todo o mundo. Nesse caso, a validação do DNS pode expirar e o Let’s Encrypt pode não conseguir emitir um certificado SSL.

Conclusão

Neste artigo, discutimos o desafio Let’s Encrypt DNS-01 e por que usá-lo em vez do desafio HTTP-01 padrão para verificar a propriedade de um nome de domínio. Também discutimos os requisitos para passar no desafio Let’s Encrypt DNS-01 para obter um certificado Let’s Encrypt SSL. Listamos os provedores de serviços DNS que se integram bem com o Let’s Encrypt, bem como os clientes Let’s Encrypt ACME que você pode usar para realizar a validação de DNS do seu computador/servidor. Por fim, discutimos as vantagens e desvantagens da validação Let’s Encrypt DNS.

Referências: