**Como Configurar Certificados SSL/TLS no Ubuntu com Let’s Encrypt: Guia Completo para Certificados *Wildcard***

Introdução

A segurança online é essencial para proteger a integridade e a privacidade das informações trocadas entre usuários e servidores. O Let’s Encrypt facilita a implementação de certificados SSL/TLS gratuitos, mas a complexidade pode variar dependendo das suas necessidades específicas. Neste artigo, abordaremos como configurar certificados SSL/TLS no Ubuntu usando Let’s Encrypt, com foco especial na configuração de certificados Wildcard.

Os certificados Wildcard são extremamente importantes para sites que utilizam múltiplos subdomínios. Ao contrário de um certificado padrão, que cobre apenas um domínio específico (por exemplo, www.example.com), um certificado Wildcard cobre todos os subdomínios de um domínio (por exemplo, *.example.com). Isso significa que você pode proteger subdomínios como blog.example.com, shop.example.com, e qualquer outro subdomínio com um único certificado, simplificando a administração e garantindo uma cobertura completa para sua presença online.


1. Configuração de Certificado SSL/TLS no Ubuntu com Let’s Encrypt

1.1. Pré-requisitos

Antes de iniciar o processo, certifique-se de que você atende aos seguintes requisitos:

  • Ubuntu Server instalado e atualizado.
  • Servidor web Apache ou Nginx configurado e em funcionamento.
  • Domínio apontado corretamente para o seu servidor.
  • Acesso root ou sudo ao servidor.

1.2. Instalando o Certbot

O Certbot é a ferramenta recomendada para interagir com o Let’s Encrypt. Vamos instalar o Certbot e o plugin apropriado para o seu servidor web.

Atualizar o Sistema

Primeiro, atualize a lista de pacotes e o sistema para garantir que você está utilizando as versões mais recentes dos pacotes disponíveis.

sudo apt update
sudo apt upgrade

Instalar Certbot e o Plugin

Para Apache, execute:

sudo apt install certbot python3-certbot-apache

Para Nginx, execute:

sudo apt install certbot python3-certbot-nginx

1.3. Gerar e Configurar o Certificado

Certificado para Domínio Único

Apache:

Para solicitar e configurar o certificado SSL/TLS para o seu domínio com o Apache, execute o seguinte comando:

sudo certbot --apache

O Certbot detectará automaticamente as configurações do Apache e pedirá para você selecionar os domínios a serem protegidos. Você também terá a opção de redirecionar todo o tráfego HTTP para HTTPS.

Nginx:

Para o Nginx, o comando é semelhante:

sudo certbot --nginx

Assim como com o Apache, o Certbot detectará as configurações do Nginx e solicitará os domínios a serem protegidos.

Verificar a Instalação

Após a configuração, é importante verificar se o certificado foi instalado corretamente. Para o Apache, você pode verificar a configuração e recarregar o servidor:

sudo apachectl configtest
sudo systemctl reload apache2

Para o Nginx:

sudo nginx -t
sudo systemctl reload nginx

Acesse seu domínio via HTTPS para verificar se a configuração foi bem-sucedida.

1.4. Configuração de Renovação Automática

Os certificados emitidos pelo Let’s Encrypt têm uma validade de 90 dias. O Certbot configura automaticamente a renovação dos certificados. Para testar a renovação, execute:

sudo certbot renew --dry-run

Este comando simula o processo de renovação para garantir que tudo está funcionando corretamente.


**2. Obtendo um Certificado *Wildcard* com Let’s Encrypt**

Um certificado Wildcard é crucial para proteger todos os subdomínios de um domínio com um único certificado. O processo para obter um certificado Wildcard utiliza o desafio DNS-01 para validação, que é um pouco mais complexo que o processo padrão.

2.1. Pré-requisitos para Certificado Wildcard

Além dos pré-requisitos mencionados anteriormente, você precisará:

  • Acesso ao painel de controle do seu provedor de DNS ou as credenciais da API para um provedor de DNS que suporte o desafio DNS-01.

2.2. Instalando Certbot e o Plugin DNS

Se você ainda não tiver o Certbot instalado, siga as instruções acima. Além disso, você precisará do plugin DNS para o seu provedor de DNS específico ou pode usar um plugin genérico.

Para um provedor de DNS comum, como o Cloudflare, instale o plugin correspondente:

sudo apt install python3-certbot-dns-cloudflare

2.3. Configurando Credenciais do Provedor DNS

Para usar o desafio DNS-01, forneça as credenciais da API do seu provedor de DNS ao Certbot. Crie um arquivo de configuração com as credenciais necessárias:

sudo nano /etc/letsencrypt/cloudflare.ini

Adicione as seguintes linhas, substituindo YOUR_API_KEY e YOUR_EMAIL pelos valores apropriados:

dns_cloudflare_email = your-email@example.com
dns_cloudflare_api_key = YOUR_API_KEY

Proteja o arquivo com as permissões corretas:

sudo chmod 600 /etc/letsencrypt/cloudflare.ini

2.4. Gerar o Certificado Wildcard

Para solicitar um certificado Wildcard, use o seguinte comando:

sudo certbot --dns-cloudflare --dns-cloudflare-credentials /etc/letsencrypt/cloudflare.ini -d example.com -d '*.example.com' --preferred-challenges dns-01

Substitua example.com pelo seu domínio. O Certbot usará o plugin DNS para criar os registros TXT necessários para a validação do domínio.

2.5. Verificar e Configurar o Certificado

Após a emissão do certificado Wildcard, ele deve ser configurado automaticamente. Verifique a instalação acessando seus subdomínios via HTTPS.

2.6. Configuração de Renovação Automática

O Certbot configura automaticamente a renovação para certificados Wildcard. Teste a renovação com:

sudo certbot renew --dry-run

Conclusão

A configuração de certificados SSL/TLS com o Let’s Encrypt no Ubuntu é uma maneira eficaz e gratuita de garantir a segurança do seu site. A capacidade de emitir certificados Wildcard para proteger todos os subdomínios de um domínio com um único certificado oferece uma solução conveniente e segura para sites que utilizam múltiplos subdomínios. A automação fornecida pelo Certbot simplifica a administração e a renovação de certificados, garantindo que sua conexão permaneça segura e criptografada.

Edvaldo Guimrães Filho Avatar

Published by

Categories:

Leave a comment