Como faço para instalar um certificado curinga Let's Encrypt SSL no Amazon Lightsail?
Quero instalar um certificado SSL curinga para meu site em uma instância do Amazon Lightsail.
Breve descrição
A resolução a seguir abrange a instalação de um certificado SSL curinga Let's Encrypt para sites hospedados em uma instância do Lightsail sem uma pilha Bitnami. Exemplos desses blueprints de instância incluem o Amazon Linux 2 ou o Ubuntu. Se você tiver um blueprint de instância diferente ou quiser instalar um certificado padrão, consulte uma das opções a seguir:
- Para instalar um certificado SSL padrão do Let's Encrypt (não um curinga) em uma instância do Lightsail sem uma pilha Bitnami, como o Amazon Linux 2 ou o Ubuntu, consulte Como instalo um certificado SSL Let's Encrypt padrão em uma instância do Lightsail?
- Para instalar um certificado SSL padrão do Let's Encrypt (não um curinga) em uma instância do Lightsail com uma pilha Bitnami, como WordPress, LAMP ou Magento, consulte Como faço para instalar um certificado SSL Let's Encrypt em uma pilha Bitnami hospedada no Lightsail?
- Para instalar um certificado curinga do Let's Encrypt em uma instância do Lightsail com uma pilha Bitnami, como WordPress, LAMP, Magento ou MEAN, consulte Como instalo um certificado SSL Let's Encrypt curinga em uma pilha Bitnami hospedada no Amazon Lightsail?
Resolução
Observação: antes de começar, instale a ferramenta Certbot. Para obter instruções de instalação, consulte Como instalo o pacote Certbot na minha instância do Lightsail para instalação do certificado Let's Encrypt?
O método para instalar um certificado curinga Let's Encrypt SSL na sua instância do Lightsail depende do provedor de DNS do seu domínio. Para começar, verifique se o seu provedor de DNS aparece em DNS Plugins no site do Certbot. Os métodos a seguir explicam como instalar o certificado no servidor. Você deve concluir manualmente as etapas adicionais. Por exemplo, você deve configurar o servidor para usar o certificado e deve definir o redirecionamento HTTPS.
Se o domínio usa um dos provedores de DNS listados
No exemplo a seguir, o provedor de DNS é o Amazon Route 53. Para obter instruções sobre outros provedores de DNS compatíveis, consulte DNS Plugins no site do Certbot.
-
Crie um usuário do AWS Identity and Access Management (IAM) com acesso programático. Para obter as permissões mínimas de usuário IAM necessárias para que o Certbot conclua o desafio de DNS, consulte certbot-dns-route-53 no site do Certbot.
-
Para abrir o arquivo /root/.aws/credentials no editor nano, execute os seguintes comandos:
sudo mkdir /root/.aws sudo nano /root/.aws/credentials
-
Copie as seguintes linhas para o arquivo:
[default] aws_access_key_id = AKIA************E aws_secret_access_key = 1yop**************************l
Observação: substitua aws_access_key_id pela ID da chave de acesso criada na etapa 1.
-
Para salvar o arquivo, pressione Ctrl + X, depois Y e, por fim, pressione ENTER.
-
Crie um certificado Let's Encrypt no servidor. Se o seu domínio usa o Amazon Route 53 como provedor de DNS, execute o seguinte comando:
sudo certbot certonly --dns-route53 -d example.com -d *.example.com
Observação: substitua example.com pelo seu nome de domínio.
-
Depois que o Certbot gerar o certificado SSL, você receberá a mensagem Successfully received certificate. Os locais do certificado e do arquivo de chave também são fornecidos. Copie esses locais de arquivo em um arquivo de texto para uso na etapa 8.
-
Configure a renovação automática do certificado.
Se o pacote Certbot for instalado com o snapd, a renovação será configurada automaticamente nos cronômetros ou cronjobs do systemd.
Se a distribuição do sistema operacional for Amazon Linux 2 ou FreeBSD, o pacote Certbot não será instalado com o snapd. Para configurar a renovação manualmente, execute o seguinte comando:echo "30 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew" | sudo tee -a /etc/crontab > /dev/null
-
Agora você instalou o certificado e configurou a renovação. No entanto, você ainda deve configurar o servidor Web para usar esse certificado e também deve configurar o redirecionamento de HTTPS. A configuração depende da configuração do servidor Web da sua instância. Consulte a documentação do serviço Web para obter instruções de configuração.
Se o seu domínio não usa um dos provedores de DNS listados
Observação: esse método não é compatível com a renovação automática de certificados.
Nas etapas a seguir, você adiciona registros TXT no provedor de DNS do domínio. Esse processo pode levar algum tempo. É uma prática recomendada executar comandos no Linux GNU Screen para evitar que a sessão seja interrompida.
-
Para iniciar uma sessão do Screen, insira o seguinte comando:
screen -S letsencrypt
-
Para iniciar o Certbot no modo interativo, insira o seguinte comando. Esse comando informa ao Certbot para usar um método de autorização manual com desafios de DNS para verificar a propriedade do domínio.
sudo certbot certonly --manual --preferred-challenges dns -d example.com -d *.example.com
Observação: substitua example.com pelo seu nome de domínio.
-
O Certbot solicita que você adicione registros TXT aos registros DNS do seu domínio. Essa ação verifica se você é o proprietário do domínio especificado. O Let's Encrypt fornece um único ou vários registros TXT para serem usados na verificação.
-
Ao ver um registro TXT na tela, adicione o registro fornecido ao DNS do seu domínio. Observação: não pressione ENTER até confirmar que o registro TXT foi propagado para o DNS da Internet. Não pressione Ctrl + D porque essa ação encerra a sessão de tela atual.
-
Para confirmar que o registro TXT foi propagado para o DNS da Internet, consulte-o em DNS Text Lookup no site do MX Toolbox. Para executar a verificação, insira o seguinte texto na caixa de texto e selecione TXT Lookup:
_acme-challenge.example.com
Observação: substitua example.com pelo seu nome de domínio.
-
Se seus registros TXT forem propagados para o DNS da Internet, você verá o valor do registro TXT na página. Volte para a tela e pressione ENTER.
Observação: se você for removido do shell, use o comando screen -r SESSIONID para voltar a entrar. Para localizar a ID da sessão, execute o comando screen -ls. -
Se o prompt do Certbot solicitar que você adicione outro registro TXT, repita as etapas de 4 a 6.
-
Depois que o Certbot gerar o certificado SSL, você receberá a mensagem Successfully received certificate. Os locais do certificado e do arquivo de chave também são fornecidos. Copie esses locais de arquivo em um arquivo de texto para uso na etapa 9.
-
Agora você instalou o certificado e configurou a renovação. No entanto, você ainda deve configurar o servidor Web para usar esse certificado e também deve configurar o redirecionamento de HTTPS. A configuração depende da configuração do servidor Web da sua instância. Consulte a documentação do serviço Web para obter instruções de configuração.
Conteúdo relevante
- AWS OFICIALAtualizada há 8 meses
- AWS OFICIALAtualizada há 7 meses
- AWS OFICIALAtualizada há 5 meses
- AWS OFICIALAtualizada há 9 meses