Proteger el directorio de administración de PrestaShop
¿Por qué es tan importante proteger el directorio de administración de PrestaShop?
Imagina que tu tienda online es una casa llena de productos, datos de clientes y, sobre todo, tu dinero. El panel de administración de PrestaShop es la puerta principal de esa casa. Si alguien no autorizado consigue entrar, podría robar información, modificar precios, instalar malware o incluso secuestrar tu tienda por completo.
La seguridad PrestaShop no es un lujo, es una necesidad. Cada día, bots automatizados escanean internet buscando tiendas con vulnerabilidades. Un directorio de administración desprotegido es como dejar la llave puesta en la cerradura. Por eso, proteger el directorio admin no es opcional: es una de las primeras líneas de defensa que debes activar.
En esta guía te voy a enseñar, paso a paso y sin tecnicismos complicados, cómo blindar ese acceso. No necesitas ser un hacker ni un experto en programación. Solo necesitas seguir estas instrucciones y tendrás tu tienda online segura en muy poco tiempo.
¿Qué es exactamente el directorio de administración de PrestaShop?
Cuando instalas PrestaShop, se crea una carpeta especial en tu servidor. Por defecto, se llama /admin o algo similar como /admin12345. Esta carpeta contiene todos los archivos que controlan la gestión de tu tienda: productos, pedidos, clientes, módulos, configuración... Todo.
El problema es que, por defecto, esta carpeta es accesible desde cualquier parte del mundo si alguien conoce la URL. Y aunque el panel de acceso tiene su contraseña, los ataques de fuerza bruta (intentos repetidos de adivinar la clave) son muy comunes.
Proteger admin PrestaShop significa añadir capas extra de seguridad para que, incluso si alguien descubre la URL, no pueda entrar. Es como tener una segunda puerta blindada detrás de la principal.
Primer paso: Cambiar el nombre del directorio admin
Esto es lo más fácil y lo primero que debes hacer. Si tu carpeta de administración se llama /admin, es un imán para los atacantes. Todos saben que PrestaShop usa esa ruta por defecto.
Cómo hacerlo:
- Accede a tu servidor mediante el administrador de archivos de tu hosting o por FTP (programas como FileZilla).
- Busca la carpeta que contiene tu tienda. Normalmente es
public_htmlowww. - Localiza la carpeta de administración. Puede llamarse
admin,admin123o algo similar. - Cámbiale el nombre a algo único y difícil de adivinar. Por ejemplo:
gestion-segura-2024opanel-control-privado. - Importante: Después de renombrarla, la URL de acceso cambiará. Ya no será
tutienda.com/admin, sinotutienda.com/gestion-segura-2024.
[TIP] Anota el nuevo nombre en un lugar seguro, como un gestor de contraseñas. No lo compartas con nadie que no necesite acceso a la gestión de la tienda.
¿Qué pasa si no recuerdo el nombre exacto?
No te preocupes. PrestaShop guarda la ruta de acceso en un archivo de configuración llamado parameters.php, que está dentro de la carpeta app/config. Ábrelo con un editor de texto y busca la línea que dice 'admin_dir' => 'gestion-segura-2024'. Ahí verás el nombre actual.
Segundo paso: Restricción por IP (el método más efectivo)
La restricción IP es como tener un portero que solo deja entrar a personas que están en una lista. Tú decides qué direcciones IP (la identificación numérica de cada conexión a internet) pueden acceder a tu panel de administración.
Esto es especialmente útil si siempre trabajas desde el mismo lugar (tu oficina o tu casa). Así, aunque alguien robe tu contraseña, no podrá entrar porque su IP no estará en la lista.
¿Cómo sé cuál es mi IP?
Es muy fácil. Solo tienes que buscar en Google "cuál es mi IP" y verás un número como 83.45.127.22. Ese es tu identificador.
Método 1: Desde el archivo .htaccess
Si tu servidor usa Apache (lo más común), puedes editar el archivo .htaccess que está dentro de la carpeta de administración que acabas de renombrar.
- Abre el archivo
.htaccesscon un editor de texto. - Añade estas líneas al principio:
<Limit GET POST PUT DELETE>
Order Deny,Allow
Deny from all
Allow from 83.45.127.22
</Limit>
- Sustituye
83.45.127.22por tu IP real. - Si necesitas permitir varias IPs, añade más líneas
Allow fromcon cada dirección.
Guarda el archivo y súbelo de nuevo al servidor si lo estabas editando localmente.
[WARNING] Si tu IP cambia (por ejemplo, si tu proveedor de internet usa IPs dinámicas), te quedarás fuera de tu propio panel. Asegúrate de tener un método alternativo de acceso o configura una IP fija con tu proveedor.
Método 2: Desde el panel de control de tu hosting
Muchos paneles de control ofrecen protección por contraseña o restricción IP directamente. Si tu hosting usa Syspanel (anteriormente conocido como HestiaCP, accesible por el puerto 2106), el proceso es así:
- Accede a tu panel de Syspanel usando la URL
https://tu-dominio:2106e inicia sesión. - Ve a la sección de "Web" o "Dominios" y busca tu tienda.
- Busca la opción "Protección de directorio" o "Proteger carpetas".
- Selecciona la carpeta de administración de PrestaShop.
- Activa la protección por IP y añade tu dirección IP.
[INFO] El puerto 2106 es la puerta de entrada a tu panel de control Syspanel. No lo confundas con el puerto de tu web (que normalmente es el 80 o 443). Si tienes dudas, consulta con tu proveedor de hosting.
Tercer paso: Protección con contraseña adicional (doble factor)
Piensa en esto como un segundo candado. Aunque alguien conozca la URL de tu panel y tenga tu IP, aún necesitaría pasar esta barrera. Es una contraseña extra que se pide antes de llegar a la pantalla de login de PrestaShop.
Configurarlo con Syspanel
Si usas Syspanel (puerto 2106), la protección por contraseña es muy sencilla:
- Entra en tu panel Syspanel.
- Ve a la sección de tu dominio.
- Busca "Protección de directorio" o "Password Protect".
- Elige la carpeta de administración.
- Crea un usuario y una contraseña nueva (no uses la misma que la de tu PrestaShop).
- Guarda los cambios.
Ahora, cuando alguien intente acceder a tutienda.com/gestion-segura-2024, el navegador le pedirá estas credenciales antes de mostrar siquiera el formulario de login de PrestaShop.
Configurarlo manualmente
Si tu hosting no tiene esta opción, puedes crearlo tú mismo con un archivo llamado .htpasswd:
- Crea un archivo llamado
.htpasswdy súbelo a una carpeta segura fuera del directorio público (por ejemplo, enprivate_htmlsi existe). - Genera el hash de tu contraseña con herramientas online como "htpasswd generator".
- El formato del archivo es:
usuario:hash-de-la-contrasena. - Edita el
.htaccessde tu carpeta admin y añade:
AuthType Basic
AuthName "Acceso restringido"
AuthUserFile /ruta/completa/al/archivo/.htpasswd
Require valid-user
[WARNING] Asegúrate de poner la ruta completa y absoluta al archivo
.htpasswd. Si pones una ruta relativa, no funcionará y podrías quedarte fuera.
Cuarto paso: Configuración interna de PrestaShop
Además de proteger el directorio a nivel de servidor, PrestaShop tiene sus propias opciones de seguridad que debes activar.
Activar el modo mantenimiento cuando no trabajes
Si no estás haciendo cambios, activa el modo mantenimiento. Así, aunque alguien intente acceder, verá un mensaje de "tienda en construcción" y no podrá ver nada.
Cambiar la URL del panel desde el back-office
- Ve a
Parámetros avanzados > Administración. - En el campo "Directorio de administración", verás el nombre actual.
- Cámbialo por otro nuevo. Esto es como cambiar la cerradura, pero sin tocar archivos manualmente.
Activar la autenticación de dos factores (2FA)
PrestaShop 1.7 y versiones superiores incluyen 2FA nativo. Actívalo en tu perfil de empleado. Esto añade un código temporal que se genera en tu móvil (con apps como Google Authenticator) cada vez que inicias sesión.
Quinto paso: Otras buenas prácticas de seguridad
La seguridad PrestaShop no termina en el directorio admin. Aquí tienes hábitos que debes adoptar:
Mantén todo actualizado
- PrestaShop core: Actualiza siempre a la última versión.
- Módulos y temas: Los módulos desactualizados son la puerta de entrada favorita de los atacantes.
- PHP: Usa una versión de PHP soportada (8.0 o superior).
Usa contraseñas robustas
Olvídate de "admin123" o "123456". Usa frases largas, con mayúsculas, minúsculas, números y símbolos. Un gestor de contraseñas te ayudará a recordarlas.
Realiza copias de seguridad
Programa copias de seguridad automáticas de tu base de datos y archivos. Si algo sale mal, podrás restaurar tu tienda en minutos.
Limita los intentos de inicio de sesión
Instala un módulo que bloquee la IP después de varios intentos fallidos. Esto frena los ataques de fuerza bruta.
Preguntas frecuentes (FAQ)
¿Qué hago si me he quedado fuera de mi propio admin por la restricción IP?
Tranquilo, no has perdido la tienda. Accede a tu hosting con FTP o al administrador de archivos de tu panel. Localiza el archivo .htaccess de la carpeta admin y elimina o comenta las líneas de restricción. Luego vuelve a configurarlas con tu nueva IP.
¿Necesito ser un experto para hacer todo esto?
No. Si sigues los pasos al pie de la letra, cualquiera con paciencia puede hacerlo. Si te sientes perdido, siempre puedes pedir ayuda a tu proveedor de hosting. Ellos suelen ofrecer soporte para este tipo de tareas.
¿La restricción por IP es a prueba de todo?
Ninguna medida es 100% infalible, pero combinando varias capas (nombre difícil, contraseña extra, restricción IP, 2FA) haces que tu tienda sea un objetivo muy poco atractivo. Los atacantes buscarán blancos más fáciles.
¿Cada cuánto debo revisar la seguridad de mi tienda?
Al menos una vez al mes. Revisa los logs de acceso, los usuarios con permisos de administrador y las actualizaciones pendientes. La seguridad es un proceso continuo, no una acción puntual.
Conclusión
Proteger el directorio de administración de PrestaShop es una de las tareas más importantes que puedes hacer por tu negocio online. No importa si vendes tres productos al día o tres mil: un ataque puede arruinar tu reputación y tu economía en cuestión de horas.
Con los pasos que te he explicado —cambiar el nombre, restringir por IP, añadir contraseña extra y activar 2FA— tendrás una tienda online segura y muy difícil de vulnerar. Recuerda que la seguridad no es un destino, sino un camino que debes recorrer constantemente.
Empieza hoy mismo. Dedica 30 minutos a proteger tu panel y duerme tranquilo sabiendo que tu negocio está a salvo. Tu yo del futuro (y tus clientes) te lo agradecerán.
