Neste artigo vamos falar sobre como podemos instalar o certificado Lets Encrypt SSL totalmente GRÁTIS em um servidor VPS Ubuntu.
A Let’s Encrypt é uma autoridade certificadora (AC) gratuita, automatizada e aberta utilizada para garantir a segurança no tráfego de dados de um website. Entre outras características, a Let's Encrypt promete trazer transparência, segurança e gratuidade contribuindo para o benefício comum. Neste artigo, iremos mostrar como instalar o certificado em um Servidor VPS Ubuntu.
A Let’s Encrypt recomenda que seja utilizado o cliente Certbot ACME. Ele pode automatizar a emissão de certificados e a instalação sem tempo de inatividade. O Certbot, é agora desenvolvido pela Electronic Frontier Foundation. Além de verificar a propriedade do domínio e obter certificados, o Certbot pode configurar automaticamente TLS / SSL em servidores web Apache e Nginx. Para instalar o certbot, basta executar o comando a seguir:
$ sudo apt install certbot python3-certbot-nginx
Vamos abrir o arquivo de configuração do Nginx e verificar se o domínio está correto no server name:
$ sudo nano /etc/nginx/sites-available/example.com
Encontre a linha que tenha server_name e adicione (caso ainda não esteja) os domínios configurados como o exemplo a seguir:
/etc/nginx/sites-available/example.com
...
server_name example.com www.example.com;
…
Após salvar o arquivo, basta executar o código a seguir para reiniciar o servidor Nginx:
$ sudo nginx -t
$ sudo systemctl reload nginx
Próximo passo agora é liberar acesso HTTPS no firewall permitindo que o cliente acesse o serviço do Nginx pelo modo seguro:
$ sudo ufw allow 'Nginx Full'
$ sudo ufw delete allow 'Nginx HTTP'
Seu status agora deve se parecer com este:
$ sudo ufw status
Feito todos os passos anteriores, vamos finalmente instalar o Let's Encrypt executando o comando a seguir:
$ sudo certbot --nginx -d example.com -d www.example.com
Para continuar é necessário digitar 1 ou 2. Como descrito a cima, a opção 1 indica que o servidor não vai precisar forçar a solicitação HTTPS. Já a opção 2 irá forçar o carregamento HTTPS.
Após dar ENTER irá aparecer a seguinte mensagem:
Por padrão, os certificados da Let’s Encrypt possuem validade de apenas 90 dias.
Caso queira consultar o status do vencimento, basta utilizar o recurso systemctl:
$ sudo systemctl status certbot.timer
Para testar o processo de renovação, você pode realizar uma simulação com o certbot:
$ sudo certbot renew --dry-run
Após ter instalado o SSL e precisar adicionar um novo domínio no NGINX com Let’s Encrypt, basta executar comando a seguir:
$ certbot --nginx -d novosite.com.br -d www.novosite.com.br --force-renewal
Finalmente temos o site seguro e de forma gratuita.