Como instalar Let’s Encrypt SSL no CentOS 7 executando Servidor Web Apache
Neste tutorial, você aprenderá o procedimento de instalação do certificado TLS/SSL no servidor web Apache. Quando terminar, todo o tráfego entre servidor e cliente será criptografado. Esta é uma prática padrão de proteger sites de comércio eletrônico e outros serviços financeiros on-line. Let’s Encrypt é o pioneiro na implementação de SSL livre e será usado como o provedor de certificados neste caso.
Conteúdo
O que você precisa?
Antes de começar este guia, você precisará do seguinte:
- Acesso root SSH ao VPS CentOS 7
- O servidor web Apache com domínio e vhost configurados corretamente
Passo 1 – Instalando módulos dependentes
Para instalar o certbot você terá que instalar o repositório EPEL como não está disponível por padrão, mod_ssl também é necessário para que a criptografia seja reconhecida pelo Apache.
Para instalar essas duas dependências, execute este comando:
yum install epel-release mod_ssl
Agora você deve estar pronto para prosseguir e instalar o certbot propriamente dito.
Passo 2 – Fazendo o download do cliente Let’s Encrypt
Em seguida, você instalará o cliente certbot do repositório EPEL:
yum install python-certbot-apache
O certbot agora deve ser instalado e disponível para uso real.
Passo 3 – Configuração do certificado SSL
O Certbot irá lidar com o gerenciamento de certificados SSL com bastante facilidade, ele irá gerar um novo certificado para o nome de domínio fornecido como um parâmetro.
Nesse caso, example.com será usado como domínio para o qual o certificado será emitido:
certbot --apache -d example.com
Se você deseja gerar SSL para vários domínios ou subdomínios, execute este comando:
certbot --apache -d example.com -d www.example.com
IMPORTANTE! O primeiro domínio deve ser seu domínio base, neste exemplo é example.com .
Ao instalar o certificado, você receberá um guia passo-a-passo que lhe permitirá personalizar os detalhes do certificado. Você será capaz de escolher entre forçar HTTPS ou deixar HTTP como o protocolo padrão, fornecendo um endereço de e-mail será necessário também por razões de segurança.
Quando a instalação for concluída, você deverá receber uma mensagem semelhante:
IMPORTANT NOTES: - If you lose your account credentials, you can recover through e-mails sent to user@example.com. - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/example.com/fullchain.pem. Your cert will expire on 2016-04-21. To obtain a new version of the certificate in the future, simply run Let's Encrypt again. - Your account credentials have been saved in your Let's Encrypt configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Let's Encrypt so making regular backups of this folder is ideal. - If you like Let's Encrypt, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Passo 4 – Configurando a renovação automática do certificado
Vamos criptografar certificados são válidos por 90 dias, mas todos os profissionais da web irá recomendá-lo para renová-lo dentro de 60 dias, a fim de evitar quaisquer problemas. Para conseguir isso, o certbot nos ajudará com seu comando de renovação. Ele irá verificar se o certificado é inferior a 30 dias de expiração.
Execute este comando para prosseguir:
certbot renew
Se o certificado instalado for recente, o certbot só verificará a sua data de validade:
Processing /etc/letsencrypt/renewal/example.com.conf The following certs are not due for renewal yet: /etc/letsencrypt/live/example.com/fullchain.pem (skipped) No renewals were attempted.
Para automatizar esse processo de renovação, você pode configurar um cronjob. Em primeiro lugar, abra o crontab:
crontab -e
Este trabalho pode ser agendado com segurança para ser executado todas as segundas-feiras à meia-noite:
0 0 * * 1 /usr/bin/certbot renew >> /var/log/sslrenew.log
A saída do script será canalizada para o arquivo /var/log/sslrenew.log
.
Conclusão
Você acabou de garantir o seu servidor web Apache, implementando o recurso de segurança mais esperado – certificado SSL de graça! A partir de agora, você terá um domínio com SSL grátis, e todo o tráfego entre servidor e cliente será criptografado. Você pode ter certeza de que ninguém poderá interceptar a comunicação e alterar ou roubar informações cruciais. Consulte outros artigos sobre o certificado SSL em nossos Tutoriais.
Comentários
julho 17 2017
Consigo fazer no CentOS 6.6 ?
agosto 01 2017
Sim, você não deverá ter problemas.
outubro 04 2017
estou com um problema, tenho alguns dominios ja registrados e nao consigo gerar certificado para eles, quando o processo entra em "Waiting for verification..." retorna o seguinte erro: " Waiting for verification... Cleaning up challenges Failed authorization procedure. www.xxx.org.br (tls-sni-01): urn:acme:error:connection :: The server could not connect to the client to verify the domain :: Timeout IMPORTANT NOTES: - The following errors were reported by the server: Domain: www.xxxx.org.br Type: connection Detail: Timeout To fix these errors, please make sure that your domain name was entered correctly and the DNS A/AAAA record(s) for that domain contain(s) the right IP address. Additionally, please check that your computer has a publicly routable IP address and that no firewalls are preventing the server from communicating with the client. If you're using the webroot plugin, you should also verify that you are serving files from the webroot path you provided. " como resolver? (ps: xxx foi para fins de privacidade e ja tentei com webroot e xxx.org.br)
outubro 09 2017
Oi, Mateus. Tudo bem? O ideal seria verificarmos na sua conta o motivo disso estar acontecendo. Mas não conseguimos acessá-la pelo e-mail informado no comentário... o que acha de entrar em contato direto com nossa equipe de suporte pelo chat? Vamos te ajudar com isso, ok? Abraço :)
março 15 2019
Olá bom dia , eu adquiri um certificado comodo instalei na minha vps e ainda continua o aviso no navegador de site não seguro ,jé entrei em contato com suporte e não resolveu , aguardo resposta!
março 25 2019
Oi, João Existem vários meios de instalar o certificado SSL e isso pode ser diferente para cada sistema operacional ou painel que use na sua VPS, o melhor é procurar como é feita a instalação pelo seu painel da VPS ou O.S, você também pode procurar um profissional para ajuda-lo :)
abril 12 2021
Consigo fazer a mesma coisa numa VPS com Ubuntu Server 18.04?
abril 16 2021
Olá David, tem como sim! Talvez mude um ou outro passo, mas o processo é bem parecido, já que são todos distribuições do Linux!
agosto 31 2023
Olá!! Cara, o esquema da renovação automática foi a "cereja do bolo". Show!!
setembro 01 2023
Valeu, Sidney! Ficamos felizes em ajudar :D