Como instalar o certificado SSL Let’s Encrypt em sua hospedagem

Como instalar o certificado Let's Encrypt

Até pouco tempo atrás, ter um certificado SSL era algo caro e de instalação complicada. Esse cenário mudou radicalmente nos últimos anos depois de iniciativas como o Let’s Encrypt. Além de ser totalmente gratuito, este certificado SSL possui processos de instalação automatizados e compatíveis com uma infinidade de sistemas operacionais.

Se você pretende instalar o Let’s Encrypt por conta própria, está no lugar certo! Neste artigo vamos ver como fazer a instalação do certificado em um passo a passo detalhado. Para aqueles que preferem um pouco mais de comodidade, veremos também algumas das empresas que oferecem a instalação automática do Let’s Encrypt.

Fique conosco e descubra. 🙂

Por que instalar o certificado SSL Let’s Encrypt

Já mencionamos a importância do certificado SSL para um site. Este recurso protege a troca de informações entre o servidor de hospedagem e seus usuários, garantindo o sigilo da comunicação e melhorando a segurança do site sob diversos aspectos. A preocupação com esse tema é tão grande que sites HTTP passaram a ser identificados como “não seguros” no Chrome. Além disso, um site que possui SSL leva vantagem nos resultados de busca do Google sobre outros similares que não possuem o recurso.

Como mencionamos no início do artigo, o Let’s Encrypt é gratuito e pode ser adquirido por qualquer pessoa com um domínio e uma hospedagem que preencha os requisitos. Apesar da gratuidade, o certificado é confiável, porque foi desenvolvido em conjunto por membros de grandes empresas de tecnologia, como a Google, Cisco, Facebook, Mozilla, entre muitas outras.

Como se não bastasse isso, desde o seu lançamento já foram emitidos mais de 50 milhões de certificados SSL Let’s Encrypt. Isso até o momento do fechamento deste artigo. Devemos concordar que este é um número impressionante, não é mesmo?

Agora que você já se convenceu de utilizar o Let’s Encrypt em seu site, vamos ver como realizar a instalação do certificado de duas maneiras distintas: manualmente ou através de uma empresa de hospedagem.

Pré-requisitos para a instalação manual do certificado SSL Let’s Encrypt

Antes de começar é importante estar ciente das condições necessárias para a instalação do Let’s Encrypt em sua hospedagem.

Você precisará de acesso shell (ou ssh) e privilégios de administrador em seu servidor de hospedagem. Apesar de algumas hospedagens compartilhadas permitirem conexão ssh com o servidor, a maioria não oferece privilégios de administrador (acesso root). Geralmente isso só é possível em servidores VPS, dedicados e hospedagens cloud.

Isso não significa, no entanto, que clientes de hospedagens compartilhadas não poderão se beneficiar do serviço. Como você verá mais adiante neste artigo, existem diversas empresas que oferecem a instalação automática e gratuita do Let’s Encrypt em hospedagens compartilhadas. Se quiser saber quais são, clique aqui e vá direto para o trecho com as empresas que oferecem a instalação automática do Let’s Encrypt.

Outro item que não pode ser ignorado para a instalação do Let’s Encrypt é a existência de um domínio válido e apontado para o servidor no qual o certificado será instalado. Isso ocorre porque a emissão do certificado depende da realização de testes automatizados no servidor, onde a propriedade do domínio será verificada.

Se você preenche todos os requisitos acima, então temos tudo pronto para seguir em frente e começar a instalação propriamente dita de um certificado SSL emitido pela Let’s Encrypt.

Se você identificou que o Let’s Encrypt não é uma opção para você, veja aqui outras maneiras de conseguir um certificado SSL gratuito para o seu site.

Como instalar o certificado Let’s Encrypt manualmente

Os procedimentos a seguir foram realizados em uma VPS na DigitalOcean com o sistema operacional Ubuntu 16.04 e o servidor web Apache. Se você possui uma configuração diferente, recomendo consultar a respectiva documentação.

Leia também: DigitalOcean: como funciona este serviço de hospedagem cloud (review)

Passo 1: Acesse seu servidor via SSH

Para começar, acesse o seu servidor de hospedagem usando o terminal. Digite o comando a seguir substituindo as informações do exemplo pelas suas.

$ ssh usuario@ip_ou_url_do_servidor

A DigitalOcean recomenda fortemente que não se use o usuário root para a realização deste procedimento. Ao invés disso, crie um novo usuário com privilégios de administrador. O passo a passo para fazer isso pode ser visto aqui.

Passo 2: Instale o Certbot

Dentre as opções de cliente para a geração de um certificado, a Let’s Encrypt recomenda o Certbot. Este pequeno programa realiza a emissão e a instalação do certificado em seu servidor de maneira rápida e transparente. No site oficial do Certbot é possível encontrar instruções de instalação para diversos servidores e sistemas.

No nosso caso, vamos seguir as instruções para a instalação no Ubuntu com Apache. Primeiro, adicione o repositório do Certbot:

$ sudo add-apt-repository ppa:certbot/certbot

Pressione Enter para aceitar as condições e atualize a lista de pacotes:

$ sudo apt-get update

Finalmente, realize a instalação do Certbot para Apache:

$ sudo apt-get install python-certbot-apache

Passo 3: Realize a emissão e instalação do certificado SSL

Agora que o Certbot foi instalado, é hora de emitir o certificado propriamente dito. Como veremos a seguir, o processo é curto e objetivo. É necessário rodar apenas um comando e fornecer algumas informações para que o cliente Certbot realize todo o procedimento.

Pois bem, digite o comando a seguir no terminal e pressione Enter para executá-lo. Lembre-se de substituir o domínio de exemplo pelo seu.

sudo certbot --apache -d meudominio.com -d www.meudominio.com

Neste exemplo, estamos emitindo um certificado tanto para o domínio principal quanto para o subdomínio www.

Como podemos observar acima, é possível inserir múltiplos domínios e subdomínios no mesmo comando. Para isso, basta acrescentar a flag “-d” e o nome do domínio em seguida. O único pré-requisito é que o mesmo esteja configurado no servidor.

Após rodar o comando, você precisará fornecer algumas informações que serão solicitadas no próprio terminal. A primeira delas é um e-mail de contato. Este e-mail será utilizado para enviar notificações sobre a renovação do certificado e eventuais alertas de segurança. Digite o e-mail no terminal e pressione Enter.

Instalação do Let's Encrypt via Certbot

Em seguida, você deverá concordar com os termos de serviço. Para isso, basta digitar a letra A (de agree, que significa concordo), como demonstrado na imagem abaixo.

Etapa da instalação do SSL Let's Encrypt

O programa vai perguntar se você deseja compartilhar seu endereço de e-mail com a Eletronic Frontier Foundation, que é organização que desenvolveu e mantém o Certbot. Caso concorde, a entidade enviará informativos sobre o seu trabalho. Para seguir adiante, escolha entre sim (Y) ou não (N) e pressione Enter.

Durante a instalação, há a opção de assinar a newsletter do EFF

Depois destas confirmações, a emissão do certificado começará e você poderá acompanhar na tela a sua evolução. Antes do término do processo, você precisará informar se deseja que o tráfego do site seja totalmente redirecionado para a versão criptografada (HTTPS) ou se deseja deixar tudo como está, sem redirecionamento.

Se não houver um motivo específico para não redirecionar, sugiro que escolha a opção 2 e redirecione todo o tráfego para rodar sob o protocolo HTTPS. Para isso, digite 2 no terminal e pressione Enter.

Redirecionamento do tráfego para HTTPS

Após esta última resposta, o certificado já deverá estar funcionando plenamente. Para verificar rapidamente, acesse a URL raiz do seu domínio usando o protocolo seguro, como no exemplo https://meusite.com. Se preferir um diagnóstico completo do certificado, acesse o endereço abaixo substituindo o exemplo pelo seu domínio:

https://www.ssllabs.com/ssltest/analyze.html?d=exemplo.com

Um diagnóstico completo será gerado, como podemos ver no exemplo abaixo.

Diagnóstico Qualys SSL Labs

Passo 4: verifique se a renovação automática está programada

Todos os certificados emitidos pela Let’s Encrypt têm duração de apenas 90 dias. Segundo a entidade, este curto prazo não é um problema, já que o processo de renovação é feito automaticamente na maioria das vezes.

O Certbot já vem programado para configurar a renovação automática do Let’s Encrypt antes da data de expiração. Na prática, ele confere diariamente a data de expiração do certificado. Se esta for menor do que 30 dias, o certificado é renovado.

Para conferir se o agendamento está configurado corretamente, rode o seguinte comando:

$ sudo certbot renew --dry-run

O comando $ certbot renew é o responsável por realizar a verificação e renovação do Let’s Encrypt. No exemplo acima, a _flag_ –dry-run dispara o script, mas em modo de teste. Assim, ele não realiza a renovação em si, apenas uma simulação.

Se houver algum problema com o agendamento, você verá um aviso na tela. Caso contrário, se o teste for realizado com sucesso, você verá uma saída como a que mostramos abaixo:

Verificando a auto renovação do certificado SSL Let's Encrypt

A qualquer momento, se houver algum problema com a renovação do certificado, você receberá um aviso no e-mail que cadastrou no início do processo.

Alternativa: instalar o certificado através de uma empresa de hospedagem

Se este tutorial pareceu muito complicado para você ou se, por qualquer outro motivo, você não deseja realizar a instalação do Let’s Encrypt por conta própria, existem alternativas. Uma das maneiras mais simples de instalar um certificado SSL Let’s Encrypt em seu próprio site é através de uma empresa de hospedagem que disponibilize o recurso.

Existem diversas empresas, nacionais e internacionais, que possuem instaladores automáticos previamente configurados no ambiente de hospedagem. Quando o recurso está disponível, você provavelmente encontrará uma área para instalar o certificado Let’s Encrypt no painel de controle da hospedagem.

Dentre as principais empresas brasileiras que oferecem suporte ao Let’s Encrypt, destacamos as seguintes:

  • KingHost (visitar site) – Foi uma das pioneiras na disponibilização do SSL grátis Let’s Encrypt. A instalação automática está disponível no painel de controle em todos os planos de hospedagem compartilhada e cloud.
  • UOL Host (visitar site – 45% OFF) – A empresa também oferece o Let’s Encrypt para instalação automática através do painel de controle da hospedagem.

O Let’s Encrypt também está disponível nas seguintes empresas de hospedagem internacionais:

  • DreamHost (visitar site – 40% OFF) – A empresa oferece o Let’s Encrypt em todos os planos de hospedagem. A instalação pode ser feita pelo painel de controle.
  • SiteGround (visitar site) – Oferece o Let’s Encrypt desde fevereiro de 2016. Inicialmente apenas as contas compartilhadas desfrutavam do recurso, mas atualmente está disponível para todos os clientes, em qualquer plano.
  • WP Engine (visitar site – 20% OFF) – Oferece o Let’s Encrypt em todos os planos, que são compatíveis apenas com sites WordPress.

Conclusão

A instalação de um certificado SSL não precisa ser algo caro ou complicado, principalmente depois de iniciativas com o Let’s Encrypt. E, como vimos aqui, o processo pode ser bem simples. Desenvolvedores e administradores de redes provavelmente vão achar o procedimento “mamão com açúcar”.

E se usar o terminal não é a sua praia, sempre pode-se contar com a instalação automática do SSL através de uma empresa de hospedagem. Apesar da lista apresentada aqui não ser muito vasta, acredito que ela vai aumentar nos próximos anos.

Se você tem uma hospedagem que ainda não oferece o SSL Let’s Encrypt, envie uma mensagem para a empresa, sugerindo a adesão. Você também pode acompanhar a lista de empresas que realizam a instalação do certificado neste link.

Depois de instalar o certificado Let’s Encrypt, o próximo passo é configurar seu site para rodar 100% sob o protocolo HTTPS. Se você usar WordPress, temos um tutorial que poderá ser bem útil. Leia em Como configurar o SSL no WordPress (https).

E se você tentou instalar o Let’s Encrypt e passou por alguma dificuldade ou está com qualquer dúvida, deixe um comentário e será um prazer ajudá-lo!

Tags: , ,

Por:

Designer, desenvolvedor web, músico — e um dos fundadores do Tudo Sobre Hospedagem de Sites. Desde 2010 vem atuando na área de hospedagem de sites, tendo ajudado centenas de pessoas a encontrarem as melhores soluções para seus projetos online. É um entusiasta do WordPress e acredita que a Internet pode transformar a vida das pessoas através do conhecimento. Desde 2013 compartilha sua experiência sobre hospedagem e criação de sites no TSHS. É responsável pela área de infraestrutura e desenvolvimento do site e autor dos artigos e tutoriais técnicos do blog.

82 Comentários

  1. Crispin

    Olá Bill. Parabéns pelo artigo. Muito bom.
    Recentemente eu estava fazendo uns testes em um VPS e em cada teste eu configurava o VPS do zero, criando novo certificado Let´s Encrypt a cada nova configuração do VPS. Foi aí que eu descobri que há um limite na emissão do certificado. Na mensagem que recebi o limite é de, no máximo, 5 certificados a cada 168 horas.
    A pergunta que lhe faço é: Uma vez que o certificado Let´s Encrypt foi instalado é está tudo configurado certinho, como faço para “salvar” este certificado e usá-lo outra vez caso eu precise configurar o VPS do zero novamente? Quais arquivos e pastas eu devo preservar para utilizar o certificado que já foi criado?

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Crispin.
      Obrigado pelo comentário. Sim, é possível salvar o certificado e até mesmo migrar um certificado válido para outro servidor.
      Os arquivos a serem copiados e a sua localização podem variar de acordo com o seu servidor web (Apache ou Nginx). Aqui e aqui estão dois tutoriais sobre como localizar e migrar os certificados em cada um desses web servers. Espero que ajude no seu caso. 🙂
      Abraços!

      Responder
        • Bill Bordallo
          Cofundador - Tudo Sobre Hospedagem de Sites

          Disponha! 🙂

  2. Tarcízio

    Olá Bill.
    Segundo a organização Let’s Encrypt, no dia 30 de setembro de 2021 às 14:01:15 de 2021 GMT – houve uma mudança radical – prevista e anunciada – no modo como os navegadores e dispositivos mais antigos confiam nos certificados SSL da emitidos pela Let’s Encrypt.

    No caso do Android, a Let’s Encrypt anunciou que lançou um sistema de assinatura cruzada que ‘compra’ mais três anos de validade para dispositivos equipados com Android 7.1.1 ou inferior, mas o Chrome não reconhece mais os certificados da Let’s Encrypt.

    Fonte:
    https://cryptoid.com.br/ssl-tls/mais-uma-ocorrencia-envolvendo-certificados-ssl-lets-encrypt-causam-problemas-de-acesso-aos-usuarios/

    A pergunta é:
    Quais empresas emissoras você conhece que emitem certificados SSL reconhecidos em dispositivos antigos como Android 6 e inferior?
    Mesmo que eu tenha que comprar, eu preciso muito de um certificado que seja reconhecido em dispositivos antigos, já perdi mais de 30% dos meus clientes.
    Desde já agradeço a atenção, e parabéns pela matéria.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Tarcízio,
      Acredito que você precisa de um certificado de validação de empresa (OV). O certificado da Let’s Encrypt é de validação de domínio apenas (DV). Diversas empresas vendem este tipo de certificado e você pode adquiri-lo diretamente com as certificadoras (ex.: CertiSign) ou através de uma empresa de hospedagem. Em todo o caso, antes de adquirir o certificado é importante checar a compatibilidade do mesmo com o suporte da empresa.
      Abraços!

      Responder
  3. Airton Pereira de Souza

    Boa noite Bill, gostei muito do seu blog, está de parabéns…
    Gostaria de tirar uma dúvida:
    Tenho uma VPS e uso o CyberPanel, dentro de um servidor CentoS 7, tenho 2 domínios, estava tudo certinho, fui usar o “SpamAssassin” e fiquei sem e-mail, como o servidor é pequeno, ele estava consumindo minha CPU e meu disco, o suporte só ajuda a deixar o servidor rodando 100%, não ajuda na hospedagem e não consegui uma viva alma para tentar resolver, a única forma foi formatar e começar do zero, foi até bom que estou ficando craque, rs
    Aí não tinha certeza se tinha ou não de emitir um novo certificado e cliquei sim, um domínio está ok depois deste click o outro diz que estou tentando usar um domínio com o nome do outro, fiz um teste no próprio site da Let’s Encrypt e está vindo com um prazo enorme (The certificate will expire in 3649 days.), se eu fizer este procedimento de instalação arrumaria isto? Tentei emitir outro pelo painel e continua do mesmo jeito, gostaria de saber se tem algum comando para remover este certificado para emitir outro, ou estou falando besteira? Está tudo quase perfeito, não queria ter que formatar outra vez, no teste que fiz tem dois erros:

    1 – (The certificate is self-signed. Users will receive a warning when accessing this site unless the certificate is manually added as a trusted certificate to their web browser. You can fix this error by buying a trusted SSL certificate)

    2- (None of the common names in the certificate match the name that was entered (www.imagedigital.com.br). You may receive an error when accessing this site in a web browser. Learn more about name mismatch errors.)

    Desculpe o texto longo, tentei resumir, mas acho que falei de mais…
    Já tem meu agradecimento antecipado…
    Quando conseguir dominar este trem, vou seguir seus passos, fazer alguns tutoriais para iniciantes que querem quebrar a cabeça assim como eu estou fazendo, “aprender ensinado”…
    Abraços
    Airton

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Airton,

      Que legal! É sempre um desafio configurar do zero, mas a satisfação é grande quando as coisas funcionam no final. 🙂

      A primeira mensagem indica que o certificado é auto-assinado, ou seja, foi emitido pelo próprio servidor (e não por uma certificadora). Esse tipo de certificado por ser usado em situações específicas, mas não é adequado para o uso do HTTPS em sites públicos.

      A segunda mensagem informa que o certificado não corresponde ao domínio que está sendo utilizado. Isso pode ocorrer com certificados auto-assinados, que podem ser emitidos para validar apenas o IP do servidor.

      Pelas mensagens, me parece que não há um certificado válido para o domínio em questão ou há algum problema de configuração. Eu tentaria reinstalar o certificado usando o Certbot. Caso necessário, você pode revogar certificados emitidos anteriormente. As instruções para isso estão nesta página.

      Espero ter ajudado!
      Um abraço e boa sorte.

      Responder
  4. Michele Bravo

    Bom dia, tudo bem?

    Primeiro, parabéns pelas explicações, ficaram muito boas.
    Queria saber se existe alguma maneira e incluir os domínios dos meus clientes em um arquivo e chamar todos eles no comando de instalação, como uma variável?
    Pergunto isso, pois preciso gerar ssl para cada domínio que aponte para o meu server e não estamos tendo sucesso na implementação.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Michele,
      Obrigado pelo comentário. Certamente é possível criar uma automação para emitir certificados SSL para múltiplos domínios em um mesmo servidor. O procedimento em si vai depender do seu ambiente e pode variar muito. Os painéis de controle mais usados atualmente já incluem algum tipo de implementação para isso, como o Auto SSL, disponível no WHM/cPanel. Mas assumo que você não está usando um painel de controle.
      Nesse caso, acredito que se você fizer uma pesquisa sobre o assunto incluindo os detalhes do seu ambiente, encontrará a resposta. Aqui, por exemplo, há um tutorial bem detalhado sobre a automação do SSL em um ambiente que usa NGINX. O próprio Certbot pode fazer a emissão do certificado para todos os domínios presentes no servidor sem que eles precisem ser listados (precisam apenas existir no servidor). Para mais detalhes, selecione o web server e o OS que está usando na página.
      Você também pode dar uma olhada na lista de clientes do Let’s Encrypt e verificar se determinado cliente já possui esta funcionalidade.
      Espero ter ajudado!
      Abraços.

      Responder
  5. Tamires Domingues

    Olá tudo bem?
    Parabéns pelo excelente site, me auxiliou muito na parte que instalação e configuração do certificado.

    Gostaria de fazer uma pergunta não sei se você tem a resposta, em relação ao teste no https://www.ssllabs.com/ como posso melhor o Rate do site, meu teste apresentou Rate “B” e apresentação amarela em protocol support, mas não localizei nenhuma referencia que possa ser utilizada para melhorar, meus conhecimentos em redes e servidores são poucos, mas estou fazendo o possível para aprender.

    Desde já muito obrigada pela ajuda, e novamente parabéns pelo conteúdo tão bem apresentado.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Tamires,
      Obrigado pelo comentário. 🙂
      A avaliação “B” em protocol suporte indica que o seu certificado ainda dá suporte às versões 1.0 e/ou 1.1 do protocolo TLS. Estas versões foram descontinuadas e os navegadores modernos não fornecem mais suporte para elas. Para alertar os usuários, o SSL Labs classifica os domínios que ainda dão suporte a estas versões com a nota “B” (saiba mais aqui).

      A princípio, você pode continuar dando suporte a estas versões do TLS, para viabilizar o acesso de usuários com navegadores antigos, desde que também ofereça, primariamente, as versões mais modernas, como a 1.3 (mais recente). Existem alguns tutoriais ensinando como habilitar a versão 1.3 do TLS em servidores que utilizam o Let’s Encrypt (veja aqui um exemplo). Alternativamente, você pode usar um serviço como o CloudFlare e escolher, via painel, a versão mínima do TLS que deseja disponibilizar para seus usuários. Aqui está um artigo sobre a versão do TLS 1.3 disponibilizada pelo CloudFlare.

      Espero ter ajudado.
      Abraços!

      Responder
      • Tamires Domingues

        Oi Bill!

        Muito obrigada pela explicação e a ajuda, me foi muito útil.

        Novamente parabéns pelo excelente site.
        Abraços!

        Responder
        • Bill Bordallo
          Cofundador - Tudo Sobre Hospedagem de Sites

          Oi, Tamires! Disponha!
          Obrigado pelo retorno. 🙂
          Abraços!

  6. Flávio Coutinho

    A qualidade dos seus postes são incríveis!! Você vai a fundo e explica com detalhes! Assinei sua newsletter no instante que terminei de ler! Muito obrigado!

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Flávio!
      Obrigado pelo comentário. Fico feliz em saber que nosso trabalho te ajudou! 😀
      Abraços!

      Responder
      • Flávio Coutinho

        Opa, agora estou podendo testar com mais calma! Olha, esse repositório não existe mais e a forma de instalação está diferente no site da CertBot. Eles usam um tal de “snap” também e mudou o nome do pacote para python3 no Ubuntu 20.04

        Responder
        • Bill Bordallo
          Cofundador - Tudo Sobre Hospedagem de Sites

          Oi, Flávio!
          Legal, obrigado por avisar! Vou me organizar aqui para atualizar o tutorial.
          Abraços!

  7. nilton duarte

    minha hospedagem é a hostinger e ela cobra tudo.
    assim que compro um dominio, preciso comprar SSL e Cloudflare.
    Entao preciso instalar um SSl e cloudflare gratuito.
    tenho acesso pela plataforma no panel da hostinger no diretorio, faria apenas por ai. Poderia me dizer como fazer, por favor

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Nilton,
      Você pode usar um plano gratuito do CloudFlare independentemente da hospedagem que estiver usando. Veja o tutorial de configuração aqui.
      Quanto ao SSL, a instalação no servidor de hospedagem exige algumas permissões especiais, que geralmente não estão disponíveis em planos de hospedagem compartilhada. As instruções neste tutorial, por exemplo, demandam acesso root ao servidor. Alternativamente, você pode usar o SSL via CloudFlare. Nesse caso, depois de configurar o serviço, pode escolher uma das opções de SSL que não exige a instalação no servidor, como a Flexível.
      Abraços.

      Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Diego,
      Consegue sim! Nesta página há uma lista de clientes do instalador do Let’s Encrypt. Ela inclui algumas opções para Windows / IIS.
      Abraços.

      Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Matheus,
      Sim, com certeza. O ideal é configurar a renovação automática do Let’s Encrypt. No entanto, se houver algum problema com o script, você pode rodá-lo manualmente.

      O script de renovação é semelhante ao de instalação (ex.: $ sudo certbot --apache -d meudominio.com -d www.meudominio.com). Depois de renovar o SSL, você pode verificar se a renovação automática está habilitada para rodar normalmente (ex.: $ sudo certbot renew --dry-run). Lembrando que estes comandos são apenas exemplos. Você deve adaptá-los de acordo com o seu servidor de hospedagem. Veja a documentação completa do Certbot (linha de comando) aqui. Outras opções de instalação estão descritas aqui.

      É comum que exista falha na renovação automática se o DNS do seu domínio estiver apontado para uma CDN, ao invés do servidor de hospedagem (ex.: CloudFlare). Nesse caso, talvez seja mais interessante você usar o SSL da CDN, já que o Let’s Encrypt precisa que o domínio esteja apontado para o servidor para ser renovado automaticamente.

      Qualquer dúvida, basta retornar.
      Abraços!

      Responder
      • Matheus

        Obrigado Bill

        Acho que a isntalação do certbot nao esta concluindo, sera que é pq uso o debian?

        Responder
        • Bill Bordallo
          Cofundador - Tudo Sobre Hospedagem de Sites

          Olá, Matheus,
          O Certbot é compatível com o Debian. Qual mensagem de erro está sendo exibida no terminal?

    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Obrigado, Gabriel! 🙂

      Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Breno,
      Pelo que descreveu, houve alguma falha no carregamentos dos demais elementos da página, como folhas de estilo e imagens. Isso pode ocorrer por diversos motivos, como redirecionamento incorreto ou problemas com a emissão do certificado. Se quiser nos passar mais detalhes, podemos tentar ajudá-lo.

      Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Obrigado pelo comentário, William!

      Responder
  8. Gabriel

    Só queria te agradecer Bill, pois é um artigo muito pratico e fácil de executar, obrigado por compartilhar.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Obrigado, Gabriel! 🙂

      Responder
  9. Guilherme Miguel

    Parabéns pelo ótimo conteúdo. Só tenho uma dúvida, existe grande diferenciação na instalação utilizando o Azure? Existe algum tutorial?

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Guilherme,
      Obrigado pelo comentário. O método para instalação do Let’s Encrypt está relacionado ao sistema operacional da sua instância. Então, se você estiver usando, no Azure, um ambiente como o usado aqui, poderá seguir os passos. Caso contrário, é melhor procurar pela combinação específica.
      Não temos nenhum tutorial específico do Azure, mas encontrei este aqui e me pareceu interessante.
      Outra fonte que pode ser útil é o site da Certbot. Basta selecionar o SO e o servidor web que ele vai informar as instruções de instalação (usando o Certbot) para a combinação indicada.
      Espero ter ajudado. Precisando, é só entrar em contato.
      Abraços!

      Responder
  10. Dagoberto Cardoso

    Tenho uma revenda linux da https://www.saninternet.com.

    Eles não dão acesso root, mas tenho SSL gratuito para os domínios, mas diz que não é totalmente seguro (imagens, por exemplo). Podem ajudar?

    Obrigado.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Dagoberto,
      Se um certificado SSL válido foi instalado com sucesso, o navegador não deve emitir qualquer tipo de aviso de site inseguro. Pelo que descreveu, a página pode estar sendo carregada pelo protocolo seguro (HTTPS), mas com algumas imagens sendo carregadas em HTTP. Quando isso ocorre, os navegadores informam que a conexão não é 1000% segura. A solução, felizmente, é bem simples. Basta analisar o código-fonte do site ou da aplicação e substituir as chamadas de imagens e demais recursos que utilizam HTTP pela URL equivalente em HTTPS (exemplo: http://site.com/imagem1.jpg vira https://site.com/imagem1.jpg).
      Qualquer dúvida, basta entrar em contato!
      Abraços.

      Responder
  11. Paulo

    Na KingHost da pra usar em servidores compartilhados, e é só dar um click no painel de controle e todo o processo é automatizado, incluindo a renovação periódica.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Paulo,
      Sim, isso mesmo. A KingHost foi uma das primeiras empresas do Brasil a implementar a instalação automática do Let’s Encrypt, mesmo nos planos de hospedagem compartilhada. Inclusive mencionamos isso no texto. 🙂
      Abraços.

      Responder
  12. Leoni Medeiros

    Olá, montei um site em WordPress na Amazon Aws , agora estou querendo adicionar um certificado ssl mais não tenho muita noção de VPS , este tutorial funcionaria na Amazon AWS com Ubuntu 18.04 ?
    o meu site já esta funcionando com domínio registrado é em wordpress…
    Obrigado !

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Oi, Leoni,
      Não testei esse procedimento no Ubuntu 18.04, então podem haver algumas diferenças. Mas encontrei este tutorial na Digital Ocean que acho que vai te ajudar!
      Vale lembrar que, depois de instalar o SSL, você ainda precisa configurar o WordPress para rodar 100% sobre o HTTPS. Temos um tutorial que explicar como fazer. Veja em Como configurar o SSL no WordPress (https).
      Espero ter ajudado. Qualquer dúvida é só entrar em contato.
      Abraços!

      Responder
  13. Carlos

    Um freelancer fez a configuração da minha VPS Vultr, instalou o wordpress e configurou o SSL.

    Agora o certificado expirou… vocês tem algum tutorial que eu mesmo consiga fazer a renovação do ssl?

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Carlos,
      Primeiramente você deve acessar o servidor usando um terminal (ssh/shell). Uma vez no servidor, você pode usar os seguintes comandos:

      – Para ver os certificados existentes:

      $ certbot certificates

      – Para renovar os certificados:

      $ certbot renew

      – Se houver algum erro e quiser “forçar” a renovação, use:

      $ certbot --force-renewal

      Para instruções mais detalhadas, você pode visitar certbot.eff.org. Informe o servidor e o sistema operacional e a página exibirá as instruções.

      Qualquer dúvida, basta entrar em contato.
      Abraços.

      Responder
  14. claudinei

    Este foi o melhor e mais efetivo tutorial que eu vi na internet, procurei por 2 dias por tutoriais na internet todos muito vagos e não mostrava e nem explicava o passo a passo. Muito obrigado por compartilhar o conhecimento.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Claudinei,
      Obrigado pelo comentário. Fico feliz em saber que o artigo lhe foi útil! 🙂
      Abraços.

      Responder
  15. Cassio Jose de Jesus

    Boa tarde Bill,

    Olha eu aqui te perturbando novamente.

    Eu gostaria de saber, se pode me ajudar com mais uma dúvida.

    Estou montando uma estrutura com Ansible e Docker, para poder gerar os certificados, mas no ambiente não tenho IP Externo válido e nem o domínio está publico ainda.

    Estou usando o comando abaixo para tentar gerar, mas me vem uma mensagem de erro, que descrevo abaixo também.

    Será que tem uma luz mágica para mim?

    === COMANDO USADO ===

    certbot-auto certonly –standalone -d graylog.dominio.com.br –preferred-challenges http –agree-tos -n -m equipe.suporte@dominio.com.br –keep-until-expiring

    === MENSAGEM DE ERRO ===
    Failed authorization procedure. graylog.nidotecnologia.com.br (http-01): urn:ietf:params:acme:error:connection :: The server could not connect to the client to verify the domain :: Fetching http://graylog.nidotecnologia.com.br/.well-known/acme-challenge/XtCgVxM1YsiS0UBcGu2m0Hrf3azp2TQGKDDO4S_5J10: Connection refused

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Cassio,
      Me parece que o erro está relacionado às permissões públicas de acesso na pasta .well-known. Esse diretório é criado pelo Let’s Encrypt na raiz do domínio para o qual se deseja gerar o certificado. Nesse caso, o domínio precisa estar apontado para o servidor e a pasta precisa estar disponível publicamente, para que possa ser acessado externamente pela certificadora do Let’s Encrypt. Repare que, ao tentar acessar a URL https://graylog.nidotecnologia.com.br/.well-known/acme-challenge/XtCgVxM1YsiS0UBcGu2m0Hrf3azp2TQGKDDO4S_5J10 a página de login é exibida. Daí o erro de conexão (connection refused).
      Acho que você pode tentar corrigir isso e tentar novamente.
      Espero ter ajudado! Precisando, é só entrar em contato.
      Abraços.

      Responder
      • Cassio Jose de Jesus

        Grato pelo retorno Bill.

        Realmente agora se clicar no na URL indicada, ela vai car na tela de login do Graylog.

        No caso eu criei este certificado em um container com apenas o NGINX atuando como proxy reverso.

        Pelo que entendi de sua explicação, independente de ter ou não um serviço WEB o a certificadora, precisa de um endereço válido para fazer esta checagem externamente. Correto?

        Desculpe pela confusão, mas a minha solução é bem confusa mesmo, caso queira mais detalhes, tem o meu endereço de e-mail e podemos falar por outro canal, para não polemizar aqui no seu POST.

        Forte abraço.

        Responder
        • Bill Bordallo
          Cofundador - Tudo Sobre Hospedagem de Sites

          Olá, Cassio,
          Isso mesmo, a certificadora precisa de um endereço válido para fazer a verificação. Acho que se você conseguir resolver este ponto, conseguirá emitir o certificado.
          Não se preocupe, é interessante compartilhar situações peculiares como essa com os leitores. Talvez outros que estejam passando por situações semelhantes possam se beneficiar dos comentários. Mas se desejar enviar informações que você não quer que fiquem públicas, pode enviar um e-mail para .
          Abraços!

  16. Fernando

    É possível instalar o Let’s Encrypt na hospedagem Terra? Além disso, qual é o procedimento de instalação para esta hospedagem?

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Fernando,
      Não encontrei nenhuma documentação que informe sobre a possibilidade de utilização do Let’s Encrypt na hospedagem Terra. As opções que eles oferecem são o SSL compartilhado (que não tem muita utilidade para criptografar um domínio personalizado) e um gerenciador de SSL chamado de SSL Vanity. Você pode obter mais informações sobre estas ferramentas aqui e aqui.
      Entrei em contato com a equipe de vendas do Terra para esclarecer esta questão, mas infelizmente a pessoa que me atendeu não soube informar. Tentei contato com o suporte técnico, mas ele só está disponível para os clientes do Terra, o que não é o meu caso. Então, infelizmente não consigo te dar 100% de certeza se é possível ou não instalar o Let’s Encrypt na hospedagem Terra.
      Se você tiver acesso SSH ao servidor de hospedagem, pode tentar seguir os passos descritos neste tutorial. No entanto, já te adianto que muitas hospedagens compartilhadas não permitem a instalação do Let’s Encrypt dessa forma. As que oferecem o recurso o fazem através do painel de controle.
      Espero ter ajudado. Precisando, basta entrar em contato.
      Abraços!

      Responder
  17. Luiz Elcides

    Primeiro agradecer o tutorial, fiz a instalação no meu cloud server e deu tudo certo. Parabéns e obrigado por compartilhar conosco seu conhecimento na área.
    Gostaria de saber se existe algum site/ferramenta que faça a verificação de todo o site, para indicar se existe alguma de suas páginas ainda que estão sem HTTPS? Uso o joomla.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Oi, Luiz,
      Obrigado pelo comentário.
      Não conheço uma ferramenta que faça isso de maneira instantânea, mas você pode fazer esta verificação usando a própria busca do Google. É necessário esperar alguns dias após a mudança para que o Google faça a indexação do seu site com as novas URLs. Vá então até a busca do Google e faça uma pesquisa no formato site:seudominio.com.br. O resultado será uma lista com todas as URLs que o Google indexou no seu site. Se o site for muito grande, pode ser trabalhoso verificar todas as URLs, mas para sites menores este comando é uma mão na roda!
      Importante: antes de fazer esta verificação, é fundamental configurar um redirecionamento no servidor e no Joomla para que todas as URLs sejam redirecionadas para a versão HTTPS. Depois disso, crie um novo perfil no Google Search Console (antigo Google Webmaster Tools) com o novo formato de URL.
      Espero ter ajudado! Qualquer dúvida, é só entrar em contato.
      Abraços.

      Responder
  18. Bill Rocha

    Bill, essa postagem me ajudou muito e já recomendei para todos os meus amigos – Obrigado!

    Porém, estou com alguns subdomínios instalados (críticos) e queria saber se é possível adicionar outros sem “quebrar tudo” 😛
    Apenas rodar o Certbot, acrescentando toda a lista anterior e mais os novos?

    Nem vou tentar (crítico mesmo) até você me dar uma resposta!!

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Bill!
      Obrigado pelo comentário.
      Sim, você pode adicionar os subdomínios à lista de certificados do Certbot sem “quebrar tudo”, fique tranquilo. 😉
      Para isso, rode o comando de emissão do certificado incluindo os domínios que já emitiu e também os novos subdomínios. Nesse caso, você deve usar a flag --expand, como no exemplo abaixo:

      $ sudo certbot --apache --expand -d exemplo.com -d subdominio1.exemplo.com -d subdominio2.exemplo.com

      Depois de acompanhar a emissão dos certificados, rode o comando abaixo para visualizar os certificados emitidos:

      $ sudo certbot certificates

      Verifique também se está tudo certo com a renovação automática:

      $ sudo certbot renew --dry-run

      Acredito que esses passos são suficientes para você emitir os certificados com sucesso. Qualquer problema me fale e tentarei ajudá-lo.
      Abraços!

      Responder
  19. CASSIO J DE JESUS

    Bill,

    Um dúvida, eu fiz a instalação e configuração do Lets Encrypt em meu domínio em Junho e ele gerou a data de expiração para 09 de setembro.

    Mesmo rodando o programa para forçar a atualização, a data de expiração, continua para 09 de setembro.

    Sabe de algum macete para forçar a atualização ou o Lets Encrypt somente atualiza quando está próximo de vencer?

    Abs,

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Cassio,
      O período de validade padrão do Let’s Encrypt é mesmo de 90 dias, então me parece que está tudo certo quanto à data de expiração.
      Sobre forçar a renovação manualmente, acredito que não há necessidade disso. Se você configurou o certbot corretamente, ele vai rodar um script diariamente para verificar a data de expiração. Caso a mesma seja menor do que 30 dias, ele será renovado. Ou seja, na prática, a cada 2 meses o seu certificado será renovado automaticamente. Se não houver nenhum motivo especial para alterar isso, acho que você pode ficar tranquilo. 🙂
      Ah, e tem mais uma coisa: o Certbot também vai te avisar por e-mail se algum problema ocorrer durante a renovação do Let’s Encrypt.
      Espero ter ajudado! Se tiver outras dúvidas, basta entrar em contato.
      Abraços!

      Responder
  20. Bruno

    Cara, parabéns pelo artigo! Tentei instalar um certificado no meu site olhando uns mil sites gringos e não conseguia..aí achei o teu post e tudo funcionou perfeitamente aqui! Abraço!

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Oi, Bruno,
      Que legal, muito bom saber! 😀
      Abraços!

      Responder
  21. Carlos

    Olá, muito bom o post, fiz a instalação em um domínio hospedado na DigitaOcean com servidor Ubuntu 16.04, ocorreu tudo certo na instalção, porem não abre o site, aparece a seguinte mensagem no navegador “Redirecionamento em excesso por divulgador-social.com” já configurei o arquivo .htacess com as seguintes linhas:
    RewriteEngine On
    RewriteCond %{SERVER_PORT} 80
    RewriteRule ^(.*)$ https://divulgador-social.com/$1 [R,L]
    e mesmo assim não funcionou, o que pode ser?

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Carlos,
      Este erro indica que existe mais de um redirecionamento configurado para o domínio. Se você usa algum CMS (ex.: WordPress), verifique se as configurações da plataforma ou de algum plugin estão causando o redirecionamento. Nesse caso, antes de começar, renomeie ou remova temporariamente o .htaccess e investigue o que pode estar causando o redirecionamento.
      Se quiser fornecer mais informações sobre as configurações do seu site, posso tentar te ajudar com outras ideias.
      Abraços!

      Responder
  22. jose

    o scrypt nao ta funcionando ta falando que e protegido e pra usar precisa entrar em contato com vcs

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, José,
      Para rodar o script criado pela Certbot é necessário ter privilégios de administrador na hospedagem, caso contrário ele não vai rodar. Imagino que isto foi o que te impediu de prosseguir. Nesse caso, por favor informe qual é a sua hospedagem e podemos tentar te ajudar a instalar outra opção de SSL. O suporte técnico da empresa também pode fornecer mais informações sobre o assunto.
      Espero ter ajudado. Qualquer dúvida, basta entrar em contato.
      Abraços!

      Responder
  23. CASSIO JOSE DE JESUS

    Ótimo post.

    Uma dúvida, eu eu fizer a instalação do certificado do Lest’s Encrypt em um servidor e depois mudar o site de local, sabe informar se consigo migrar os certificados criados ou se tenho que fazer uma nova instalação?

    Abs,

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Cassio,
      Obrigado pelo comentário.
      Se você utilizar o Certbot para gerar o Let’s Encrypt, a migração pode ser feita copiando o diretório /etc/letsencrypt (incluindo os subdiretórios) para o novo servidor. Todos os certificados emitidos e as configurações estão neste diretório. Depois de migrar, você pode rodar o comando $ letsencrypt renew --dry-run para checar se a renovação automática vai ocorrer sem problemas.
      Lembre-se de que o Let’s Encrypt depende do domínio estar apontado para o servidor para funcionar. Portanto, você precisa apontar o DNS para o novo servidor para o certificado passar a ser renovado com sucesso após a migração.
      Se puder ajudar com mais alguma informação, basta entrar em contato.
      Abraços!

      Responder
        • Bill Bordallo
          Cofundador - Tudo Sobre Hospedagem de Sites

          Disponha, Cassio!

  24. Paulo Roberto

    Bom dia para todos
    Aproveitando essa discussão, eu gostaria de saber se alguém conhece alguma revenda que eu possa instalar o ssl gratuito para todos os meus clientes . Acho que a hostgator tem planos bem em conta para pagamentos trienal, mas as informações dessa empresa são pobres e eu não tenho certeza que conseguiria instalar o Let’s Encrypt para meu site principal e todos os meu clientes , se alguém puder me ajudar .
    Obrigado

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Paulo,
      Infelizmente nem todas as revendas oferecem certificado SSL gratuito para os clientes dos revendedores. No caso da HostGator, apenas o domínio principal da revenda tem direito ao SSL gratuito e você não pode usar o Let’s Encrypt nos planos.
      Aqui no Brasil, a Hostinger e a Locaweb oferecem SSL grátis para os os domínios dos revendedores. Se o inglês não for um impedimento, a revenda da SiteGround também oferece o recurso. No caso deles, o certificado é o Let’s Encrypt, instalado e renovado automaticamente.
      Espero ter ajudado!
      Abraços.

      Responder
  25. Anderson

    A umbler também oferece instalação rápida de ssl Let’s Encrypt.

    Responder
    • Redação
      Equipe Tudo Sobre Hospedagem de Sites

      Olá, Anderson,
      De fato, a Umbler oferece a instalação automática do Let’s Encrypt, bastando, para isso, ter o DNS apontado para lá.
      Obrigado por informar.

      Responder
  26. Marco Duarte

    Gostei realmente do Post, porém, como proceder em um caso com o Bitnami WordPress. Acredito que seja um processo comum com Apache, mas ao executar os comandos, recebi várias mensagens de erro.
    Abraços

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Marco,
      Você poderia informar quais são as mensagens de erro e quando aparecem?
      Abraços.

      Responder
      • Marco Duarte

        Ola Bill !! as mensagens são bem longas, mas vou colocar parte delas aqui:

        Error while running apache2ctl graceful.
        httpd not running, trying to start
        Action ‘graceful’ failed.
        The Apache error log may have more information.

        AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1. Set the ‘ServerName’ directive globally to suppress this message
        (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
        (98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
        no listening sockets available, shutting down
        AH00015: Unable to open logs

        A mensagem sugere que o Apache não esteja rodando, porem, estou usando o Bitnami WordPress, e pelo que sei, ele usa sim o Apache.

        Abraços

        Responder
        • Bill Bordallo
          Cofundador - Tudo Sobre Hospedagem de Sites

          Olá, Marco,
          Obrigado por enviar as informações.
          Pelo que andei pesquisando, parece que o comando padrão de instalação do Let’s Encrypt via Certbot não funciona como deveria com o Bitnami. Em muitos casos o problema parece estar relacionado ao caminho do diretório web root. Nesta thread de ajuda do Let’s Encrypt parece que há uma possível solução. Espero que ajude!
          Um abraço.

  27. Francisco Costa

    Ótimo post.
    Você tem alguma dica de como instalar o Let’s Encrypt no Jboss Wildfly?
    Abraço!

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Francisco,
      Obrigado pelo comentário. Particularmente, nunca usei o JBoss WildFly, mas encontrei dois tutoriais que podem ser úteis. Você pode acessá-los aqui e aqui.
      Abraços!

      Responder

Deixe um comentário

Todos os comentários são moderados. Então, seu comentário não será exibido imediatamente após o envio.
Mas fique tranquilo(a), porque ele será respondido em breve. 😉