Ir para conteúdo principal

Como instalar SSL na VPS utilizando Certbot

Instalando um certificado SSL em sua VPS com Certbot utilizando Python

Atualizado há mais de 2 anos

Se o sistema operacional de sua VPS não possui um painel de controle ou não tem uma opção integrada de SSL gratuito, você pode gerar e instalar um certificado Let's Encrypt SSL com Certbot. Siga estes passsos:

Passo 1 - Preparando a VPS

Antes de instalar o SSL, certifique que sua VPS:

  • Tem um servidor web rodando (como Apache, NGINX, etc.)

  • O site hospedado em sua VPS está configurado para ser aberto inserindo o domínio nome na barra de endereço - não o IP

  • O domínio está propagando e apontando para os child nameservers da sua VPS. Instalar um SSL com Certbot enquanto o domínio estiver propagando irá criar um certificado auto-assinado, o que pode causar erros acessando seu website.

Passo 2 - Instalando as dependências

O Certbot recomenda o uso do snapd para instalação. Como o snapd não é suportado no VPS baseado em Linux da Hostinger, você pode usar o Python instalando-o primeiro em seu servidor.

Para iniciar o processo, conecte-se a sua VPS usando SSH. Em seguida, instale as dependências necessárias (Python 3.6+, venv e Augeas) de acordo com seu sistema operacional:

Para distribuições baseadas em APT (como Debian ou Ubuntu), execute o seguinte:

sudo apt update
sudo apt install python3 python3-venv libaugeas0

Para distribuições baseadas em RPM (Fedora, CentOS), use este comando:

sudo dnf install python3 augeas-libs

ANOTAÇÕES:

  • Para distribuições mais antigas que não suportam dnf, use yum

  • Algumas distribuições baseadas em RHEL usam python3x em vez de python3 (por exemplo, python38). Consulte a documentação da sua distribuição Linux 🙂

  • Se você tiver problemas para instalar a criptografia, talvez seja necessário instalar dependências adicionais. Confira este artigo para obter mais informações: Construindo criptografia no Linux

Passo 3 - Instalando o Certbot

Para prevenir quaisquer conflitos com versões anteriores, remova quaisquer pacotes do Certbot instalados antes da instalação da nova versão. Você pode utilizar o seu gerenciador de pacotes (apt, dnf, yum, etc.) para isso.

Quando estiver pronto, rode o seguinte comando utilizando um sistema virtual Python:

sudo python3 -m venv /opt/certbot/
sudo /opt/certbot/bin/pip install --upgrade pip

Para instalar o Certbot, rode este comando no Apache::

sudo /opt/certbot/bin/pip install certbot certbot-apache

Ou esse para o NGINX:

sudo /opt/certbot/bin/pip install certbot certbot-nginx

Depois, crie um link simbólico para que o Certbot possa ser executado de qualquer caminho:

sudo ln -s /opt/certbot/bin/certbot /usr/bin/certbot

Instale e ative o SSL para seus sited e tenha o Certbot para realizar todas as configurações executando o comando para Apache:

sudo certbot --apache

Pàra NGINX:

sudo certbot --nginx

OBSERVAÇÃO:

  • Para obter apenas os certificados e configurar o SSL manualmente, anexe certonly após certbot e antes de --apache ou --nginx.

Como o SSL fica ativo por 90 dias, é recomendável configurar a renovação automática. Você pode fazer isso executando o seguinte comando:

echo "0 0,12 * * * root /opt/certbot/bin/python -c 'import random; import time; time.sleep(random.random() * 3600)' && sudo certbot renew -q" | sudo tee -a /etc/crontab > /dev/null

É isso, agora você pode visitar seu site em uma janela anônima para verificar se o SSL está instalado e funcionando corretamente 😊

Recursos adicionaisAdditional resources:

Isto respondeu à sua pergunta?