Ir al contenido principal
Todas las coleccionesVPSComenzando
Cómo instalar SSL en VPS usando Certbot
Cómo instalar SSL en VPS usando Certbot

Instalar un certificado SSL en tu VPS con Certbot usando Python

Actualizado hace más de un año

Si el sistema operativo de tu VPS no tiene un panel de control o no integra una opción de SSL gratuito, puedes generar e instalar un Let's Encrypt SSL gratuito con Certbot. Solo debes seguir estos pasos:

Paso 1: preparar el VPS

Antes de instalar el SSL, asegúrate de que tu VPS:

  • Tiene un servidor web en ejecución (por ejemplo, Apache, NGINX, etc.)

  • El sitio web alojado en tu VPS está configurado para abrirse ingresando el nombre de dominio en la barra de direcciones, no la IP

  • El dominio está propagado por completo y apunta a los servidores de nombres secundarios de tu VPS. Instalar un SSL con Certbot mientras el dominio aún se está propagando, creará un certificado autofirmado, lo que puede causar errores al acceder a tu sitio web.

Paso 2 - Instalar dependencias

Certbot recomienda usar snapd para la instalación. Dado que snapd no es compatible con el VPS basado en Linux de Hostinger, puedes usar Python instalándolo primero en tu servidor.

Para iniciar el proceso, conéctate a tu VPS usando SSH. A continuación, instala las dependencias requeridas (Python 3.6+, venv y Augeas) según tu sistema operativo:

Para distribuciones basadas en APT (como Debian o Ubuntu), ejecuta el siguiente comando:

sudo apt update
sudo apt install python3 python3-venv libaugeas0

Para distribuciones basadas en RPM (Fedora, CentOS), usa este comando:

sudo dnf install python3 augeas-libs

NOTAS:

  • Para distribuciones más antiguas que no admiten dnf, usa yum en su lugar

  • Algunas distribuciones basadas en RHEL usan python3x en lugar de python3 (por ejemplo, python38). Consulta la documentación de tu distribución de Linux 🙂

  • Si tienes problemas para instalar la criptografía, es posible que debas instalar dependencias adicionales. Consulta este artículo para obtener más información: Creación de criptografía en Linux

Paso 3 - Instalar Certbot

Para evitar conflictos con versiones anteriores, elimina los paquetes de Certbot que ya estén instalados antes de instalar la versión más reciente. Puedes usar tu administrador de paquetes (apt, dnf, yum, etc.) para esto.

Una vez que esté listo, ejecuta lo siguiente para configurar un entorno virtual de Python:

sudo python3 -m venv /opt/certbot/
sudo /opt/certbot/bin/pip install --upgrade pip

Para instalar certbot, ejecute esto en Apache:

sudo /opt/certbot/bin/pip install certbot certbot-apache

O esto para NGINX:

sudo /opt/certbot/bin/pip install certbot certbot-nginx

A continuación, crea un enlace simbólico para que certbot se pueda ejecutar desde cualquier ruta:

sudo ln -s /opt/certbot/bin/certbot /usr/bin/certbot

Instala y activa el SSL en tus sitios web y haz que certbot realice todas las configuraciones, ejecutando el siguiente comando para Apache:

sudo certbot --apache

Para NGINX:

sudo certbot --nginx

NOTA:

  • Para obtener solo los certificados y configurar el SSL manualmente, agrega certonly después de certbot y antes de --apache o --nginx.

Dado que el SSL solo estará activo durante 90 días, se recomienda configurar la renovación automática. Puedes hacerlo ejecutando lo siguiente:

echo "0 0,12 * * * root /opt/certbot/bin/python -c 'import random; import time; time.sleep(random.random() * 3600)' && sudo certbot renew -q" | sudo tee -a /etc/crontab > /dev/null


¡Eso es todo! Ahora puedes visitar su sitio web en una ventana de incógnito para verificar que SSL esté correctamente instalado y funcionando 😊

Recursos adicionales:

¿Ha quedado contestada tu pregunta?