Base de Coñecemento Instrucións sinxelas para traballar co servizo Profitserver
Páxina Base de Coñecemento Certbot: Instalando Let's Encrypt Certificate

Certbot: Instalando Let's Encrypt Certificate


Neste artigo, exploraremos o proceso de instalación e configuración de Certbot nun servidor Linux. Explicaremos en detalle como obter un certificado Let's Encrypt SSL/TLS para o teu dominio. Tamén describiremos como instalalo nun servidor web (como Nginx ou Apache) e configuraremos as renovacións automáticas de certificados para garantir unha conexión segura continua co teu recurso web.

Certbot é unha ferramenta gratuíta e de código aberto deseñada para a adquisición e renovación automática de certificados SSL/TLS . Xoga un papel crucial á hora de protexer a conexión entre o servidor e o cliente, protexendo os datos do acceso non autorizado. Certbot simplifica o proceso de instalación e renovación dun certificado SSL. O certificado non só mellora a seguridade, senón que tamén aumenta a confianza do usuario no teu recurso web, mellorando así tanto a reputación do sitio como a súa clasificación nos motores de busca.

Instalación de Certbot

Certbot está incluído na maioría das distribucións por defecto, polo que para instalalo en sistemas Debian/Ubuntu , só precisa actualizar a lista de paquetes:

apt update

A continuación, inicie o proceso de instalación:

apt install certbot

Certbot admite complementos que facilitan a configuración e configuración do certificado para un servidor web. Para instalar estes complementos, use o comando correspondente:

apt install certbot python3-certbot-nginx # for Nginx
apt install certbot python3-certbot-apache # for Apache

O proceso de instalación para sistemas Red Hat (como RHEL , CentOS , Fedora ) é lixeiramente diferente. Inicialmente, cómpre engadir o repositorio EPEL:

yum install epel-release

A continuación, instale a ferramenta:

yum install certbot

Do mesmo xeito, hai unha opción para seleccionar un complemento para un servidor web específico:

yum install python3-certbot-nginx # for Nginx
yum install python3-certbot-apache # for Apache

Despois da instalación, pode proceder inmediatamente á obtención do certificado.

Obtención dun certificado SSL

Nesta sección, discutiremos o proceso de obtención dun certificado independentemente dun servidor web específico, seguido de describir o proceso de instalación do certificado para Nginx e Apache. Non obstante, primeiro é esencial comprender a sintaxe e a funcionalidade do programa. Aparece do seguinte xeito:

certbot command option -d domain

Os principais comandos inclúen:

certbot certonly - Recupera o certificado pero non o instala.
certbot certificates - Este comando mostra unha lista de todos os certificados instalados.
certbot renew - Amplía o certificado existente.
certbot revoke - Revoga o certificado existente.
certbot delete - Elimina o certificado existente.

As opcións máis utilizadas son:

--nginx - Usa scripts de configuración de Nginx para verificar o dominio.
--apache - Usa scripts de configuración de Apache para a verificación do dominio.
-d - Unha lista de dominios para os que se solicita o certificado.
--standalone - Usa o modo autónomo para a verificación do dominio.
--manual - Realiza a verificación manual do dominio.

Este é só un exemplo dos comandos e opcións máis frecuentes. Podes familiarizarte coa lista completa das capacidades do programa na sección de axuda:

certbot –help
Sección de axuda da ferramenta Certbot

Agora procedemos a obter o certificado. Como exemplo, obteremos un certificado para un servidor virtual para un dominio gratuíto de terceiro nivel como o teunomedeusuario.pserver.space

Primeiro, cómpre introducir o comando:

certbot certonly

Como resposta, a utilidade pedirache que escolla un método para verificar a propiedade do dominio:

Como obter un certificado SSL de Certbot

A primeira opción é conveniente se non tes un servidor web configurado ou non queres facer cambios nun existente. Este método crea un servidor web temporal para confirmar o teu dereito ao dominio. É ideal para unha configuración sinxela e rápida. Ao escoller este método, é importante manter o porto 80 libre.

A segunda opción é preferible se xa tes un servidor web funcionando e queres usalo para verificar o dereito ao dominio. Certbot coloca ficheiros especiais nun cartafol do teu servidor, que logo son verificados polo centro certificador.

Escollemos a primeira opción e prememos en seguinte. Nesta fase, necesitarás:

  1. Introduza un enderezo de correo electrónico;
  2. Aceptar as condicións do servizo;
  3. Aceptar ou rexeitar recibir correos electrónicos en nome da empresa e dos seus socios;
  4. Especifique o nome de dominio para o que se emite o certificado.
Datos para a obtención dun certificado SSL

Despois de completar o proceso de emisión do certificado coa ferramenta Certbot, indicará a ruta ao directorio onde se almacenan o certificado emitido e os datos da súa conta:

Datos do certificado SSL obtido

Só queda vincular o certificado obtido ao servizo requirido.

Instalando o certificado para Nginx ou Apache

Esta sección asume que se cumpriron certas condicións fundamentais:

  1. Xa instalou e configuraches un servidor web, xa sexa Nginx ou Apache. Debe ser accesible desde internet a través do nome de dominio para o que se pretende obter o certificado;
  2. Durante a instalación da ferramenta, tamén instalou un complemento para Nginx ou Apache mediante o comando axeitado;
  3. O firewall permite conexións nos portos 80 e 443. Se estes portos están pechados para conexións, o servizo non estará dispoñible para as conexións entrantes. Para obter máis detalles sobre o funcionamento do firewall, comentamos isto no artigo sobre configurar un firewall en Linux.

Unha vez que se cumpran todas as condicións, pode proceder directamente á emisión do certificado. Consideraremos o proceso de obtención dun certificado SSL nun servidor usando Nginx como exemplo. Non obstante, se está a usar un servidor web Apache, o proceso é completamente idéntico.

Para obter o certificado, cómpre introducir o comando:

certbot --nginx # for Nginx
certbot --apache # for Apache

Como resposta, a ferramenta solicitará: un enderezo de correo electrónico, o consentimento das condicións de uso do servizo Let's Encrypt e o permiso para enviar correos electrónicos en nome do servizo e dos seus socios.

Obtención dun certificado SSL para Nginx e Apache

A continuación, terás que especificar o nome de dominio para o que se emite o certificado. Certbot pode determinar automaticamente o dominio se se especificou no campo server_name para a configuración de Nginx ou ServerName e ServerAlias ​​para Apache . Se non se especifica, o programa notificarache e pedirache que introduzas o nome de dominio manualmente. Despois, a utilidade preguntará se se activa o redireccionamento de solicitudes do protocolo HTTP ao protocolo HTTPS. Para configurar o redireccionamento automático, debes escoller a segunda opción:

Redirección de solicitudes de HTTP a HTTPS

Despois dun tempo, Certbot informarache da adquisición exitosa do certificado para o dominio especificado. A partir deste momento, todas as conexións entrantes serán redirixidas do porto 80 ao 443. A ferramenta mostrará os directorios nos que podes atopar todos os datos do certificado e os detalles da conta Let's Encrypt:

Emisión exitosa do certificado Certbot

A mensaxe tamén especificará o período de validez do certificado obtido e as opcións importantes para xestionar todos os certificados activos:

  1. certamente. Esta opción úsase para obter ou actualizar o certificado sen a configuración automática do servidor web. Certbot só solicitará ou actualizará o certificado, pero non fará ningún cambio automático na configuración do servidor. Anteriormente, utilizabamos esta opción para obter un certificado sen estar vinculados a un servidor web.
  2. renovar utilízase para a renovación automática de todos os certificados que se obtiveron a través de Certbot e estean dentro do seu período de validez. O programa comprobará todos os certificados e, se algún deles caduca nun prazo de 30 días ou menos, renovarase automaticamente.

A continuación, nas instrucións, comentaremos como configurar a renovación automática de certificados sen intervención do usuario cada tres meses.

Renovación automática do certificado en Certbot

Para Debian/Ubuntu

Ao usar estes sistemas operativos, Certbot engade automaticamente un script á lista de tarefas para a renovación automática dos certificados instalados. Podes comprobar a funcionalidade do script co seguinte comando:

systemctl status certbot.timer
Comprobando o estado do servizo certbot.timer

A resposta mostrará o estado do servizo, así como o directorio que contén o ficheiro de configuración. Podes abrilo usando calquera editor de texto. Se non tes experiencia con editores de texto en Linux, recomendámosche que te familiarices coa nosa descrición xeral das solucións máis populares. Neste caso, usaremos nano:

nano /lib/systemd/system/certbot.timer
Visualización da configuración de certbot.timer

Destacan todos os parámetros importantes:

  1. O horario indica que o servizo funcionará dúas veces ao día ás 00:00 e ás 12:00 horas;
  2. Un segundo valor indica un atraso aleatorio en segundos que se engadirá ao inicio do temporizador. Neste caso, son 43,200 segundos (12 horas), o que fai que o lanzamento sexa máis aleatorio e reparte a carga;
  3. Este parámetro garante que se o temporizador debía executarse durante un apagado do sistema, activarase inmediatamente despois do inicio.

Tamén pode executar unha comprobación forzada da renovación do certificado co comando:

certbot renew --dry-run

Usando este comando, os certificados non se actualizarán. Pola contra, a ferramenta realizará accións similares á obtención dun certificado cando caduque. Deste xeito, pode garantir a funcionalidade do servizo en canto á renovación automática.

Para CentOS, Fedora e outros

O proceso de activación das actualizacións automáticas nos sistemas da familia Red Hat difire lixeiramente. A diferenza de Debian/Ubuntu, para CentOS e outros sistemas, cómpre engadir manualmente unha tarefa ao planificador. Para iso, usaremos a ferramenta cron :

crontab -e

A continuación, no ficheiro que se abre, engade a seguinte liña:

0 12 * * * /usr/bin/certbot renew --quiet

Imos desglosar os principais argumentos do comando:

  1. O tempo de execución. Neste caso, o comando executarase automaticamente ás 12:00 todos os días;
  2. O comando para renovar certificados SSL/TLS usando Certbot;
  3. o --tranquilo a bandeira suprime a saída, o que fai que o proceso sexa máis oculto e menos intrusivo nos rexistros ou visualización do sistema.

Despois de engadir o comando, cómpre gardar os cambios no ficheiro.

Do mesmo xeito que con Debian/Ubuntu, tamén pode iniciar unha comprobación forzada das renovacións de certificados:

certbot renew --dry-run

O resultado dunha execución exitosa do comando é o seguinte:

Resultado dunha comprobación exitosa do comando de renovación

Conclusión

Exploramos o proceso completo de instalación e configuración de Certbot nun servidor Linux. Seguindo as instrucións proporcionadas, podes obter un certificado SSL/TLS de Let's Encrypt, instalalo no teu servidor web e configurar a renovación automática para garantir unha protección continua e unha maior confianza no teu recurso web. Con Certbot, pode crear facilmente un ambiente fiable e seguro para os usuarios.

❮ Artigo anterior Xestores de paquetes de Linux
Próximo artigo ❯ Redución da carga do servidor

Pregúntanos por VPS

Sempre estamos preparados para responder ás súas preguntas a calquera hora do día ou da noite.