Blog

Tutoriales, guías y novedades del producto.

Seguridad y copias de seguridad

Certificados HTTPS gratuitos con Let's Encrypt

2 noviembre 2026 6 min de lectura
Compartir este artículo

Let's Encrypt es una autoridad de certificación que emite certificados HTTPS gratuitos para tu dominio. En tu VPS puedes conseguir un certificado con unos pocos comandos usando Certbot, o sin ningún comando usando Caddy, y ambos lo renuevan por su cuenta. Hay dos requisitos: el dominio debe apuntar a la dirección IP de tu servidor y los puertos 80 y 443 deben estar abiertos desde fuera.

¿Por qué necesitas HTTPS?

HTTPS cifra el tráfico entre el navegador y el servidor. Terceros en la red no pueden leer la contraseña de un formulario de inicio de sesión ni los datos de un pedido. Los navegadores pueden mostrar un aviso de "no seguro" en los sitios sin HTTPS. Un certificado de Let's Encrypt es gratuito, así que ya no hay ninguna buena razón para prescindir de HTTPS.

Antes de empezar

  • El registro A del dominio debe mostrar la dirección IP de tu servidor. Para comprobarlo, ejecuta dig +short example.com. La salida debe ser la dirección IP de tu servidor.
  • Los puertos 80 y 443 deben estar abiertos, porque la validación se hace en el puerto 80 (HTTP-01). Si usas ufw, ejecuta sudo ufw allow 80/tcp y sudo ufw allow 443/tcp. Si tu servidor tiene un cortafuegos aparte en su panel, revisa también allí las reglas.
  • Si el dominio tiene un registro AAAA (IPv6), debe apuntar también a este servidor. Si no, elimina el registro.
  • Tu servidor web debe estar en marcha y conocer este dominio.

Instalar y comprobar con Certbot en Nginx o Apache

Las instrucciones oficiales de Certbot recomiendan el paquete snap. Asegúrate de que snapd esté instalado en el servidor (en Ubuntu suele estarlo) y elimina cualquier Certbot más antiguo instalado con apt.

  1. Instala Certbot: sudo snap install --classic certbot
  2. Haz que el comando esté disponible en todas partes: sudo ln -s /snap/bin/certbot /usr/local/bin/certbot
  3. Consigue el certificado y haz que se instale en el servidor web. Ejecuta sudo certbot --nginx para Nginx o sudo certbot --apache para Apache.
  4. Responde a las preguntas: tu dirección de correo, para qué dominios quieres el certificado y si quieres redirigir HTTP a HTTPS.
  5. Prueba la renovación: sudo certbot renew --dry-run

Si solo quieres obtener el certificado y configurar el resto tú mismo, ejecuta sudo certbot certonly --nginx. El paquete de Certbot añade por su cuenta una tarea programada (cron o un temporizador de systemd), y la ves en la salida de systemctl list-timers. sudo certbot certificates lista tus certificados y sus fechas de caducidad. Certbot renueva un certificado cuando le queda poca vida, y tú no haces nada. Aun así, la renovación puede fallar algún día (por ejemplo por una regla del cortafuegos), así que ejecuta --dry-run de vez en cuando.

Para comprobar el certificado, mira primero el icono del candado en la barra de direcciones del navegador. Para ver la fecha de caducidad con un comando, ejecuta:

echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -dates

La línea notAfter de la salida es la fecha de caducidad del certificado. Si no usas la redirección que añade Certbot, redirige tú mismo HTTP a HTTPS. En Nginx, añade la línea return 301 https://$host$request_uri; al bloque server que escucha en el puerto 80.

Con Caddy y sin comandos

Si usas Caddy, no necesitas instalar nada más. Para un dominio de su configuración, Caddy obtiene el certificado de Let's Encrypt o ZeroSSL, lo renueva y redirige HTTP a HTTPS. Según su documentación oficial, los registros A y AAAA del dominio deben apuntar al servidor, los puertos 80 y 443 deben ser accesibles desde fuera y la carpeta de datos de Caddy debe ser persistente y escribible. Si ejecutas Caddy en Docker, monta esa carpeta en un volumen. De lo contrario, los certificados desaparecen cuando se borra el contenedor, y volver a pedirlos puede alcanzar un límite de frecuencia.

Certificados comodín

Un certificado comodín (*.example.com) cubre todos los subdominios con un solo certificado, y solo se puede obtener con validación DNS-01. Esta validación no usa el puerto 80. Te pide que pongas un registro TXT en el DNS de tu dominio. Para eso, tu proveedor de DNS necesita una API, y guardas la clave de la API en el servidor. La documentación de Let's Encrypt considera arriesgado guardar esas claves en un servidor web. Si no necesitas un comodín, obtener certificados para dominios concretos con HTTP-01 es más sencillo y no requiere guardar una clave de DNS.

Errores comunes

SíntomaCausa probableSolución
La validación falla, dominio no encontradoEl registro A apunta a una IP equivocada o aún no se ha propagadoComprueba la IP con dig +short example.com y espera
TimeoutEl puerto 80 está cerradoAbre el 80 en ufw y en el cortafuegos del panel, si lo tienes
La validación pasa unas veces y falla otrasEl registro AAAA apunta a otro servidorCorrige o elimina el registro AAAA
Error de límite de frecuenciaDemasiados intentosUsa --dry-run para las pruebas y consulta la página oficial para ver los límites
La renovación no se ejecutaNo hay tarea programada o el servidor web bloquea el puerto 80sudo certbot renew --dry-run muestra el error

El mensaje de error suele indicar qué validación falló y a qué dirección de tu servidor intentó llegar Let's Encrypt. Lee el mensaje tal cual. A menudo la respuesta está ahí mismo.

Según la página oficial de Let's Encrypt, hay un límite de 5 certificados por semana para el mismo conjunto de nombres de dominio y de 5 validaciones fallidas por hora para el mismo nombre de dominio. Por eso usa --dry-run mientras experimentas. Prueba la renovación en el entorno de pruebas y no gasta tu límite real.

En las aplicaciones listas para usar de Seturack

Las aplicaciones listas para usar (WordPress, Nextcloud y otras) se abren por HTTPS en una dirección sslip.io derivada de tu dirección IP, así que no hace falta un nombre de dominio. Cuando conectas tu propio dominio, Caddy obtiene el certificado de nuevo y no instalas nada más. Los pasos para informar a Caddy y a la aplicación del dominio están en este artículo de ayuda.

Comentarios0

Todavía no hay comentarios

Sea la primera persona en compartir su opinión.

Participe en la conversación

Inicie sesión o regístrese para dejar un comentario.

No se pierda ningún artículo

Reciba nuestros últimos tutoriales, guías y novedades de productos en su correo.

Se ha suscrito a nuestro boletín.