post

Renovar automaticamente o certificado Let’s Encrypt da Bitnami

Publicado em: 05/08/2019 / Atualizado em: 15/02/2024

Categorias: BitnamiBlogSSL

Os certificados Let’s Encrypt são válidos apenas por 90 dias. Para renovar o certificado antes que ele expire, execute os seguintes comandos no console do servidor como o usuário bitnami. Lembre-se de substituir o marcador de posição DOMAIN pelo seu nome de domínio real e o marcador de posição EMAIL-ADDRESS pelo seu endereço de email.

sudo /opt/bitnami/ctlscript.sh stop
sudo /opt/bitnami/letsencrypt/lego --tls --email="EMAIL-ADDRESS" --domains="DOMAIN" --path="/opt/bitnami/letsencrypt" renew --days 90
sudo /opt/bitnami/ctlscript.sh start

NOTA: Você pode usar mais de um domínio (por exemplo, DOMAIN e www.DOMAIN ) especificando a opção –domains quantas vezes o número de domínios que você deseja especificar. Ao fornecer vários domínios, o Lego cria um certificado SAN (Subject Alternate Names) que resulta em apenas um certificado válido para todos os domínios inseridos. O primeiro domínio da sua lista será adicionado como o “CommonName” do certificado e o restante será adicionado como “DNSNames” à extensão da SAN dentro do certificado.

Para renovar automaticamente seus certificados antes que eles expirem, escreva um script para executar as tarefas acima e agende uma tarefa cron para executar o script periodicamente. Para fazer isso:

1. Crie um script em /opt/bitnami/letsencrypt/scripts/renew-certificate.sh

sudo vim /opt/bitnami/letsencrypt/scripts/renew-certificate.sh

2. Ao acessar o editor, aperte a tecla “i” do seu teclado para habilitar a edição, e digite o seguinte conteúdo no script e salve-o. Lembre-se de substituir o marcador de posição DOMAIN pelo seu nome de domínio real e o marcador de posição EMAIL-ADDRESS pelo seu endereço de e-mail.

#!/bin/bash

sudo /opt/bitnami/ctlscript.sh stop apache
sudo /opt/bitnami/letsencrypt/lego --tls --email="EMAIL-ADDRESS" --domains="DOMAIN" --path="/opt/bitnami/letsencrypt" renew --days 90
sudo /opt/bitnami/ctlscript.sh start apache

OBS: Para sair do nano editor, aperte a tecla “Esc” e para confirmar e salvar e sair digite “:wq” e aperte “ENTER”.

3. Torne o script executável

sudo chmod +x /opt/bitnami/letsencrypt/scripts/renew-certificate.sh

4. Execute o seguinte comando para abrir o editor crontab

sudo crontab -e

Talvez a primeira vez o terminal pergunte para você qual o editor que você deseja usar, como mostra abaixo:

no crontab for root - using an empty one

Select an editor.  To change later, run 'select-editor'.
  1. /bin/ed
  2. /bin/nano        <---- easiest
  3. /usr/bin/vim.basic
  4. /usr/bin/vim.tiny

Choose 1-4 [2]:

Particularmente uso o editor “vim.basic”, mas isso vai de cada um.
Então no meu caso, digito apenas o numeral “3” e aperto “Enter” para escolher o editor “vim”.

5. Ao abrir o editor, talvez se depare com algo escrito como mostra abaixo:

# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command

Ao exibir o editor, aperte a tecla “i” do seu teclado para habilitar o editor, e adicione no final do arquivo as seguintes linhas ao arquivo crontab e salve-o

0 0 1 * * /opt/bitnami/letsencrypt/scripts/renew-certificate.sh 2> /dev/null

Para salvar e sair, aperte a tecla “Esc” e digite “:wq” (sem as aspas).

Pronto! Você acaba de criar um arquivo contendo o script de renovação de certificado e configurou seu CRON para executar este arquivo a cada 90 dias automaticamente.

Após isso tudo, seria bom você reiniciar seu servidor, não custa nada.

Se estiver usando o APACHE:

sudo /opt/bitnami/ctlscript.sh restart apache

Caso esteja usando o NGINX:

sudo /opt/bitnami/ctlscript.sh restart nginx

NOTA: Se estiver renovando vários domínios, lembre-se de atualizar o script /opt/bitnami/letsencrypt/renew-certificate.sh para incluir o (s) nome (s) de domínio adicional (s) no comando lego.

LINKS UTEIS
Fonte: https://docs.bitnami.com/aws/how-to/generate-install-lets-encrypt-ssl/

Publicações recomendadas:


Inscreva-se em Nossa News:

Seja notificando sempre que tiver conteúdo novo disponível no meu canal do Youtube ou artigo no meu Blog.

Bruno Devs News


Link Curto para Compartilhamento

Compartilhe esse conteudo nas redes sociais ou por mensagem usando o link curto abaixo. Basta clicar em cima do link para copiar.

bruno.art.br/pb/139

ID de Referência: 139

Sugira uma publicação

Envie uma mensagem e sugira um publicação sobre um assunto que tenha dificuldades de resolver.

Clique aqui e entre em contato


Comentários