Cómo activar y configurar SSL gratuito en PrestaShop (Let's Encrypt)
¿Por qué necesitas SSL en tu PrestaShop?
Si tienes una tienda online, el certificado SSL no es un lujo, es una necesidad absoluta. Sin él, los datos de tus clientes (tarjetas de crédito, direcciones, contraseñas) viajan por internet en texto plano, lo que los hace vulnerables a ataques de intermediarios. Además, los navegadores modernos como Chrome o Firefox marcan los sitios sin SSL como "No seguros", lo que provoca una pérdida inmediata de confianza y, por tanto, de ventas.
A nivel de SEO, Google confirma que el SSL es un factor de ranking. Esto significa que un sitio con SSL tiene más posibilidades de posicionarse por encima de uno que no lo tiene. Para un ecommerce, esto es crucial, ya que la competencia es feroz.
La buena noticia es que puedes obtener un certificado SSL de forma totalmente gratuita y automatizada gracias a Let's Encrypt. Este artículo te guiará paso a paso para activarlo y configurarlo en tu tienda PrestaShop, sin necesidad de ser un experto en Linux o SysAdmin. Vamos a ello.
Requisitos previos antes de empezar
Antes de lanzarnos a instalar el certificado, asegúrate de cumplir con estos requisitos. Si no los tienes, el proceso fallará y te frustrarás sin necesidad.
- Tener acceso a tu servidor: Necesitas acceso por línea de comandos (SSH) a tu VPS o servidor dedicado. Si estás en un hosting compartido, este proceso puede variar, pero muchos paneles ya lo integran. Este tutorial asume que tienes control total sobre el servidor.
- Tener un dominio apuntando a tu servidor: El dominio que usarás para la tienda (por ejemplo,
www.mitienda.com) debe resolver a la IP de tu servidor. Puedes comprobarlo con un simplepingdesde tu ordenador. - Tener acceso a tu panel de control: Si usas un panel como Syspanel (anteriormente conocido como HestiaCP, cuyo acceso es a través del puerto 2106), el proceso será mucho más sencillo. Si no, también te explicaremos cómo hacerlo a mano.
- Tener PrestaShop instalado y funcionando: Obviamente, necesitas tu tienda operativa en el servidor, aunque sea en una fase inicial.
Método 1: La forma más fácil - Usando Syspanel (HestiaCP)
Si tu hosting utiliza Syspanel, estás de suerte. Este panel de control gratuito y de código abierto simplifica muchísimo la gestión del servidor, incluyendo la emisión de certificados SSL. Recuerda que para acceder a Syspanel, debes hacerlo a través de tu navegador usando la dirección https://ip-de-tu-servidor:2106.
Paso 1: Accede a Syspanel
Abre tu navegador y escribe https://IP_DE_TU_SERVIDOR:2106. Te pedirá un usuario y contraseña. Estos son los que configuraste al instalar el panel (normalmente el usuario es admin).
Paso 2: Navega a la sección de tu dominio
Una vez dentro, verás una interfaz limpia y ordenada. En el menú superior, busca la pestaña que dice "Web". Se desplegarán los dominios que tienes configurados. Haz clic en el dominio de tu tienda PrestaShop (por ejemplo, mitienda.com).
Paso 3: Activa el SSL gratuito
Dentro de la página de configuración de tu dominio, busca una sección llamada "SSL" o "Seguridad". Verás un botón o enlace que dice "Let's Encrypt" o "Activar SSL". Haz clic en él.
[TIP]
Asegúrate de tener marcadas las casillas para incluir tanto dominio.com como www.dominio.com en el certificado. Así cubrirás todas las variantes y evitarás avisos de "sitio no seguro" si alguien escribe con o sin las "www".
Paso 4: Espera y verifica
El panel se encargará de comunicarse con Let's Encrypt, verificar que el dominio es tuyo y emitir el certificado. Este proceso suele tardar menos de un minuto. Verás un mensaje de éxito en pantalla.
Paso 5: Configura la redirección
Ahora que el SSL está activo, es hora de forzar que todo el tráfico vaya por HTTPS. En la misma página de configuración del dominio, busca la opción "Redirección" o "Redirect". Activa la opción que diga "Forzar HTTPS" o "Redirigir todo el tráfico a HTTPS". Esto es esencial para que la tienda funcione correctamente y no haya contenido mixto (elementos cargados por HTTP y HTTPS a la vez).
Método 2: La forma manual - Usando Certbot en Linux
Si no usas un panel de control o prefieres tener el control total, puedes usar Certbot, el cliente oficial de Let's Encrypt. Este método es igual de válido y muy fiable. Aquí asumimos que tienes un servidor con Ubuntu o Debian.
Paso 1: Conecta por SSH a tu servidor
Usa tu terminal y conéctate a tu servidor. Por ejemplo: ssh usuario@ip-de-tu-servidor.
Paso 2: Instala Certbot y su plugin para Apache o Nginx
Primero, actualiza los repositorios e instala Certbot. Los comandos son los siguientes:
sudo apt update
sudo apt install certbot python3-certbot-apache -y
[INFO]
Si tu servidor usa Nginx en lugar de Apache, el comando sería sudo apt install certbot python3-certbot-nginx -y. La mayoría de los paneles como Syspanel usan Apache, así que es probable que el primer comando sea el correcto.
Paso 3: Ejecuta Certbot para obtener el certificado
Ahora viene la parte mágica. Ejecuta el siguiente comando, reemplazando tu-dominio.com por el tuyo. Te preguntará por tu correo electrónico (para avisos de renovación) y si aceptas los términos de servicio.
sudo certbot --apache -d tu-dominio.com -d www.tu-dominio.com
Paso 4: Configura la renovación automática
La gran ventaja de Let's Encrypt es que los certificados duran 90 días, pero Certbot configura automáticamente una tarea en el sistema (cron) para renovarlos. Para verificar que todo funciona, puedes hacer un "ensayo general" de la renovación:
sudo certbot renew --dry-run
Si no muestra errores, tu certificado se renovará solo en el futuro. No tendrás que preocuparte por nada más.
Configurando PrestaShop para usar HTTPS
Una vez que el certificado está instalado en el servidor, debes decirle a PrestaShop que use HTTPS. Esto se hace desde su panel de administración.
Paso 1: Accede al back-office de PrestaShop
Ve a https://tu-dominio.com/admin (o la ruta que hayas configurado) e inicia sesión.
Paso 2: Ve a la configuración de la tienda
En el menú lateral izquierdo, busca "Configuración avanzada" y luego haz clic en "Rendimiento" o "General" (la ruta exacta puede variar ligeramente según la versión de PrestaShop).
Paso 3: Activa la opción de SSL
Busca la opción que dice "Activar SSL" y cámbiala a "Sí". También verás una opción para "Activar SSL en todas las páginas". Activa ambas. Guarda los cambios.
[WARNING]
Es muy importante que actives ambas opciones a la vez. Si solo activas la primera, es posible que algunas páginas sigan cargando por HTTP, lo que se conoce como "contenido mixto". Esto no solo muestra un aviso de seguridad en el navegador, sino que también puede penalizar tu SEO.
Paso 4: Actualiza las URLs en la base de datos
A veces, PrestaShop guarda las URLs antiguas (con http://) en la base de datos. Para evitar problemas, puedes hacer una actualización masiva. Ve a "Configuración avanzada" > "Base de datos" y busca la herramienta de "Búsqueda y reemplazo". Ejecuta un reemplazo de http://tu-dominio.com por https://tu-dominio.com.
[WARNING]
Ten mucho cuidado con esta herramienta. Asegúrate de escribir las URLs exactamente como aparecen, sin barras finales extra, y de que estás reemplazando en la tabla correcta (generalmente ps_shop_url y ps_configuration). Si no te sientes seguro, puedes omitir este paso, ya que PrestaShop suele manejar la redirección automáticamente, pero es una buena práctica para evitar errores.
Verificación final y resolución de problemas comunes
Una vez hecho todo, es hora de comprobar que todo funciona correctamente.
- Prueba de navegación: Abre tu tienda en una ventana de incógnito y navega por varias páginas (productos, carrito, checkout). Asegúrate de que el candado de seguridad aparece en la barra de direcciones y que no hay avisos de "contenido mixto".
- Herramienta de validación: Usa herramientas online como "SSL Labs" o "Why No Padlock" para analizar tu sitio. Te dirán si hay algún error en la configuración del certificado o en el contenido de la web.
Problema: "El sitio no es seguro" o "Contenido mixto"
Esto significa que algún recurso (imagen, CSS, JavaScript) se está cargando por HTTP. Para solucionarlo:
- Limpia la caché: En PrestaShop, ve a "Parámetros avanzados" > "Rendimiento" y pulsa el botón "Vaciar la caché". A veces esto es suficiente.
- Actualiza URLs manualmente: Si el problema persiste, es que hay URLs hardcodeadas en el código o en la base de datos. Revisa el paso anterior de "Búsqueda y reemplazo" y asegúrate de haberlo hecho correctamente.
- Usa la función de "Forzar SSL" en PrestaShop: Algunas versiones tienen un parámetro en el archivo
config/settings.inc.phpque fuerza el SSL. Búscalo y actívalo.
Problema: El certificado no se renueva automáticamente
Si usaste el método manual con Certbot, verifica que el servicio cron esté activo. Si usaste Syspanel, la renovación está integrada y es automática, no deberías tener problemas.
Problema: Mi hosting no me permite instalar Let's Encrypt
Algunos hostings compartidos muy restrictivos no permiten la instalación de certificados personalizados. En ese caso, contacta con tu proveedor y pregunta si ofrecen SSL gratuito. Muchos ya lo incluyen en sus planes. Si no, es una buena señal para considerar cambiarte a un VPS.
Preguntas frecuentes (FAQ)
¿Qué es Let's Encrypt?
Es una autoridad de certificación gratuita, automatizada y abierta que emite certificados SSL para cualquier persona. Su misión es crear una internet más segura y privada.
¿Cuánto dura un certificado de Let's Encrypt?
Los certificados de Let's Encrypt tienen una validez de 90 días. Sin embargo, la renovación está automatizada, por lo que no tendrás que hacer nada manualmente si configuras todo bien.
¿Puedo usar Let's Encrypt con mi hosting compartido?
Depende del proveedor. Muchos ya lo integran en sus paneles (como Syspanel). Si no, deberías tener acceso SSH para poder usar Certbot manualmente. Si no tienes ninguna de las dos opciones, contacta con tu soporte.
¿Afecta el SSL a mi posicionamiento en Google?
Sí, es un factor de ranking confirmado. Un sitio con SSL tiene una ligera ventaja sobre uno que no lo tiene. Además, es un requisito para las nuevas funciones de Google, como el Core Web Vitals.
¿Necesito un certificado SSL si mi tienda no procesa pagos directamente?
Sí. Aunque uses PayPal o Stripe para los pagos, tus clientes siguen introduciendo datos personales (nombre, dirección, email) en tu formulario de registro y checkout. El SSL protege esos datos y genera confianza.
¿Qué pasa si no activo el SSL?
Tu tienda será marcada como "No segura", lo que ahuyentará a los clientes. Además, es probable que tu posicionamiento en Google se resienta y que no puedas cumplir con el RGPD (Reglamento General de Protección de Datos) de la UE, ya que no estás protegiendo los datos de tus usuarios.
¿Puedo tener SSL en varios dominios?
Sí. Tanto con Syspanel como con Certbot, puedes generar certificados para cada dominio que tengas en tu servidor. El proceso es el mismo, solo tienes que repetirlo para cada dominio.
¿Qué es "contenido mixto"?
Es cuando una página web se carga por HTTPS, pero algunos de sus recursos (imágenes, scripts) se cargan por HTTP. Esto provoca que el navegador muestre un aviso de seguridad, aunque el certificado sea válido. Es un error común que debes corregir.
Con esta guía completa, ya no tienes excusa para no tener tu tienda PrestaShop con la máxima seguridad. Activar el SSL es un paso fundamental para el éxito de tu ecommerce. Si has seguido todos los pasos, tu tienda estará lista para ofrecer una experiencia de compra segura y fiable. ¡Enhorabuena!
