como nstalar letsencript

Como instalar o certificado SSL Let’s Encrypt no Apache e Ngnix

O certificado SSL / TLS não custa um centavo sequer. Graças ao Let’s Encrypt.

O certificado SSL é obrigatório para qualquer site de negócios baseado em serviços transacionais, em conformidade com o PCI DSS. Ele protege os dados transmitidos do cliente para o servidor. Ter SSL / TLS (HTTPS) em seu site também ajuda a aumentar a classificação na Pesquisa do Google.

Geralmente, o certificado SSL custa mais de R$ 200 por ano; no entanto, se você precisar de um certificado para um ambiente de não produção em que a transação de dados não seja crítica, tente o FREE SSL do Let’s Encrypt.

Let’s Encrypt é uma autoridade de certificação aberta (CA) patrocinada pela SUCURI, Cisco, Facebook, AKAMAI, Chrome, Automática, SiteGround etc. que emite um certificado SSL sem nenhum custo. O Let’s Encrypt já emitiu um certificado SSL de quase 200 milhões até o momento.

instalar let´s encrypt

Vamos começar usando o Let’s Encrypt para obter o certificado SSL no ambiente Linux do Apache HTTP Server. O exemplo abaixo é baseado em techpostal.com hospedado no DigitalOcean com o servidor HTTP Apache.

Sumario

Instalando o Let’s Encrypt no Apache

  • Faça login no servidor Linux
  • Vá para o caminho em que deseja instalar o vamos criptografar
  • Clone o repositório git de vamos criptografar
git clone https://github.com/letsencrypt/letsencrypt

Nota: se você não tiver o git instalado, poderá usar o comando yum para instalá-lo.

yum install git
  • Você verá uma nova pasta “letsencrypt” criada em seu diretório de trabalho atual
drwxr-xr-x. 14 root root 4096 Mar 6 01:00 letsencrypt
  • Vá para a pasta recém-criada
cd letsencrypt
  • Execute o comando abaixo para instalar toda a sua dependência
./letsencrypt-auto

Isso pode levar alguns minutos para instalar. Ele procurará o ServerName no arquivo httpd.conf do Apache e solicitará a confirmação do nome para o qual você deseja ativar o HTTPS.

  • Selecione o nome do domínio na lista e clique em OK.
let´s encrypt selecionar domínio
  • Digite o endereço de e-mail e OK
lets encrypt email
  • Concordar com os Termos de Serviço
let´s encrypt aceitar termos
  • Ele solicitará que você escolha se deseja permitir HTTP e HTTPS ou APENAS HTTPS.
lets encrypt escolha
  • Selecione o que você deseja e OK

Demorará alguns segundos e, em seguida, você confirmará o certificado SSL ativado com êxito em seu domínio.

let´s encrypt instalação sucesso

Para validar, acesse seu URL HTTPS e você deverá vê-lo emitido por “Let’s Encrypt Authority”.

certificado let´s encrypt

Veja bem, todo o processo para obter o certificado SSL é muito fácil.

Depois de habilitar o certificado SSL para o seu site, não se esqueça de testar o site quanto à vulnerabilidade e configuração incorreta do SSL / TLS.

Instalando o Let’s Encrypt no Ngnix

Abaixo você encontra um tutorial para instalar o certificado Let’s Encrypt TLS no seu Nginx.

É fundamental a proteção do site através certificado SSL. E as razões para isso são:

  • Transmissão segura de dados entre o usuário, seja de qualquer dispositivo e o dispositivo de descarregamento TLS / SSL;
  • Melhorar o posicionamento do site nas buscas do Google.

Há um tempo atrás o Google anunciou que sites sem https: // seriam marcados como “Não Seguro” na barra do navegador Chrome.

Desde então não há dúvidas que o HTTPS é necessário.

Se estiver criando um site pessoal, blog ou um site transacional que não ocorram transações financeiras nele, poderá utilizar o certificado Let’s Encrypt.

Mas, se estiver trabalhando com um e-commerce, é recomendado a utilização de um certificado comercial.

Este artigo já estamos partindo do pressuposto que você já tenha seu servidor rodando com Ngnix instalado.

E você pode fazer isso de várias formas. Inclusive com painéis que fazem esta instalação sem esforço através de comandos do Linux.

Vamos criptografar trabalhando com o Certbot

É sem dúvidas uma das formas mais tranquilas de instalar o certificado Let´s Encrypt.

No Certbot você trabalha com um menu suspenso onde poderá selecionar o servidor e o Sistema Operacional para receber as instruções.

Selecionei Nginx e Ubuntu, conforme imagem abaixo.

certbot

Abaixo o comando que deverá executar para instalar o plug-in certbot.

# apt-get install software-propriedades-comuns
# add-apt-repository ppa: certbot / certbot
# apt-get update
# apt-get install python-certbot-nginx

Após a instalação ter sido feita com sucesso, é hora de utilizar um plug-in certbot para fazer a instalação docertificado no Nginx.

Abaixo o comando que pode ser utilizado, que fará a modificação do arquivo necessário para a configuração do certificado.

# certbot --nginx

Ele faz a verificação do CN (nome comum) no arquivo de configuração que existe no Nginx e, se não for localizado, fará a inserção.

Ex:

raiz @ instância-1 : / etc / nginx / sites-available # certbot --nginx
Salvando o log de depuração em /var/log/letsencrypt/letsencrypt.log
Plugins selecionados: Authenticator nginx, Installer nginx
Iniciando uma nova conexão HTTPS (1): acme-v01.api.letsencrypt.org
Nenhum nome foi encontrado nos seus arquivos de configuração. Por favor entre no seu domínio
nome (s) (separados por vírgula e / ou espaço) (Digite 'c' para cancelar): bloggerflare.com
Obtendo um novo certificado
Executando os seguintes desafios:
desafio http-01 para bloggerflare.com
A aguardar verificação ...
Limpando desafios
Certificado implantado no VirtualHost / etc / nginx / sites-enabled / default para bloggerflare.com
Escolha se deseja ou não redirecionar o tráfego HTTP para HTTPS, removendo o acesso HTTP.
-------------------------------------------------- -----------------------------
1: Sem redirecionamento - não faça mais alterações na configuração do servidor da web.
2: Redirecionar - Redirecione todas as solicitações para proteger o acesso HTTPS. Escolha isto para
novos sites ou se tiver certeza de que seu site funciona em HTTPS. Você pode desfazer isso
alterar editando a configuração do servidor da web.
-------------------------------------------------- -----------------------------
Selecione o número apropriado [1-2] e depois [enter] (pressione 'c' para cancelar): 2
Redirecionando todo o tráfego na porta 80 para ssl em / etc / nginx / sites-enabled / default
-------------------------------------------------- -----------------------------
Parabéns! Você ativou com sucesso https://bloggerflare.com
Você deve testar sua configuração em:
https://www.ssllabs.com/ssltest/analyze.html?d=bloggerflare.com
-------------------------------------------------- -----------------------------
ANOTAÇÕES IMPORTANTES:
 Parabéns! Seu certificado e sua cadeia foram salvos em:
   /etc/letsencrypt/live/bloggerflare.com/fullchain.pem
   Seu arquivo de chave foi salvo em:
   /etc/letsencrypt/live/bloggerflare.com/privkey.pem
   Seu certificado expirará em 27/05/2018. Para obter um novo ou aprimorado
   versão deste certificado no futuro, basta executar o certbot novamente
   com a opção "certonly". Para renovar de maneira não interativa * todos * os
   seus certificados, execute "certbot renew"
 - Se você gosta do Certbot, considere apoiar nosso trabalho:
   Doando para o ISRG / Let's Encrypt: https://letsencrypt.org/donate
   Doação para a EFF: https://eff.org/donate-le
raiz @ instância-1 : / etc / nginx / sites-available #

A automação do Certbot é inteligente!

Você deve ter notado, ele realizou a configuração necessária para deixar o Nginx pronto para utilizar o protocolo https.

Mas, se você não desejar que o Certbot altere a configuração, é só solicitar o comando abaixo.

# certbot --nginx certonly

O comando acima não fará nenhuma alteração, somente instalará o certificado para que possa configurar da maneira que preferir.

Procedimento manual

Existem várias formas de instalar o certificado emitido pelo Let’s Encrypt, mas uma das recomendadas é através da ferramenta SSL for Free.

Forneça o URL e continue com a verificação. Após ter feito a verificação, você receberá o certificado, a chave privada e a CA.

arquivos certificado ssl

Faça o download e transfira para seu servidor servidor Nginx. Vamos mantê-los na pasta ssl (crie se não existir) do caminho da instalação do Nginx.

raiz @ instância-2 : / etc / nginx / ssl # ls -ltr 
-rw-r - r-- 1 raiz raiz 1704 26 de fevereiro 10:04 private.key 
-rw-r - r-- 1 raiz raiz 1647 26 de fevereiro 10:04 ca_bundle.crt 
-rw-r - r-- 1 raiz raiz 3478 26 de fevereiro 10:57 
raiz certificate.crt @ instance-2 : / etc / nginx / ssl #

Antes de continuar com a alteração de configuração, é necessário concatenar certificate.crtca_bundle.crtem um único arquivo. Vamos nomear tlscert.crt

cat certificate.crt ca_bundle.crt >> tlscert.crt
  • Vá para a pasta sites-available e adicione o seguinte trecho de código no respectivo arquivo de configuração do site
servidor { 
escute 443; 
ssl on; 
ssl_certificate /etc/nginx/ssl/tlscert.crt; 
ssl_certificate_key /etc/nginx/ssl/private.key; 
}
  • Reinicie o Nginx
reiniciar o serviço nginx

Tente acessar o domínio através do HTTPS

instalação ssl êxito

Pronto, você acaba de instalar let´s encrypt com sucesso!

Uma opção ao Let’s Encrypt é o ZeroSSL.

Na sequência, o ideal é fazer um teste em seu site quanto à vulnerabilidade SSL / TLS e, se necessário, corrigi-los.