bg-tutorials

Cómo instalar un certificado SSL en XAMPP

En este tutorial, aprenderás cómo instalar un certificado SSL en XAMPP, el popular stack de desarrollo local Apache, MariaDB y PHP.

También grabamos un video que te guía a través de todo el proceso de instalación de un certificado SSL en XAMPP. Si prefieres la versión escrita, sigue leyendo a continuación.

Generar un código CSR para XAMPP

Si ya generaste el código CSR y recibiste tu certificado SSL en una carpeta ZIP, pasa directamente a los pasos de instalación.

La Solicitud de Firma de Certificado (CSR) es un pequeño archivo de texto codificado que contiene información sobre tu dominio y organización. Todas las Autoridades de Certificación comerciales exigen que los solicitantes de SSL envíen un código CSR como parte del proceso de validación.

Como XAMPP se ejecuta localmente en tu dispositivo, tienes un par de opciones para crear tu CSR. Elige un método y sigue las instrucciones del enlace:

Después de generar el código CSR y el archivo de clave privada, continúa con las instrucciones de instalación.

Instalar un certificado SSL en XAMPP

Una vez que la CA valide tu pedido y entregue los archivos a tu bandeja de entrada, descarga el archivo ZIP y extrae su contenido en tu dispositivo. Necesitarás:

  • Tu archivo principal de certificado SSL (por ejemplo, yourdomain_com.crt).
  • El archivo del paquete CA (cadena SSL) que contiene los certificados raíz e intermedios.
  • El archivo de clave privada que generaste junto con el CSR (por ejemplo, yourdomain_com.key).

Nota: Si tu paquete llega como varios archivos separados, combínalos en un solo archivo de texto simple con extensión .crt (o .ca-bundle). Agrega primero tu(s) certificado(s) intermedio(s), seguido del certificado raíz.

Paso 1: Crear la carpeta de archivos SSL

Guarda tus archivos de certificado en un directorio dedicado:
– Linux/macOS: /opt/lampp/etc/ssl
– Windows: C:xamppapachessl

Copia tu certificado, el paquete CA y la clave privada en esta carpeta.

Luego combina tu certificado y el paquete CA en un solo archivo de cadena completa:

Get-Content yourdomain_com.crt, yourdomain_com.ca-bundle | Set-Content yourdomain_com_fullchain.crt -Encoding ascii
cat yourdomain_com.crt yourdomain_com.ca-bundle > yourdomain_com_fullchain.crt

Paso 2: Localizar el archivo de configuración SSL de Apache

XAMPP guarda la configuración de HTTPS en un archivo dedicado llamado httpd-ssl.conf. Ábrelo de una de estas dos formas:

  • En el Panel de Control de XAMPP, haz clic en Config en la fila de Apache y selecciona Apache (httpd-ssl.conf).
  • O ábrelo directamente con un editor de texto. Se encuentra en tu carpeta de instalación de XAMPP en C:xamppapacheconfextrahttpd-ssl.conf (Windows) o /opt/lampp/etc/extra/httpd-ssl.conf (Linux). Si instalaste XAMPP en una unidad diferente, ajusta la letra de la unidad en consecuencia, por ejemplo, D:xamppapacheconfextrahttpd-ssl.conf.

Consejo: Asegúrate de que SSL esté realmente habilitado. En el archivo principal httpd.conf (C:xamppapacheconfhttpd.conf en Windows, /opt/lampp/etc/httpd.conf en Linux) confirma que estas dos líneas estén presentes y no comentadas (elimina cualquier # inicial):

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf

La directiva Listen 443, que le indica a Apache que acepte conexiones HTTPS, ya se encuentra dentro de httpd-ssl.conf, por lo que no necesitas agregarla en ningún otro lugar. En las versiones recientes de XAMPP, estas están habilitadas de forma predeterminada.

Paso 3: Editar el VirtualHost para el puerto 443

Dentro de httpd-ssl.conf, busca el bloque existente <VirtualHost _default_:443> y edítalo (en lugar de agregar un segundo bloque para el puerto 443, lo que dejaría dos hosts en conflicto). Cambia _default_:443 a *:443 y dirige las directivas SSL a tus archivos. Un bloque completo y moderno se ve así; reemplaza el nombre del servidor, el alias y las rutas con los tuyos, y usa siempre barras diagonales hacia adelante:

<VirtualHost *:443>
    DocumentRoot "C:/xampp/htdocs"
    ServerName yourdomain.com
    ServerAlias www.yourdomain.com

    SSLEngine on

    # Apache 2.4.8+ (XAMPP): certificate + CA bundle in one full-chain file
    SSLCertificateFile    "C:/xampp/apache/ssl/yourdomain_com_fullchain.crt"
    SSLCertificateKeyFile "C:/xampp/apache/ssl/yourdomain_com.key"

    # Recommended TLS hardening (2026)
    SSLProtocol         -all +TLSv1.2 +TLSv1.3
    SSLHonorCipherOrder off

    <Directory "C:/xampp/htdocs">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>
  • SSLCertificateFile: tu archivo de cadena completa (certificado del servidor seguido de los intermedios). En Apache 2.4.8+ esta única directiva entrega toda la cadena, por lo que no necesitas la antigua directiva SSLCertificateChainFile.
  • SSLCertificateKeyFile: la clave privada que creaste junto con el CSR.

Importante: No uses SSLCACertificateFile para enviar tu cadena. Esa directiva le indica a Apache en qué CAs confiar al verificar certificados de cliente, no cuáles intermedios presentar a los navegadores. Para entregar la cadena, usa un SSLCertificateFile combinado como se muestra arriba. (En versiones antiguas de Apache anteriores a 2.4.8, en cambio, mantendrías los archivos separados y agregarías SSLCertificateChainFile apuntando al paquete CA, pero XAMPP no distribuye versiones tan antiguas.)

Guarda el archivo cuando hayas terminado.

Paso 4: Probar la configuración (recomendado)

Antes de reiniciar, verifica que la configuración no tenga errores de sintaxis para que un error tipográfico no impida que Apache se inicie. Abre una terminal en C:xamppapachebin y ejecuta:

httpd -t

Deberías ver Syntax OK. Si obtienes un error, revisa el Paso 3 antes de continuar.

Paso 5: Reiniciar Apache

En el Panel de Control de XAMPP, en la fila de Apache, haz clic en Stop, espera a que se detenga y luego haz clic en Start. Apache se recargará con tu nueva configuración SSL.

Felicidades, has instalado con éxito un certificado SSL en XAMPP. Visita tu sitio a través de https:// para confirmar que aparece el candado.

Prueba tu instalación SSL

Después de instalar el certificado, vale la pena probar la instalación para detectar posibles errores. Si tu sitio XAMPP es accesible en un dominio público, nuestro SSL Checker te ofrece escaneos e informes instantáneos sobre tu certificado, cadena y configuración.

Para una configuración puramente local (como localhost o un nombre de host privado que los escáneres públicos no pueden alcanzar), abre el sitio en tu navegador, haz clic en el candado en la barra de direcciones e inspecciona los detalles del certificado para confirmar que se está entregando el certificado correcto y la cadena completa.


¿Dónde comprar el mejor certificado SSL para XAMPP?

No necesitas salir de este sitio web. Aquí en SSL Dragon, ofrecemos una de las gamas más amplias de productos SSL a algunos de los precios más bajos del mercado. Todos nuestros certificados son compatibles con XAMPP y adecuados para proyectos de cualquier tamaño y presupuesto. Si estás desarrollando localmente ahora pero planeas lanzar en un dominio público, un certificado de confianza pública de una CA comercial es el camino a seguir.


Preguntas frecuentes

¿Puedo instalar un certificado SSL en XAMPP?

Sí. XAMPP ejecuta Apache con mod_ssl, por lo que puedes generar un certificado autofirmado para pruebas locales o instalar un certificado SSL de terceros (de confianza pública), exactamente como lo harías en cualquier servidor Apache. Edita httpd-ssl.conf, dirige las directivas SSL a tus archivos y reinicia Apache.

¿Cómo obtengo un certificado SSL para localhost?

Para el desarrollo local, puedes generar un certificado autofirmado con el binario OpenSSL incluido en XAMPP (en C:xamppapachebin) y confiar en él en tu navegador. Si necesitas un certificado de confianza pública para un dominio real, genera un CSR, envíalo a una Autoridad de Certificación e instala el certificado emitido siguiendo los pasos anteriores. SSL Dragon ofrece certificados compatibles con este flujo de trabajo.

¿Cómo sé si un certificado SSL está instalado en XAMPP?

Si el certificado está instalado correctamente, tu sitio se carga mediante https:// (la «S» significa seguro) y el navegador muestra un candado. Haz clic en el candado e inspecciona los detalles del certificado para confirmar el emisor, las fechas de validez y que la cadena completa esté presente. También puedes ejecutar httpd -t desde C:xamppapachebin para confirmar que Apache aceptó tu configuración SSL.

¿Dónde se almacenan los certificados SSL en XAMPP?

No hay una única ubicación obligatoria; tú eliges dónde guardarlos y diriges httpd-ssl.conf a esa ruta. Una convención común es una carpeta dedicada como C:xamppapachessl. El certificado de muestra predeterminado propio de XAMPP se encuentra en C:xamppapacheconfssl.crt con la clave en C:xamppapacheconfssl.key.

¿Por qué usar SSLCertificateFile en lugar de SSLCertificateChainFile en XAMPP?

XAMPP incluye Apache 2.4.8 o más reciente, donde SSLCertificateFile puede cargar tu certificado y su cadena intermedia desde un solo archivo combinado. Eso hace obsoleta la antigua directiva SSLCertificateChainFile. No confundas ninguna de las dos con SSLCACertificateFile, que sirve únicamente para verificar certificados de cliente, no para enviar la cadena de tu servidor a los navegadores.

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

Una imagen detallada de un dragón en vuelo
Escrito por

Redactor de contenidos experimentado especializado en Certificados SSL. Transformar temas complejos de ciberseguridad en contenido claro y atractivo. Contribuir a mejorar la seguridad digital a través de narrativas impactantes.