Hosting Equipo Avantys 9 min

Configurar SSL en HestiaCP con Let's Encrypt: Guía 2026

Tutorial completo para configurar SSL en HestiaCP. Activa Let's Encrypt gratis, fuerza HTTPS, configura HSTS y soluciona errores comunes.

// Compartir

Configurar SSL en HestiaCP con Let's Encrypt: Guía 2026

// Índice de contenidos

Configurar SSL en HestiaCP con Let's Encrypt certificados gratuitos

Configurar SSL en HestiaCP es tan simple como marcar una casilla. Let’s Encrypt te proporciona certificados gratuitos que se renuevan automáticamente, y HestiaCP gestiona todo el proceso por ti.

En 2026, HTTPS no es opcional. Google penaliza sitios sin SSL en los resultados de búsqueda, los navegadores muestran advertencias aterradoras a los visitantes, y muchas APIs modernas simplemente no funcionan sin conexión segura.

He configurado SSL en cientos de dominios con HestiaCP y el proceso es muy directo. En esta guía te explico cómo activar Let’s Encrypt para webs, email y el propio panel, además de cómo solucionar los errores más frecuentes.

Requisitos previos para SSL en HestiaCP

Antes de activar SSL, verifica estos puntos:

1. El dominio debe apuntar al servidor

Let’s Encrypt valida que controlas el dominio haciendo una petición HTTP. El dominio debe resolver a la IP de tu servidor:

dig tudominio.com +short

Debe mostrar la IP de tu servidor. Si no coincide, actualiza los registros DNS y espera la propagación (puede tardar hasta 48 horas, aunque normalmente son minutos).

2. Puertos 80 y 443 abiertos

Let’s Encrypt necesita acceso a estos puertos:

# Verificar puertos
ss -tlnp | grep -E ':80|:443'

Si usas firewall (UFW, iptables), asegúrate de que están permitidos:

# UFW
ufw allow 80/tcp
ufw allow 443/tcp

# iptables
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

3. Email válido configurado en HestiaCP

Let’s Encrypt envía notificaciones de renovación. Verifica que el usuario admin tiene un email real:

  1. Inicia sesión como admin
  2. Haz clic en tu nombre de usuario arriba
  3. Verifica/actualiza el campo Email
  4. Guarda

4. Sin proxy de Cloudflare (temporalmente)

Si usas Cloudflare, el proxy (nube naranja) debe estar desactivado mientras solicitas el certificado. Después puedes reactivarlo.

Activar SSL para un dominio web

Activar SSL Let's Encrypt para dominio web en HestiaCP

Método 1: Desde el panel (recomendado)

  1. Inicia sesión en HestiaCP con el usuario que tiene el dominio
  2. Ve a la sección Web
  3. Haz clic en el icono de editar (lápiz) del dominio
  4. En las opciones, marca:
    • Enable SSL for this domain
    • Use Let’s Encrypt to obtain SSL certificate
  5. Opcionalmente marca:
    • Enable automatic HTTPS redirection
    • Enable HTTP Strict Transport Security (HSTS)
  6. Haz clic en Save

El certificado se genera en segundos. Verás un mensaje de confirmación y los datos del certificado (fecha de emisión, expiración, etc.).

Método 2: Por línea de comandos (CLI)

Para automatizar o cuando prefieras SSH:

# Activar SSL para un dominio
v-add-letsencrypt-domain usuario tudominio.com

# Verificar el certificado
v-list-web-domain usuario tudominio.com

Incluir subdominios (www)

Por defecto, HestiaCP incluye el alias www en el certificado si está configurado. Verifica en la edición del dominio que Alias contiene www.tudominio.com.

Si necesitas más subdominios en el mismo certificado:

v-add-letsencrypt-domain usuario tudominio.com "www.tudominio.com,blog.tudominio.com,tienda.tudominio.com"

Verificar que funciona

Accede a https://tudominio.com y verifica:

  • El candado verde en el navegador
  • Sin advertencias de seguridad
  • Certificado emitido por “Let’s Encrypt”

También puedes usar herramientas online:

Activar SSL para email

El correo electrónico también necesita SSL para conexiones seguras IMAP/SMTP.

Desde el panel

  1. Ve a la sección Mail
  2. Haz clic en editar del dominio de correo
  3. Marca:
    • Enable SSL for this domain
    • Use Let’s Encrypt to obtain SSL certificate
  4. Guarda

Qué incluye el certificado de email

El certificado de email cubre:

  • mail.tudominio.com - Servidor IMAP/POP3/SMTP
  • webmail.tudominio.com - Acceso webmail (Roundcube)

Configurar clientes de correo con SSL

Después de activar SSL, actualiza la configuración de clientes:

ProtocoloServidorPuertoSeguridad
IMAPmail.tudominio.com993SSL/TLS
POP3mail.tudominio.com995SSL/TLS
SMTPmail.tudominio.com465SSL/TLS
SMTP (alternativo)mail.tudominio.com587STARTTLS

Activar SSL para el panel HestiaCP

El propio panel de administración también debería usar HTTPS.

Requisitos

Necesitas un dominio/subdominio apuntando al servidor, por ejemplo:

  • panel.tudominio.com
  • admin.tudominio.com
  • hestia.tudominio.com

Configurar por CLI

# Cambiar hostname y generar certificado
v-change-sys-hostname panel.tudominio.com
v-add-letsencrypt-host

Verificar

Accede a https://panel.tudominio.com:8083 (o el puerto que uses).

Si sigues accediendo por IP, verás advertencia de certificado porque el certificado es para el hostname, no para la IP.

Forzar redirección HTTPS

Forzar redirección de HTTP a HTTPS en HestiaCP

Una vez SSL activo, debes forzar que todo el tráfico use HTTPS.

Método 1: Desde HestiaCP (recomendado)

  1. Ve a Web → tu dominio → Editar
  2. Marca Enable automatic HTTPS redirection
  3. Guarda

HestiaCP configura automáticamente la redirección en Nginx/Apache.

Método 2: En WordPress

Si usas WordPress, además de la redirección del servidor:

  1. Ve a Ajustes → Generales
  2. Cambia ambas URLs a https://:
    • Dirección de WordPress (URL)
    • Dirección del sitio (URL)
  3. Guarda

En wp-config.php, añade:

define('FORCE_SSL_ADMIN', true);

// Si usas proxy o balanceador
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
    $_SERVER['HTTPS'] = 'on';
}

Método 3: Por .htaccess (Apache)

Si necesitas control manual:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Método 4: Por Nginx

En el template de Nginx, añadir en el bloque server del puerto 80:

return 301 https://$host$request_uri;

Configurar HSTS (HTTP Strict Transport Security)

HSTS indica a los navegadores que siempre usen HTTPS para tu dominio, incluso si el usuario escribe http://.

Activar HSTS en HestiaCP

  1. Ve a Web → tu dominio → Editar
  2. Marca Enable HTTP Strict Transport Security (HSTS)
  3. Guarda

Configuración HSTS recomendada

HestiaCP configura HSTS con valores sensatos por defecto. Si necesitas personalizar, el header típico es:

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

Parámetros:

ParámetroValorSignificado
max-age315360001 año en segundos
includeSubDomains-Aplica a todos los subdominios
preload-Permite inclusión en listas de preload

Precauciones con HSTS

  • No actives si no estás seguro de mantener SSL siempre
  • Una vez activado, los navegadores recordarán usar HTTPS durante max-age
  • Si desactivas SSL, los usuarios no podrán acceder (hasta que expire)
  • Empieza con max-age bajo (1 hora = 3600) para probar

Usar certificados SSL propios

Tipos de certificados SSL: Let's Encrypt, comerciales y wildcard

Si tienes certificados comerciales (Comodo, DigiCert, etc.) o wildcard:

Desde el panel

  1. Ve a Web → tu dominio → Editar
  2. Marca Enable SSL for this domain
  3. NO marques Let’s Encrypt
  4. Pega tu certificado en los campos:
    • SSL Certificate - El certificado (.crt)
    • SSL Key - La clave privada (.key)
    • SSL Certificate Authority - El certificado intermedio/CA bundle
  5. Guarda

Formato de los archivos

Certificado (.crt):

-----BEGIN CERTIFICATE-----
MIIFxTCCBK2gAwIBAgISA...
-----END CERTIFICATE-----

Clave privada (.key):

-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEA...
-----END RSA PRIVATE KEY-----

CA Bundle (intermedio):

-----BEGIN CERTIFICATE-----
(certificado intermedio 1)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(certificado intermedio 2)
-----END CERTIFICATE-----

Certificados Wildcard

Los wildcards (*.tudominio.com) cubren todos los subdominios. Son útiles si tienes muchos subdominios, pero Let’s Encrypt también los soporta (requiere validación DNS).

Para wildcard con Let’s Encrypt:

v-add-letsencrypt-domain usuario tudominio.com "" yes

Esto requiere que HestiaCP gestione el DNS del dominio.

SSL sin complicaciones

El VPS HestiaCP Administrado incluye SSL automático para todos tus dominios. Sin configurar nada, renovación automática incluida.

Ver VPS con SSL

Configurar SSL con Cloudflare

Cloudflare añade una capa extra de complejidad porque actúa como proxy.

Opción 1: SSL Flexible (no recomendado)

  • Cloudflare → HTTPS → Tu servidor → HTTP
  • No es realmente seguro (la conexión servidor-Cloudflare no está cifrada)

Opción 2: SSL Full (mínimo recomendado)

  • Cloudflare → HTTPS → Tu servidor → HTTPS (certificado cualquiera)
  • Acepta certificados autofirmados
  • Mejor que Flexible, pero no verifica el certificado

Opción 3: SSL Full (Strict) (recomendado)

  • Cloudflare → HTTPS → Tu servidor → HTTPS (certificado válido)
  • Requiere Let’s Encrypt u otro certificado válido en tu servidor
  • Máxima seguridad

Proceso para Let’s Encrypt + Cloudflare

  1. Desactiva temporalmente el proxy de Cloudflare (nube naranja → gris)
  2. Espera 5 minutos para propagación DNS
  3. Solicita el certificado en HestiaCP
  4. Reactiva el proxy de Cloudflare
  5. Configura SSL Full (Strict) en Cloudflare

Opción alternativa: Origin Certificate

Cloudflare ofrece certificados de origen gratuitos válidos por 15 años:

  1. En Cloudflare, ve a SSL/TLS → Origin Server
  2. Crea un Origin Certificate
  3. Copia el certificado y clave privada
  4. Pégalos en HestiaCP como certificado propio
  5. En el campo CA, usa este certificado de Cloudflare

Renovación automática de certificados

Let’s Encrypt emite certificados válidos por 90 días. HestiaCP los renueva automáticamente.

Cómo funciona la renovación

  • HestiaCP ejecuta un cron job diario
  • Renueva certificados que expiran en menos de 30 días
  • Si falla, reintenta automáticamente
  • Envía email de aviso si hay problemas

Verificar estado de renovación

# Ver todos los certificados y fechas
v-list-letsencrypt-users

# Ver certificado específico
openssl x509 -in /home/usuario/conf/web/tudominio.com/ssl/tudominio.com.crt -noout -dates

Forzar renovación manual

Si necesitas renovar antes de tiempo:

v-update-letsencrypt-ssl usuario tudominio.com

Logs de renovación

Si hay problemas, revisa los logs:

cat /var/log/hestia/LE-usuario-tudominio.com.log

Errores comunes y soluciones

Error: “Let’s Encrypt validation status 400”

Causa: Let’s Encrypt no puede verificar el dominio.

Soluciones:

  1. Verifica que el dominio apunta a la IP correcta:

    dig tudominio.com +short
  2. Si usas Cloudflare, desactiva el proxy temporalmente

  3. Verifica que puerto 80 está abierto:

    curl -I http://tudominio.com/.well-known/acme-challenge/test

Error: “Rate limit exceeded”

Causa: Demasiadas solicitudes a Let’s Encrypt.

Límites de Let’s Encrypt:

  • 50 certificados por dominio registrado por semana
  • 5 duplicados por semana
  • 300 nuevos pedidos por cuenta por 3 horas

Solución: Espera unas horas o usa el entorno staging para pruebas.

Error: “DNS problem: NXDOMAIN”

Causa: El dominio no existe o no está propagado.

Solución:

  1. Verifica que el dominio está registrado
  2. Verifica los nameservers
  3. Espera propagación DNS (hasta 48h)

Contenido mixto (Mixed Content)

Síntoma: Candado con advertencia, algunos recursos cargan por HTTP.

Causa: La página carga recursos (imágenes, scripts, CSS) por HTTP en lugar de HTTPS.

Solución para WordPress:

  1. Instala el plugin “Better Search Replace”
  2. Busca: http://tudominio.com
  3. Reemplaza por: https://tudominio.com
  4. Ejecuta en todas las tablas

Solución general:

  1. Usa Why No Padlock para identificar recursos
  2. Actualiza las URLs en tu código/base de datos

El certificado no cubre www

Causa: El alias www no estaba configurado al solicitar SSL.

Solución:

  1. Ve a Web → tu dominio → Editar
  2. Añade www.tudominio.com en Aliases
  3. Guarda
  4. Vuelve a solicitar el certificado Let’s Encrypt

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

Causa: Configuración SSL/TLS incompatible.

Solución: Actualiza la configuración de Nginx/Apache para soportar protocolos modernos:

# Verificar configuración SSL
ssl-config-generator.mozilla.org

¿Problemas con SSL?

El soporte técnico del VPS HestiaCP Administrado te ayuda con cualquier problema de certificados. Sin dolores de cabeza.

Ver VPS Administrado

Preguntas frecuentes

¿Let's Encrypt es seguro para ecommerce?

Sí. Let's Encrypt ofrece el mismo nivel de cifrado que los certificados de pago. La diferencia está en la validación (DV vs OV/EV) y la garantía, no en la seguridad del cifrado.

¿Cuántos dominios puedo proteger con Let's Encrypt?

Sin límite práctico. Cada dominio obtiene su propio certificado. Let's Encrypt tiene límites de rate, pero son muy altos para uso normal.

¿Qué pasa si el certificado expira?

Los visitantes verán una advertencia de seguridad y muchos navegadores bloquearán el acceso. HestiaCP renueva automáticamente, pero si falla, recibirás emails de aviso.

¿Puedo usar SSL sin dominio (solo IP)?

No con Let's Encrypt. Necesitas un dominio. Para desarrollo/pruebas con IP, puedes usar certificados autofirmados (mostrarán advertencia).

¿Let's Encrypt funciona con subdominios?

Sí. Puedes incluir múltiples subdominios en un certificado SAN, o usar wildcards (*.tudominio.com) si gestionas DNS en HestiaCP.

¿Cómo verifico que HSTS está activo?

Ejecutando `curl -I https://tudominio.com | grep -i strict`. Debe mostrar: `Strict-Transport-Security: max-age=...`

¿Qué diferencia hay entre SSL y TLS?

SSL está obsoleto. TLS es el sucesor. Cuando decimos 'SSL' hoy, realmente hablamos de TLS. HestiaCP usa TLS 1.2 y 1.3 (las versiones seguras actuales).

Conclusión

Configurar SSL en HestiaCP con Let’s Encrypt es un proceso sencillo que proporciona seguridad profesional sin coste. Los pasos clave son:

  1. Verificar que el dominio apunta al servidor
  2. Activar SSL desde el panel
  3. Forzar redirección HTTPS
  4. Opcionalmente, activar HSTS

La renovación automática garantiza que tus certificados nunca expiren si todo está correctamente configurado. Si usas Cloudflare, recuerda desactivar el proxy temporalmente durante la solicitud inicial.

Para evitar cualquier complicación, el VPS HestiaCP Administrado de Avantys incluye SSL automático para todos tus dominios, configurado y mantenido por nosotros.


Guías relacionadas


Parte de la guía principal
Volver a VPS HestiaCP Administrado

VPS HestiaCP Administrado

Tu servidor HestiaCP con soporte técnico profesional. Nos encargamos de la administración para que tú te dediques a tus clientes.

Ver Planes HestiaCP

VPS HestiaCP Administrado

La potencia de un VPS con el panel HestiaCP, montado y gestionado por nosotros.

Ver VPS gestionado
// Boletín

Suscríbete al boletín

Guías nuevas, sin spam. Cancela cuando quieras.