
Let’s Encrypt é uma autoridade de certificação aberta e automatizada que usa o protocolo ACME (Ambiente de Gerenciamento de Certificado Automático) para fornecer certificados TLS / SSL gratuitos para qualquer cliente compatível. Esses certificados podem ser usados para criptografar a comunicação entre seu servidor web e seus usuários. Há dezenas de clientes disponíveis, escritos em várias linguagens de programação e muitas integrações com ferramentas administrativas, serviços e servidores populares.
O cliente ACME mais popular, 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 .
O certificado disponibiliza as principais vantagens/características:
- 100% Gratuito
- Instalação simples e com atualizações automáticas
- Transparência
- Seguro.
- Visa uma política de cooperativismo
Neste tutorial veremos como utilizar a ferramenta Certibot na plataforma OpenSuSE Linux. A seguir uma breve receita de bolo para quem não conhece o recurso.
Primeiramente garanta o funcionamento correto dos módulo do Apache rewrite e ssl.
zypper install certbot python-certbot-apache
Configure o seu domínio e subdomínio corretamente no servidor DNS. Também configure o ServerName em VirtualHost no arquivo de configuração do Apache conforme o exemplo abaixo:
DocumentRoot /srv/www/htdocs/SEUDOMINIO ServerName SEUDOMINIO.com.br
Atenção especial ao rewrite para forçar o uso de https:
RewriteEngine on RewriteCond %{SERVER_NAME} =SEUDOMINIO.com.br RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
Agora com o Apache configurado corretamente, utiliza o comando Certibot, conforme o exemplo abaixo:
$ sudo certbot certonly --apache Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Which names would you like to activate HTTPS for? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: SEUDOMINIO.com.br 2: www.SEUDOMINIO.com.br - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate numbers separated by commas and/or spaces, or leave input blank to select all options shown (Enter 'c' to cancel): Obtaining a new certificate Performing the following challenges: http-01 challenge for SEUDOMINIO.com.br http-01 challenge for www.SEUDOMINIO.com.br http-01 challenge for www.SEUDOMINIO.com.br Waiting for verification... Challenge failed for domain SEUDOMINIO.com.br Challenge failed for domain www.SEUDOMINIO.com.br IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/SEUDOMINIO.com.br/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/SEUDOMINIO.com.br/privkey.pem Your cert will expire on 2020-03-22. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Para renovar o(s) Certificado(s) basta utilizar os comandos certibot new:
$ sudo certibot renew
Adicione os certificados conforme o exemplo abaixo nos arquivos .conf:
ServerAlias SEUDOMINIO.com.br SSLCertificateFile /etc/letsencrypt/live/SEUDOMINIO.com.br/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/SEUDOMINIO.com.br/privkey.pem Include /etc/letsencrypt/options-ssl-apache.conf
e PRONTO!