GNU/Linux >> Tutoriales Linux >  >> Debian

Asegure Apache2 con Let's Encrypt SSL en Debian 10/11

Resumen

En la siguiente publicación, mostraremos el procedimiento para proteger Apache2 con Let's Encrypt SSL en Debian 10 (este procedimiento también funciona en Debian 11). La publicación mostrará el escenario, donde necesitamos instalar certbot en nuestra máquina Debian y obtener el certificado SSL de Let's Encrypt, configurar la redirección automática de HTTPS y probar también la renovación del certificado. Aquí ya tenemos una máquina Debian con Apache preinstalado en la que seguiremos los pasos sobre cómo asegurar Apache2 con let's encrypt ssl.

Requisitos

1. Registrado y válido un nombre de dominio apuntando a su servidor Debian.

2. Servidor Debian 10 (o Debian 11)

3. Servidor web Apache instalado y funcionando

4. Configuración del cortafuegos (abrir puertos HTTP y HTTPS)

Si tiene un firewall UFW o IPTABLES, debe configurarlos para que abran los puertos 80 y 443 para HTTP y HTTPS para no solo alojar su sitio web

UFW

sudo ufw allow http
sudo ufw allow https

IPTABLES

sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT

sudo iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT

or

sudo iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

sudo iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT

Proteja Apache2 con Let's Encrypt SSL en Debian

Instalación de bots certificados

Usaremos la herramienta Cerbot de Let's Encrypt para obtener el certificado SSL y el complemento Apache2 para certbot también. Ambas herramientas nos ayudarán a obtener el certificado de forma muy sencilla, rápida y además realizar los cambios de configuración necesarios en Apache2. Además de eso, las herramientas tienen funciones de automatización, por lo que al vencimiento de SSL, pueden renovar e instalar el certificado nuevamente.

sudo apt install certbot python3-certbot-nginx

Una nota:antes de ejecutar el comando, primero es necesario en su archivo de configuración nginx, escriba en el parámetro ServerName el nombre de dominio real que apuntó a su servidor. Certbot buscará en la configuración de bloqueo de su servidor ese parámetro y creará los archivos de configuración de cifrado de acuerdo con ese parámetro. Ejemplo en una imagen a continuación:

sudo nano /etc/apache2/sites-available/000-default.conf

Adquirir el certificado SSL de Let's Encrypt

Una vez que haya confirmado que los puertos en el firewall están abiertos y haya terminado con la instalación de certbot. Para adquirir el certificado SSL de Let's encrypt solo necesitamos ejecutar el comando:

sudo certbot --apache -d yourdomain.com

Cuando ejecute este comando, se iniciará el asistente de certbot. Si está ejecutando el cerbot por primera vez, primero le pedirá que proporcione una dirección de correo electrónico para usar como contacto y que acepte los términos de la licencia de Let's encrypt.

Después de eso, ejecutará el desafío http, obtendrá el certificado y al final le preguntará si desea que configure de inmediato la redirección https, que también es una buena opción.

Tan pronto como se complete la configuración de redirección, el nuevo dominio con certificado SSL debería funcionar de inmediato.

Configurar y probar la renovación automática

Los certificados de Let's Encrypt tienen una validez predeterminada de tres meses y la renovación automática de cerbot está configurada para renovar el certificado al menos una vez, cuando el certificado tiene menos de 30 días de validez. Una vez que se adquiere el certificado SSL, válido y activo, duplica si el servicio de temporizador del certbot está activo y en ejecución y prueba el proceso de renovación con la opción de ejecución en seco:

sudo systemctl status certbot.timer

sudo certbot renew --dry-run

Compruebe la configuración de Apache

Puede volver a verificar la configuración de Apache si el cerbot ha escrito con éxito la configuración para los certificados SSL y para la redirección de HTTPS. Cerbot reiniciará Apache una vez que haya terminado con la configuración, debe tener su dominio/sitio web protegido y funcionando con el SSL activo.

Resumen

Para resumir, repasamos los pasos para asegurar Apache2 con Let's Encrypt SSL en una máquina Debian 10 y en una máquina Debian 11. Utilizamos la herramienta certbot de let's encrypt para las solicitudes de certificados SSL y su renovación automática. Afortunadamente para certbot y su complemento de Apache, el proceso es realmente simple, directo y rápido de completar. Una sugerencia sobre esto es:sería una buena opción tener una copia de seguridad de la carpeta let's encrypt y tener una copia de seguridad frecuente (como ha sugerido el propio certbot). Por supuesto, esto es opcional y depende de cómo haya establecido la frecuencia de renovación de certificados.

El servicio Ciframos, aunque es gratuito y muy popular entre el mundo tecnológico, es una buena opción para proteger algunos tipos de sitios web. Sin embargo, no se recomienda el uso de sus certificados gratuitos en sitios web de comercio electrónico para un ejemplo o cualquier tipo de sitio que necesite pasar y almacenar datos muy confidenciales (tarjetas de crédito y similares). Es por eso que, de manera predeterminada, se recomienda tener un tiempo de renovación breve para los certificados SSL.


Debian
  1. Asegure Nginx con Lets Encrypt en CentOS 7

  2. Asegure Apache con Lets Encrypt en Debian 9

  3. Asegure Nginx con Let's Encrypt SSL en Debian 10/11

  4. Instalar WordPress con Nginx en Debian 10/11

  5. Cómo proteger Nginx con SSL y Let's Encrypt en FreeBSD

Cómo instalar Drupal con Nginx y Let's Encrypt SSL en Debian 11

Cómo instalar Joomla con Nginx y Let's Encrypt SSL en Debian 11

Cómo instalar Let's Encrypt SSL en Nginx en Debian 11

Cómo instalar WordPress con Nginx y Let's Encrypt SSL en Debian 11

Instale y configure Webmin con el certificado Let's Encrypt SSL gratuito en Debian 10

Cómo instalar y configurar Apache con Let's Encrypt TLS/SSL en Debian 11 Bullseye