Como configurar SSL no seu site de forma rápida e gratuita com Let’s Encrypt

Ter um site pronto para SSL é cada vez mais importante. O Google classifica um endereço HTTPS acima de um endereço HTTP, e isso é definido para continuar até que o HTTP seja remetido ao histórico.

Veja como gerar certificados SSL rapidamente e implementá-los em seu site em poucos minutos e gratuitamente.

SSL grátis e fácil com Let's Encrypt

Configurar SSL em seu site nunca foi tão fácil graças ao Let's Encrypt, uma autoridade de certificação SSL popular e gratuita.

Fundado em abril de 2016, o script certbot e o fato de ser um serviço gratuito tornaram o Let's Encrypt um nome popular no mundo do desenvolvimento online.

Instale o certbot

Este artigo pressupõe que você já tenha um servidor web Linux e um nome de domínio ao qual deseja adicionar SSL. Conecte-se ao seu servidor via SSH e verifique se o certbot já está instalado ou não com o comando:

 sudo certbot --version

Se o número da versão for exibido, o certbot já está instalado e você pode seguir para a próxima seção. Caso contrário, você pode instalar o certbot com o seguinte comando:

 sudo apt-get -y install certbot

Gerar certificado SSL

Para garantir que este artigo funcione para todos os servidores, primeiro desligue temporariamente o servidor HTTP existente com o comando apropriado:

 sudo service nginx stop
 sudo service apache2 stop

Observe que o nome de domínio para o qual deseja gerar um certificado SSL já deve estar apontando para o endereço IP do seu servidor web. Supondo que sim, gere um novo certificado SSL com o comando:

 certbot certonly

Você deverá escolher um método para verificar o seu nome de domínio. Pressione 1 para ativar uma instância de servidor temporária e o próximo prompt pedirá seu nome de domínio. Ao entrar no seu domínio, o certbot irá verificar e garantir que o nome do domínio seja resolvido para o seu servidor, o que significa que você controla o domínio e, em seguida, gera seu novo certificado SSL.

Configurar Nginx

Se você estiver usando o Nginx como seu servidor HTTP, primeiro determine onde está o arquivo de configuração do seu site. Basicamente, sempre estará em um dos seguintes diretórios:

  • / etc / nginx / sites-enabled
  • /etc/nginx/conf.d

Depois de saber a localização do arquivo de configuração do seu site, abra-o em um editor de texto como o nano com o comando:

 sudo nano /etc/nginx/sites-enabled/default.conf

No início do arquivo, adicione as seguintes linhas:

 server {
listen 80;
rewrite ^ https://$server_name$request_uri? permanent;
}

Isso redirecionará automaticamente todas as solicitações não SSL do seu site para a parte correspondente SSL. Na parte superior do arquivo, você verá o início da configuração do seu site:

 server {
listen 80;
server_name domain.com www.domain.com;

Modifique isso e mude listen 80; para ouvir 443 ssl; Em seguida, adicione as seguintes linhas abaixo:

 ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
 ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem;

Certifique-se de substituir domain.com nas linhas acima pelo seu nome de domínio. Salve e feche o arquivo pressionando Ctrl + W seguido do prompt e reinicie o Nginx com o comando:

 sudo service nginx start

Visite seu site, e agora ele deve estar em SSL sem qualquer aviso do navegador sobre um site inseguro.

Configurar Apache

Se você estiver usando o Apache como seu servidor HTTP, primeiro localize o arquivo de configuração do seu site, que provavelmente estará no diretório / etc / apache2 / sites-enabled . Se você não tiver certeza do local, execute o comando:

 apachectl -S

Isso exibirá todos os hosts virtuais configurados no Apache com seus respectivos locais. Depois de localizar o arquivo de configuração, abra-o em um editor de texto com o comando:

 sudo nano /etc/apache2/sites-enabled/default.conf

Na parte superior deste arquivo, insira as linhas:

 <VirtualHost *:80>
ServerName yourdomain.com
Redirect permanent / https://yourdomain.com/
</VirtualHost>

Dentro da diretiva <VirtualHost *: 80> existente, altere a porta de 80 para 443. Dentro desta diretiva, adicione as linhas:

 SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain.com/privkey.pem

Certifique-se de alterar domain.com nas linhas acima com seu domínio real. Salve e feche o arquivo pressionando Ctrl + X seguido do prompt e reinicie o Apache com o comando:

 sudo service apache2 start

Visite seu site, e agora ele deve estar em SSL sem qualquer aviso do navegador sobre um site inseguro.

Renovar certificados SSL

Se for o caso, quando você precisar renovar os certificados SSL para seu site, isso pode ser feito facilmente com o seguinte comando:

 certbot renew

Site seguro!

Parabéns, agora todos os visitantes do seu site serão forçados a usar sua versão SSL, que agora está protegida contra um certificado SSL recém-gerado e assinado por uma autoridade confiável, o que significa que seus visitantes não receberão nenhum aviso de segurança.

Neste artigo, você aprendeu o que é certbot , como gerar novos certificados SSL, como configurar Nginx ou Apache com SSL e como renovar seus certificados em uma data posterior.

Crédito da imagem: Robert Avgustin / Shutterstock