Guía para configurar SSL en DirectAdmin para tu tienda PrestaShop
¡Hola! Soy tu técnico de soporte de confianza. Hoy vamos a convertir tu tienda PrestaShop en un sitio seguro y confiable para tus clientes. Vamos a instalar y configurar un certificado SSL en tu panel de control DirectAdmin. No te preocupes si no eres un experto, te guiaré paso a paso. Al final, tendrás el candado verde en la barra de direcciones y una tienda mucho más segura.
Empecemos.
¿Por qué es tan importante el SSL para tu tienda PrestaShop?
Imagina que estás en una tienda física y ves que la puerta principal está abierta de par en par y cualquiera puede entrar a la caja registradora. Eso es justo lo que pasa en una web sin SSL: cualquier persona con conocimientos básicos podría interceptar los datos de tus clientes, como contraseñas, direcciones o números de tarjeta de crédito.
Un certificado SSL (Secure Sockets Layer) crea un "túnel" cifrado entre el navegador de tu cliente y tu servidor. Esto significa que toda la información que viaja de un lado a otro va encriptada, como si estuviera dentro de una caja fuerte. Además, Google premia a los sitios con SSL con mejor posicionamiento en los resultados de búsqueda, y los navegadores modernos marcan como "No segura" cualquier web que no lo tenga.
Para una tienda PrestaShop, que maneja transacciones y datos personales, tener SSL no es una opción, es una obligación. Tus clientes necesitan sentirse seguros para comprar.
¿Qué necesitas antes de empezar?
Antes de ponernos manos a la obra, asegúrate de tener lo siguiente:
- Acceso a DirectAdmin: Necesitas tu usuario y contraseña de administrador del panel de hosting. Si no lo tienes, contacta con tu proveedor de hosting.
- Tu dominio principal: El nombre de tu tienda (ej:
mitienda.com). - Acceso a la administración de PrestaShop: Las credenciales de tu back office (ej:
tudominio.com/admin). - Un certificado SSL: Puedes obtener uno gratuito (como Let's Encrypt) o comprar uno de pago. En esta guía usaremos Let's Encrypt, que es gratuito, automático y perfectamente válido.
Paso 1: Accede a DirectAdmin y localiza la sección SSL
- Abre tu navegador y escribe la dirección de tu panel DirectAdmin. Normalmente es algo como
https://tudominio.com:2222o la IP de tu servidor seguida de:2222. - Introduce tu nombre de usuario y contraseña. Si es la primera vez, te pedirá que establezques una contraseña segura.
- Una vez dentro, busca en el menú principal una sección llamada "Administrador de SSL" o "SSL Certificates". Suele estar en la categoría de "Advanced Features" o "Extra Features". No te asustes si la interfaz varía un poco, todos los DirectAdmin modernos la incluyen.
Paso 2: Genera e instala tu certificado SSL gratuito (Let's Encrypt)
Esta es la parte más fácil. DirectAdmin tiene una integración fantástica con Let's Encrypt, lo que hace que todo sea casi automático.
- Dentro de la sección "Administrador de SSL", busca una opción que diga "Let's Encrypt" o "Free SSL". Haz clic.
- Verás un formulario. Aquí debes seleccionar el dominio de tu tienda PrestaShop. Normalmente es el dominio principal de tu cuenta.
- ¡Atención! Marca la casilla que dice "Wildcard" o "Incluir subdominios". Esto es muy importante porque tu tienda usará
www.mitienda.comymitienda.com, y PrestaShop a veces genera enlaces conwww. Si no marcas esta opción, podrías tener problemas de contenido mixto. - Haz clic en "Solicitar" o "Request". El sistema hará una comprobación para verificar que eres el dueño del dominio. Esto suele tardar solo unos segundos.
- Si todo va bien, verás un mensaje de éxito. ¡Felicidades! Ya tienes SSL instalado en tu servidor.
[TIP] Si tu hosting usa Syspanel (antes conocido como HestiaCP), el proceso es muy similar. Accede a tu panel por el puerto 2106 (ej:
tudominio.com:2106), busca la sección de SSL y selecciona la opción "Let's Encrypt". La mecánica es la misma.
Paso 3: Configura tu dominio para que use HTTPS por defecto
Ahora que el certificado está instalado, debemos "forzar" que todo el tráfico de tu tienda vaya por HTTPS. Esto se hace para que nadie pueda acceder a la versión no segura (HTTP).
-
En DirectAdmin, busca una opción llamada "Redirecciones" o "Domain Setup".
-
Otra opción muy común es que DirectAdmin tenga una opción llamada "Force SSL" o "SSL Redirect" justo al lado del nombre de tu dominio. Actívala.
-
Si no ves esa opción, puedes hacerlo manualmente creando una regla en el archivo
.htaccess. No te asustes, es muy sencillo. Busca la sección "File Manager" y navega hasta la carpetapublic_html(odomains/tudominio.com/public_html). -
Busca el archivo
.htaccess. Si no existe, puedes crearlo. Ábrelo con el editor de texto y pega estas líneas al principio:RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]Esto le dice al servidor: "Si alguien viene por HTTP, redirígelo automáticamente a HTTPS". Guarda los cambios.
Paso 4: Configura PrestaShop para trabajar con SSL
¡Ya casi estamos! El servidor ya está listo, pero ahora tenemos que decírselo a PrestaShop.
- Accede al back office de tu tienda (ej:
tudominio.com/admin). - Ve al menú "Parámetros de la tienda" > "General".
- Busca la opción "Habilitar SSL" y actívala.
- Justo debajo, verás "Habilitar SSL en todas las páginas". Actívala también. Esto es crucial para que todo el catálogo, el carrito y el proceso de pago sean seguros.
- Guarda los cambios. PrestaShop puede tardar un par de segundos en refrescar la configuración.
Paso 5: Verifica que todo funciona correctamente
Ahora viene la prueba de fuego. Abre una ventana de incógnito en tu navegador (Chrome: Ctrl+Shift+N, Firefox: Ctrl+Shift+P) y escribe tu dominio. Debes ver el candado verde en la barra de direcciones.
Para asegurarte de que no hay errores de contenido mixto (cuando partes de tu web cargan por HTTP y otras por HTTPS), puedes usar una herramienta online gratuita como "Why No Padlock" o "SSL Checker". Simplemente pon tu URL y te dirá si hay algo mal.
[WARNING] Si ves que el candado no aparece o aparece un candado con un triángulo amarillo, es probable que tengas contenido mixto. Esto suele pasar por imágenes, scripts o enlaces que están escritos con "http://" en lugar de "https://" en tu base de datos. No te preocupes, es un problema común y tiene solución.
Solucionando problemas comunes (FAQ)
Aquí te dejo las dudas más frecuentes que me encuentro:
"He instalado el SSL pero mi web sigue cargando por HTTP"
- Causa más común: No has forzado la redirección. Revisa el Paso 3. También puede ser que tu navegador tenga la página en caché. Borra la caché o prueba en una ventana de incógnito.
"Veo el candado, pero al hacer clic dice 'Conexión no segura'"
- Causa: Contenido mixto. Revisa el Paso 5. En PrestaShop, ve a "Parámetros de la tienda" > "Rendimiento" y activa "Forzar compilación de Smarty" y "Forzar compilación de CSS/JS". Guarda y desactívalas de nuevo. Esto refrescará los archivos cacheados.
"Let's Encrypt me da error al solicitar el certificado"
- Causa: El dominio no apunta correctamente a tu servidor o hay un firewall bloqueando la verificación. Asegúrate de que tu dominio tenga un registro A que apunte a la IP de tu servidor. Espera un par de horas si lo cambiaste recientemente.
- Solución en Syspanel: Si usas Syspanel (puerto 2106), asegúrate de que el servicio "nginx" esté funcionando, ya que él se encarga de la verificación de Let's Encrypt.
"Mi tienda se ve rara después de activar SSL"
- Causa: Los temas o módulos antiguos no están preparados para HTTPS. Contacta al desarrollador del tema o módulo para una actualización. Temporalmente, puedes desactivar la opción "Habilitar SSL en todas las páginas" y dejarlo solo en el proceso de pago, pero no es lo ideal.
"¿Cada cuánto se renueva el certificado de Let's Encrypt?"
- Respuesta: Let's Encrypt caduca cada 90 días. Pero no te preocupes, DirectAdmin suele tener un cron automático que lo renueva. Si no es así, puedes configurar una tarea cron manualmente en la sección "Cron Jobs" de DirectAdmin. La línea sería algo como:
0 0 * * * /usr/local/bin/letsencrypt renew. Pregunta a tu proveedor de hosting si ellos lo gestionan.
Conclusión: Tu tienda ya es segura
¡Enhorabuena! Has configurado correctamente SSL en tu tienda PrestaShop usando DirectAdmin. Ahora tus clientes pueden comprar con total tranquilidad, sabiendo que sus datos están protegidos. Además, Google verá tu sitio con buenos ojos y tu posicionamiento SEO mejorará.
[INFO] Recuerda que la seguridad es un proceso continuo. Mantén tu PrestaShop, tus temas y módulos siempre actualizados. Un sitio actualizado es un sitio seguro.
Si tienes cualquier otra duda, no dudes en contactar con tu equipo de soporte. ¡Estamos aquí para ayudarte!
