🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo proteger WordPress con contraseña en Syspanel (Directorio Admin)

Actualizado el 14 de febrero de 2026

¿Por qué proteger el directorio wp-admin en WordPress?

WordPress es el gestor de contenidos más utilizado del mundo, y precisamente por eso, es uno de los objetivos favoritos de los atacantes. El directorio wp-admin es el corazón de tu sitio: desde ahí se gestionan usuarios, plugins, temas, entradas y la configuración general. Si alguien no autorizado accede a esta zona, podría tomar el control total de tu web.

Aunque WordPress ya incluye su propio sistema de autenticación (usuario y contraseña), añadir una capa extra de seguridad a nivel de servidor es una práctica muy recomendada. Proteger el directorio wp-admin con una contraseña adicional, mediante .htaccess y .htpasswd, es una de las formas más efectivas y sencillas de blindar tu panel de administración.

En este artículo te explicamos, paso a paso, cómo hacerlo usando Syspanel (nuestro panel de control, antiguamente conocido como HestiaCP, al que accedes por el puerto 2106). No necesitas ser un experto en servidores: solo sigue las instrucciones y tendrás tu wp-admin protegido en unos minutos.

¿Qué es .htaccess y .htpasswd?

Antes de empezar, es importante que entiendas qué son estos dos archivos, porque son la base de este método de protección.

[INFO] Un archivo .htaccess es un archivo de configuración que permite modificar el comportamiento del servidor Apache en un directorio concreto. Es el que usaremos para "exigir" una contraseña al visitante.

[INFO] Un archivo .htpasswd es un archivo que contiene los usuarios y sus contraseñas (codificadas) que tienen permiso para acceder al directorio protegido.

Cuando ambos archivos se combinan, el servidor lanza automáticamente un cuadro de diálogo pidiendo usuario y contraseña antes de cargar cualquier archivo de wp-admin. Esto es independiente de la contraseña de WordPress, por lo que estamos añadiendo una barrera doble.

Requisitos previos

Para seguir esta guía necesitas:

  • Acceso a Syspanel a través del puerto 2106 (por ejemplo, https://tu-servidor:2106).
  • Tener WordPress instalado en tu cuenta.
  • Conocer la ruta absoluta de tu sitio web en el servidor (normalmente algo como /home/usuario/web/dominio/public_html).
  • Un cliente FTP o el administrador de archivos de Syspanel (aunque en este tutorial usaremos el explorador de archivos del panel, que es más cómodo).

Método 1: Proteger wp-admin con contraseña usando Syspanel

Este es el método más recomendado porque no necesitas tocar archivos de forma manual si no te sientes cómodo con FTP. Syspanel incluye una herramienta específica para esto.

Paso 1: Accede a Syspanel

Abre tu navegador y escribe la dirección de tu servidor con el puerto 2106. Por ejemplo: https://midominio.com:2106. Introduce tus credenciales de administrador de Syspanel.

Paso 2: Localiza tu dominio

En el panel principal, verás una lista de tus dominios y subdominios. Busca el dominio donde tienes instalado WordPress. Haz clic en el botón "Administrar" (suele ser un icono de engranaje o un botón azul) junto al dominio correspondiente.

Paso 3: Accede a la protección de directorios

Dentro de la gestión del dominio, busca una pestaña o sección llamada "Protección de directorios" o "Proteger directorios". En Syspanel, esta opción suele estar en el menú lateral o en la parte superior de la página del dominio.

Paso 4: Crea el usuario y la contraseña

En esta sección, podrás:

  • Seleccionar el directorio que quieres proteger. En este caso, deberás navegar hasta la carpeta public_html y luego entrar en wp-admin. También puedes escribir la ruta directamente si lo prefieres.
  • Introducir un nombre de usuario para el acceso protegido (por ejemplo, adminseguro).
  • Introducir y confirmar una contraseña segura. Asegúrate de que sea larga y compleja, combinando mayúsculas, minúsculas, números y símbolos.

Paso 5: Guarda la configuración

Haz clic en el botón "Guardar" o "Proteger". Syspanel creará automáticamente los archivos .htaccess y .htpasswd en el directorio wp-admin con la configuración correcta.

Paso 6: Comprueba que funciona

Para verificar que todo ha ido bien, abre tu navegador en modo incógnito y visita la URL de tu panel de administración, por ejemplo, https://midominio.com/wp-admin. Deberías ver un cuadro de diálogo pidiendo el usuario y la contraseña que acabas de crear.

[!TIP]
Si no quieres que la protección afecte a los archivos estáticos (CSS, JS, imágenes) de wp-admin, puedes crear una excepción en el .htaccess, pero para la mayoría de los casos no es necesario. La protección de todo el directorio es más segura.

Método 2: Protección manual con archivos .htaccess y .htpasswd

Si prefieres tener el control total y crear los archivos manualmente, este método es para ti. Es igual de válido y te servirá para entender mejor cómo funciona el sistema.

Paso 1: Crea el archivo .htpasswd

El archivo .htpasswd debe contener el usuario y la contraseña en un formato específico. La contraseña debe estar cifrada (generalmente con el algoritmo crypt o bcrypt). Puedes generar el hash de varias maneras:

  • Usando la herramienta online de Syspanel: Algunos paneles tienen un generador de contraseñas. Busca "Generador .htpasswd" en la sección de herramientas.
  • Usando un generador online: Existen webs que generan el hash al instante. Solo tienes que introducir el usuario y la contraseña y te darán la línea que debes añadir al archivo.
  • Usando la terminal (si tienes acceso SSH): Ejecuta htpasswd -nb usuario contraseña y te devolverá la línea con el hash.

[WARNING] No utilices nunca la contraseña de tu WordPress ni de tu correo para esta protección. Debe ser una contraseña única y difícil de adivinar.

Una vez tengas el hash, crea un archivo llamado .htpasswd (con el punto al principio) y pégalo dentro. La línea tendrá este formato:

usuario:$apr1$hashcodificado...

Paso 2: Crea el archivo .htaccess en wp-admin

Ahora necesitas crear (o editar) el archivo .htaccess dentro del directorio wp-admin. No lo confundas con el .htaccess de la raíz de WordPress.

Abre el administrador de archivos de Syspanel o conéctate por FTP. Navega hasta public_html/wp-admin. Si no existe un archivo .htaccess, créalo. Si existe (poco común en wp-admin), ábrelo para editarlo.

Añade el siguiente bloque de código al principio del archivo:

AuthType Basic
AuthName "Acceso Restringido"
AuthUserFile /ruta/absoluta/hasta/.htpasswd
Require valid-user

Explicación de cada línea:

  • AuthType Basic: Define el tipo de autenticación (básica con usuario y contraseña).
  • AuthName: Es el mensaje que verá el usuario en el cuadro de diálogo. Puedes personalizarlo, por ejemplo, "Zona de Administración".
  • AuthUserFile: Es la ruta absoluta en el servidor donde se encuentra tu archivo .htpasswd. Es muy importante que sea la ruta completa, no una relativa. Por ejemplo: /home/usuario/.htpasswd (si lo colocas fuera de la carpeta pública) o /home/usuario/web/dominio/public_html/.htpasswd (si lo pones dentro, aunque es menos seguro).
  • Require valid-user: Indica que cualquier usuario que esté en el archivo .htpasswd puede acceder.

Paso 3: Guarda y sube los archivos

Guarda los cambios en el .htaccess y asegúrate de que tanto este archivo como el .htpasswd están subidos al servidor en las rutas correctas.

[!WARNING]
La ruta de AuthUserFile debe ser la ruta absoluta del servidor, no la URL. Si pones una ruta incorrecta, el servidor devolverá un error 500. Si te pasa esto, verifica la ruta con el administrador de archivos de Syspanel.

Paso 4: Prueba el acceso

Al igual que en el método anterior, abre tu navegador en modo incógnito y visita https://midominio.com/wp-admin. Deberías ver el cuadro de diálogo de autenticación.

Dónde colocar el archivo .htpasswd: ¿dentro o fuera de public_html?

Una duda muy común es si el archivo .htpasswd debe estar dentro de la carpeta pública del sitio o fuera de ella.

[INFO] La opción más segura es colocarlo fuera de public_html. Por ejemplo, en /home/usuario/.htpasswd. De esta manera, si alguien intenta acceder directamente a https://midominio.com/.htpasswd, el servidor le devolverá un error 404 o 403, porque el archivo no es accesible desde la web.

[TIP] Si tu hosting no te permite colocar archivos fuera de public_html, puedes dejarlo dentro, pero asegúrate de que el servidor bloquea el acceso a los archivos que empiezan por .ht. Por defecto, Apache ya lo hace, pero es bueno verificarlo.

Proteger también el archivo wp-login.php

Además de proteger el directorio wp-admin, es recomendable proteger el archivo wp-login.php, que es la puerta de entrada al panel de login. Aunque está dentro de la raíz, se puede proteger de forma independiente.

Para ello, puedes crear un archivo .htaccess en la raíz de WordPress y añadir una condición para proteger solo ese archivo. Sin embargo, esto puede ser más complejo y, en la mayoría de los casos, proteger el directorio wp-admin es suficiente, ya que el login también se encuentra ahí.

Solución de problemas comunes

Error 500 al acceder a wp-admin

Este error suele deberse a una ruta incorrecta en AuthUserFile o a un problema con el formato del archivo .htpasswd. Revisa que la ruta es absoluta y que el archivo de contraseñas no tiene líneas en blanco.

El cuadro de contraseña aparece pero no acepta mis credenciales

Verifica que el usuario y la contraseña en el archivo .htpasswd son correctos. Si usaste un generador online, asegúrate de que el formato es compatible con el servidor (normalmente $apr1$ o $2y$).

El cuadro de contraseña no aparece

Esto puede significar que el módulo de autenticación no está activo en Apache o que el archivo .htaccess no se está leyendo. Asegúrate de que AllowOverride está configurado como All en la configuración del dominio (Syspanel suele tenerlo por defecto). También revisa que el archivo .htaccess está en el directorio correcto y que no tiene errores de sintaxis.

Preguntas frecuentes (FAQ)

¿Es necesario proteger wp-admin si ya tengo un plugin de seguridad?

No es estrictamente necesario, pero es una capa extra muy valiosa. Los plugins de seguridad pueden fallar o tener vulnerabilidades. La protección a nivel de servidor es más difícil de eludir.

¿Afecta esta protección al rendimiento de mi sitio?

No, el impacto es mínimo. Solo se pide la contraseña una vez por sesión de navegador. Una vez autenticado, el servidor recuerda al usuario durante un tiempo.

¿Puedo proteger otros directorios además de wp-admin?

Sí, puedes usar el mismo método para proteger cualquier carpeta de tu sitio, como por ejemplo wp-includes o una carpeta de descargas privadas.

¿Qué pasa si olvido la contraseña de protección?

Puedes cambiarla o eliminarla en cualquier momento desde Syspanel, accediendo a la sección de protección de directorios y editando o borrando el usuario. Si la creaste manualmente, solo tienes que borrar o modificar el archivo .htpasswd.

¿Syspanel es lo mismo que HestiaCP?

Sí, Syspanel es el nombre comercial de nuestro panel de control, que está basado en HestiaCP. El acceso se realiza siempre a través del puerto 2106.

Conclusión

Proteger el directorio wp-admin con una contraseña adicional es una de las mejores inversiones de tiempo que puedes hacer para la seguridad de tu WordPress. Con Syspanel, este proceso es increíblemente sencillo, ya que la herramienta integrada se encarga de todo.

Tanto si usas el método automático como el manual, el resultado es el mismo: una barrera más que dificulta enormemente el acceso a los atacantes. No te conformes solo con la contraseña de WordPress; añade esta capa extra y duerme más tranquilo sabiendo que tu panel de administración está a salvo.

Recuerda que la seguridad es un proceso continuo. Combina esta protección con contraseñas fuertes, actualizaciones periódicas y un buen plugin de seguridad para mantener tu sitio a prueba de balas. Si tienes cualquier duda, nuestro equipo de soporte está aquí para ayudarte.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel