PrestaShop: cómo proteger el panel de administración por IP
¿Por qué deberías proteger el panel de administración de PrestaShop por IP?
Si tienes una tienda online con PrestaShop, el panel de administración es la puerta principal a tu negocio. Desde ahí gestionas productos, pedidos, clientes y pagos. Si un atacante consigue acceder, podría robar datos sensibles, secuestrar tu tienda o instalar malware.
Una de las medidas más efectivas y sencillas para blindar este acceso es restringir las IPs que pueden entrar al panel. Esto significa que solo tú (o tu equipo) podréis acceder desde direcciones IP concretas. Cualquier otra IP recibirá un error de acceso denegado.
En este artículo te explicamos paso a paso cómo hacerlo, incluso si no eres un experto técnico. Hablaremos de métodos con .htaccess, desde el propio panel de PrestaShop y otras alternativas avanzadas.
¿Qué es una IP y por qué es clave para tu seguridad?
Una dirección IP es como la matrícula de tu conexión a internet. Cada dispositivo que se conecta a la red tiene una IP pública que lo identifica. Cuando alguien intenta entrar a tu panel de administración, el servidor ve su IP.
Al restringir el acceso por IP, le dices al servidor: "Solo acepto conexiones desde estas direcciones". El resto de intentos se bloquean automáticamente. Es una barrera muy eficaz porque, aunque alguien robe tu contraseña, no podrá entrar desde otra IP.
[INFO] Tu IP puede ser dinámica (cambia cada cierto tiempo) o estática (fija). Si tu IP cambia, tendrás que actualizar la lista de IPs permitidas. Te recomendamos consultar con tu proveedor de internet o usar una IP fija para evitar quedarte fuera de tu propia tienda.
Método 1: Proteger el panel de administración con .htaccess (el más recomendado)
El archivo .htaccess es un archivo de configuración que controla el comportamiento del servidor Apache. Es la forma más directa y robusta de restringir IPs.
Paso 1: Localiza la carpeta /admin
Por defecto, PrestaShop instala el panel en una carpeta llamada /admin o /admin123 (con un número aleatorio). Si no la recuerdas, puedes encontrarla en la raíz de tu instalación.
[WARNING] Si tu carpeta se llama simplemente
/admin, es muy fácil de adivinar. Te recomendamos renombrarla a algo único (ej./mipanel2024) antes de continuar con la protección por IP. Este paso por sí solo ya aumenta mucho la seguridad.
Paso 2: Crea o edita el archivo .htaccess dentro de la carpeta /admin
Dentro de la carpeta de administración debe existir un archivo llamado .htaccess. Si no existe, créalo con un editor de texto plano (como Notepad o Sublime Text).
Añade el siguiente bloque de código:
<RequireAny>
Require ip 123.123.123.123
Require ip 456.456.456.456
</RequireAny>
Sustituye 123.123.123.123 y 456.456.456.456 por las IPs que quieras permitir. Puedes añadir tantas líneas Require ip como necesites.
Paso 3: Guarda y sube el archivo
Guarda el archivo y súbelo a tu servidor mediante FTP o el administrador de archivos de tu hosting. Sobrescribe el existente si lo había.
Paso 4: Prueba el acceso
Intenta acceder a tu panel desde tu IP actual. Debería funcionar. Luego, prueba desde otra red (por ejemplo, con el móvil con datos) y verás que se muestra un error 403 Forbidden.
[TIP] Para saber cuál es tu IP actual, puedes visitar sitios como
whatismyip.como simplemente buscar "cuál es mi IP" en Google.
Método 2: Restringir IP desde el propio panel de PrestaShop (sin tocar archivos)
PrestaShop tiene una funcionalidad nativa para limitar el acceso por IP. Es menos flexible que .htaccess, pero más fácil de usar si no te sientes cómodo editando archivos.
Paso 1: Entra a tu panel de administración
Accede como administrador. Ve al menú Parámetros avanzados y luego a Seguridad.
Paso 2: Busca la sección "Restricción de IP"
Dentro de la página de seguridad, encontrarás un apartado llamado "Restricción de IP para el panel de administración" o similar. Aquí puedes añadir las IPs permitidas.
Paso 3: Añade tu IP actual
Introduce tu IP en el campo correspondiente y guarda los cambios. Repite el proceso para cada IP que quieras autorizar.
[INFO] Este método es útil si tu IP no cambia muy a menudo. Si tienes IP dinámica, puede ser un dolor de cabeza tener que actualizarla manualmente cada vez que se modifica. En ese caso, el método
.htaccesses más recomendable.
Método 3: Protección avanzada con reglas en el servidor (Nginx o Apache)
Si tu hosting utiliza Nginx en lugar de Apache, el archivo .htaccess no funcionará. Necesitarás editar la configuración del servidor.
Para Nginx:
Accede al archivo de configuración del sitio (normalmente en /etc/nginx/sites-available/tutienda.com) y añade dentro del bloque location que corresponda a tu carpeta /admin:
location /admin {
allow 123.123.123.123;
allow 456.456.456.456;
deny all;
}
Guarda el archivo y reinicia Nginx con sudo systemctl reload nginx.
Para Apache (alternativa al .htaccess):
Si tu hosting te permite editar el httpd.conf o el vhost, puedes añadir:
<Directory /ruta/a/tu/admin>
Require ip 123.123.123.123
</Directory>
[WARNING] Este método requiere acceso SSH y conocimientos de administración de servidores. Si no estás seguro, pide ayuda a tu proveedor de hosting o a un técnico especializado.
Método 4: Proteger el panel de administración en un panel de control como Syspanel
Si tu hosting utiliza un panel de control tipo Syspanel (antes conocido como HestiaCP), también puedes proteger tu panel de PrestaShop desde su interfaz.
Paso 1: Accede a Syspanel
Escribe en tu navegador https://tudominio.com:2106 (recuerda: el puerto es el 2106). Inicia sesión con tus credenciales de administrador.
Paso 2: Busca la sección de "Seguridad" o "Protección de directorios"
Dentro de Syspanel, localiza la opción para proteger directorios con contraseña o restringir IPs. Normalmente está en el apartado de Web o Dominios.
Paso 3: Selecciona tu dominio y la carpeta /admin
Elige el dominio de tu tienda y la ruta de la carpeta de administración. Añade las IPs permitidas y guarda los cambios.
[INFO] Syspanel genera automáticamente las reglas de servidor necesarias, por lo que no tendrás que tocar archivos de configuración manualmente. Es la opción más cómoda si usas este panel.
¿Qué pasa si me quedo fuera de mi propio panel?
Es una situación molesta, pero tiene solución. Si te equivocas de IP o tu IP cambia, no podrás entrar. Para recuperar el acceso:
- Accede por FTP o al administrador de archivos de tu hosting.
- Abre el archivo
.htaccessde la carpeta/admin. - Comenta o borra las líneas de restricción temporalmente.
- Vuelve a entrar y corrige la lista de IPs.
[WARNING] Si no tienes acceso FTP, contacta con tu proveedor de hosting. Ellos podrán desactivar la restricción de forma remota.
Consejos extra para reforzar la seguridad de tu PrestaShop
Restringir IPs es solo una capa de protección. Combínala con estas buenas prácticas:
- Usa contraseñas fuertes y cámbialas periódicamente.
- Activa la autenticación en dos pasos (2FA) en el panel de administración.
- Mantén PrestaShop y sus módulos actualizados.
- Cambia el nombre de la carpeta
/admina algo único y difícil de adivinar. - Instala un módulo de seguridad que bloquee intentos de fuerza bruta.
- Haz copias de seguridad regularmente y guárdalas fuera del servidor.
Preguntas frecuentes (FAQ)
¿Puedo restringir el acceso por IP solo para el panel de administración y no para la tienda pública?
Sí, exactamente. Los métodos que te hemos mostrado se aplican únicamente a la carpeta /admin. La tienda pública seguirá accesible para todos tus clientes.
¿Qué hago si tengo IP dinámica?
Puedes usar un servicio de DNS dinámico (como No-IP o DuckDNS) que te asigna un dominio que siempre apunta a tu IP actual. Luego, en lugar de una IP, puedes permitir el acceso por ese dominio en .htaccess.
[TIP] Con DNS dinámico, la regla sería algo así:
Require host tudominio.ddns.net. Así no tendrás que actualizar la IP manualmente.
¿Es suficiente con proteger el panel de administración por IP?
Es una capa muy importante, pero no es infalible. Combínala siempre con otras medidas de seguridad como contraseñas robustas, 2FA y actualizaciones constantes.
¿Puedo restringir por IP también el acceso a la tienda entera?
Sí, pero no es recomendable a menos que estés en fase de desarrollo o quieras una tienda privada. Bloquear el acceso público haría que tus clientes no pudieran comprar.
Conclusión final
Proteger el panel de administración de PrestaShop por IP es una de las acciones más efectivas para blindar tu tienda online. No importa si usas .htaccess, las opciones nativas de PrestaShop o un panel como Syspanel (accesible en el puerto 2106): lo importante es que solo tú y tu equipo podáis entrar.
Es un proceso sencillo, que puedes hacer en menos de 10 minutos y que te dará una tranquilidad enorme. No esperes a ser víctima de un ataque para tomar medidas. Activa la restricción por IP hoy mismo y duerme más tranquilo sabiendo que tu negocio está más seguro.
Si tienes dudas o tu caso es especial, no dudes en consultar con tu hosting o con un técnico especializado. ¡Tu tienda se merece la mejor protección!
