Esta guía te muestra cómo instalar un certificado SSL en VestaCP, el panel de control Linux. Cubre dos instalaciones: proteger un sitio web alojado a través de la pestaña WEB, y reemplazar el certificado que protege el propio panel de administración de VestaCP en el puerto 8083.
Una nota sobre el mantenimiento de VestaCP
Antes de empezar: el proyecto original de VestaCP ha estado mayormente inactivo durante varios años y no ha recibido una actualización significativa desde hace mucho tiempo. Si estás configurando un servidor nuevo, considera HestiaCP, el fork de la comunidad mantenido activamente que conserva la misma interfaz pero añade TLS moderno, soporte multi-PHP y correcciones de seguridad actuales. Los pasos a continuación siguen aplicándose a una instalación heredada de VestaCP, y el mismo flujo de trabajo de la pestaña WEB funciona en HestiaCP porque el panel SSL es esencialmente el mismo.
Generar un código CSR en VestaCP
Si ya generaste tu CSR y recibiste el certificado emitido por tu CA, avanza directamente a la sección de instalación.
Todo certificado SSL/TLS comercial comienza con un CSR (Certificate Signing Request), un bloque de texto codificado que contiene tu dominio y datos de contacto y que va emparejado con una clave privada. Tienes dos opciones:
- Genera el CSR automáticamente con nuestro Generador de CSR. El CSR y su clave privada se crean en tu navegador, así que guarda la clave en un lugar seguro: la necesitarás para el campo SSL Key durante la instalación.
- Genera el CSR directamente en el servidor siguiendo nuestro tutorial sobre cómo generar un CSR en VestaCP.
Abre el CSR con cualquier editor de texto (por ejemplo Notepad), copia todo el bloque (incluidas las líneas BEGIN CERTIFICATE REQUEST y END CERTIFICATE REQUEST) y pégalo en el formulario de pedido. Si quieres confirmar el CSR antes de enviarlo, pásalo por nuestro Decodificador de CSR.
Instalar un certificado SSL en VestaCP (pestaña WEB)
Después de que la Autoridad de Certificación emita tu certificado, recibirás un archivo ZIP por correo electrónico. Descárgalo y extráelo en tu ordenador. Necesitarás tres fragmentos de texto para pegar en VestaCP:
- El certificado principal del servidor emitido para tu dominio (el archivo .crt).
- La clave privada que se generó junto con el CSR (el archivo .key).
- El paquete CA que contiene los certificados intermedios (y raíz) (el archivo .ca-bundle). Esto es necesario para que la cadena se valide en todos los navegadores y en dispositivos móviles.
Abre cada archivo en un editor de texto sencillo para poder copiar su contenido en los siguientes pasos. Asegúrate de incluir los marcadores BEGIN CERTIFICATE y END CERTIFICATE; su ausencia es una razón habitual por la que VestaCP rechaza la entrada.
Paso 1: Inicia sesión en VestaCP y abre la pestaña WEB
Inicia sesión en el panel de VestaCP en https://tu-ip-de-servidor:8083 con tu cuenta de administrador, y luego haz clic en la pestaña WEB en la barra de navegación superior.
Paso 2: Edita el dominio que quieres proteger
Busca el dominio en la lista, pasa el cursor por encima y haz clic en Edit. Esto abre la página Editing Domain con toda la configuración de ese sitio.
Paso 3: Activa SSL Support y deja Let’s Encrypt desactivado
Marca la casilla SSL Support. Los campos SSL aparecen debajo. Deja la opción Lets Encrypt Support sin marcar: si la activas, VestaCP sobrescribirá tus campos con un certificado Let’s Encrypt que emite él mismo e ignorará lo que hayas pegado.
Paso 4: Pega el certificado, la clave y el paquete CA
Completa los tres campos con el contenido de los archivos correspondientes:
- SSL Certificate: pega el contenido de tu archivo .crt (el certificado emitido para tu dominio).
- SSL Key: pega el contenido del archivo privado .key que guardaste al generar el CSR.
- SSL Certificate Authority / Intermediate: pega el contenido del archivo .ca-bundle. Este campo es opcional en el formulario, pero siempre deberías completarlo: sin él, los navegadores móviles y muchos clientes API informarán de una cadena incompleta.
Paso 5: Guarda
Desplázate hasta el final de la página y haz clic en Save. VestaCP escribe el certificado, la clave y la cadena en la configuración web del dominio y recarga el servidor web. Tu sitio ya es accesible mediante HTTPS.
Opcional: usar Let’s Encrypt en su lugar
Si no necesitas un certificado de pago, VestaCP puede emitir y renovar automáticamente un certificado gratuito de Let’s Encrypt para el mismo dominio. En la página Editing Domain, marca SSL Support, luego marca Lets Encrypt Support, y guarda. El panel ejecuta una validación HTTP-01 contra el dominio y, si tiene éxito, coloca el certificado emitido, la clave y la cadena en los campos SSL por ti. Las renovaciones se ejecutan automáticamente mediante cron. El dominio debe resolver ya hacia este servidor en el DNS y responder en el puerto 80 para que la validación se apruebe.
Reemplazar el certificado SSL del panel de administración de VestaCP (puerto 8083)
El panel de administración en el puerto 8083 utiliza su propio certificado, independiente del de cualquier sitio web alojado. Por defecto es un certificado autofirmado almacenado en /usr/local/vesta/ssl/certificate.crt y /usr/local/vesta/ssl/certificate.key, razón por la cual los navegadores muestran una advertencia al visitarlo. Para reemplazarlo con un certificado de confianza (por ejemplo el que VestaCP ya emitió para el nombre de host de tu panel mediante Let’s Encrypt), abre una sesión SSH en el servidor como root y ejecuta:
cd /usr/local/vesta/ssl
mv certificate.crt certificate.crt.bak
mv certificate.key certificate.key.bak
ln -s /home/admin/conf/web/ssl.your-panel-hostname.crt /usr/local/vesta/ssl/certificate.crt
ln -s /home/admin/conf/web/ssl.your-panel-hostname.key /usr/local/vesta/ssl/certificate.key
service vesta restart
Sustituye your-panel-hostname por el nombre de host al que realmente accedes en el puerto 8083 (por ejemplo panel.example.com). Usar enlaces simbólicos en lugar de copiar los archivos significa que, cuando VestaCP renueve automáticamente el certificado Let’s Encrypt de ese nombre de host, el panel tomará los archivos nuevos en el siguiente reinicio sin que tengas que copiarlos de nuevo. Si prefieres copias, sustituye las dos líneas ln -s por comandos cp; recuerda que entonces tendrás que copiar los archivos de nuevo en cada renovación.
Si estás pegando un certificado de una CA diferente, coloca el cuerpo del certificado en certificate.crt, la clave privada correspondiente en certificate.key, y añade la cadena intermedia al final de certificate.crt para que el navegador reciba la cadena completa. Luego ejecuta service vesta restart. Después del reinicio, recarga el panel en tu navegador y confirma el candado.
Probar la instalación del SSL
Después de guardar, abre tu sitio mediante https:// y comprueba el candado. Para una verificación más profunda que también confirme la cadena intermedia y el soporte de protocolos, pasa el dominio por nuestro SSL Checker. Si el informe señala que falta un intermedio, vuelve a la pestaña WEB, pega el paquete CA en el campo SSL Certificate Authority / Intermediate, y guarda de nuevo.
Preguntas Frecuentes
El proyecto original de VestaCP ha estado mayormente inactivo durante varios años y no ha lanzado una actualización de seguridad regular desde hace mucho tiempo. Las instalaciones existentes siguen funcionando, y el flujo de trabajo SSL descrito arriba sigue instalando certificados válidos, pero para servidores nuevos recomendamos HestiaCP, el fork de la comunidad mantenido activamente. HestiaCP conserva la misma interfaz y el mismo flujo WEB / Edit / SSL Support, así que los pasos de esta guía se aplican casi sin cambios.
Para un sitio web alojado, VestaCP guarda el certificado, la clave privada y el paquete CA de cada dominio en /home/<user>/conf/web/ssl.<domain>.* (donde <user> es la cuenta Linux propietaria del dominio). Para el propio panel de administración, el certificado y la clave son /usr/local/vesta/ssl/certificate.crt y /usr/local/vesta/ssl/certificate.key.
Sí. En la página Editing Domain, marca SSL Support, luego marca Lets Encrypt Support, y guarda. VestaCP ejecuta un desafío HTTP-01 contra tu dominio, instala el certificado emitido en los campos SSL, y programa la renovación automática mediante cron. El dominio debe resolver hacia el servidor en el DNS y responder en el puerto 80 para que el desafío se apruebe.
No. Al hacer clic en Save en la página Editing Domain, VestaCP escribe el nuevo certificado en la configuración del dominio y recarga Nginx y Apache automáticamente. Solo debes reiniciar el servicio vesta cuando reemplazas el certificado del propio panel de administración en el puerto 8083.
La causa más común es dejar en blanco el campo SSL Certificate Authority / Intermediate, o pegar el paquete CA sin los marcadores BEGIN CERTIFICATE y END CERTIFICATE. Edita el dominio de nuevo, pega el contenido completo del .ca-bundle en ese campo, guarda, y luego vuelve a ejecutar nuestro SSL Checker.
Ahorre un 10% en certificados SSL al realizar su pedido hoy mismo.
Emisión rápida, cifrado potente, 99,99% de confianza del navegador, asistencia dedicada y garantía de devolución del dinero en 25 días. Código del cupón: SAVE10


