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

Proteger el directorio de administración de WordPress con contraseña (.htaccess)

Actualizado el 1 de abril de 2026

¿Por qué deberías proteger el directorio wp-admin con una contraseña extra?

Si gestionas un sitio web en WordPress, sabrás que el panel de administración (wp-admin) es la puerta principal a todo tu contenido, configuración y datos. Cualquier persona que acceda a /wp-admin puede intentar iniciar sesión, y si no tienes medidas de seguridad adicionales, estás dejando la puerta entreabierta a ataques de fuerza bruta o accesos no autorizados.

Aunque WordPress ya incluye un formulario de acceso con usuario y contraseña, añadir una capa extra de protección a nivel de servidor es una de las prácticas más recomendadas en ciberseguridad. Esta capa se implementa mediante un archivo llamado .htaccess en servidores Apache, o mediante configuraciones equivalentes en Nginx.

En este artículo te explicaré, paso a paso y sin tecnicismos complicados, cómo proteger wp-admin con una contraseña adicional usando .htaccess. También hablaremos de las ventajas, los errores comunes y cómo solucionarlos.


¿Qué es exactamente el archivo .htaccess y por qué es tan útil?

El archivo .htaccess es un archivo de configuración que permite modificar el comportamiento del servidor web Apache en directorios específicos, sin necesidad de tocar la configuración global del servidor. Es muy utilizado en hosting compartidos porque permite a los usuarios aplicar reglas de redirección, bloquear IPs, activar la compresión de archivos y, por supuesto, proteger directorios con contraseña.

En el contexto de WordPress, podemos colocar un .htaccess dentro de la carpeta /wp-admin para que el servidor pida una autenticación HTTP básica antes de que el navegador siquiera cargue el formulario de acceso de WordPress.

Esto significa que, aunque alguien conozca tu usuario y contraseña de WordPress, necesitará además la contraseña que tú defines en el servidor. Es una doble barrera que reduce drásticamente el riesgo de accesos no autorizados.


Requisitos previos antes de empezar

Antes de lanzarte a modificar archivos, asegúrate de cumplir con estos requisitos:

  • Tener acceso al panel de control de tu hosting o a un cliente FTP (como FileZilla).
  • Que tu servidor use Apache (la mayoría de los hosting compartidos lo usan). Si tu hosting usa Nginx, el método cambia y este artículo no te será del todo útil.
  • Tener a mano un usuario y contraseña que quieras usar para la capa extra de protección. Puede ser cualquier combinación, no tiene que coincidir con tu usuario de WordPress.
  • Hacer una copia de seguridad de los archivos que vayas a modificar. Esto es fundamental para poder revertir cambios si algo sale mal.

[WARNING] Si no tienes experiencia con FTP o edición de archivos de configuración, te recomiendo practicar primero en un sitio de pruebas o pedir ayuda a tu proveedor de hosting. Un error en .htaccess puede dejar tu web inaccesible temporalmente.


Método paso a paso para proteger wp-admin con contraseña

Vamos a dividir el proceso en tres fases: crear el archivo de contraseñas, crear el .htaccess en wp-admin y subir ambos archivos al servidor.

Paso 1: Crear el archivo de contraseñas (.htpasswd)

El servidor necesita un archivo donde almacenar el usuario y la contraseña en formato cifrado. Este archivo se llama comúnmente .htpasswd.

No puedes simplemente escribir la contraseña en texto plano; debe estar cifrada. Para ello, puedes usar herramientas online (como generadores de .htpasswd) o, si tienes acceso a la terminal de tu hosting, usar el comando htpasswd.

Opción A: Usar una herramienta online

Busca en Google "generador htpasswd" y encontrarás varias webs donde introduces el usuario y la contraseña, y te genera una línea con el formato usuario:hash. Guarda ese texto en un archivo llamado .htpasswd.

Opción B: Usar terminal (si tienes acceso SSH)

Escribe el siguiente comando, sustituyendo usuario por tu nombre de usuario:

htpasswd -c /ruta/donde/guardar/.htpasswd usuario

Te pedirá la contraseña dos veces y creará el archivo.

[TIP] Guarda el archivo .htpasswd fuera del directorio público de tu web (por ejemplo, una carpeta por encima de public_html). Así, aunque alguien acceda por FTP a tu web, no podrá descargar el archivo de contraseñas. Si tu hosting no te lo permite, colócalo en una subcarpeta protegida.

Paso 2: Crear el archivo .htaccess para wp-admin

Ahora necesitas crear un archivo llamado .htaccess (sin nombre antes del punto) con el siguiente contenido:

AuthType Basic
AuthName "Acceso restringido"
AuthUserFile /ruta/absoluta/hacia/.htpasswd
Require valid-user

Vamos a desglosar cada línea:

  • AuthType Basic: indica que usaremos autenticación básica HTTP.
  • AuthName "Acceso restringido": es el mensaje que verá el navegador en la ventana emergente de contraseña. Puedes personalizarlo.
  • AuthUserFile /ruta/absoluta/hacia/.htpasswd: aquí debes poner la ruta absoluta en el servidor donde está tu archivo .htpasswd. No es la ruta relativa desde el navegador, sino la ruta física en el disco duro del servidor.
  • Require valid-user: significa que solo los usuarios que estén en el archivo .htpasswd podrán entrar.

¿Cómo saber la ruta absoluta?

Puedes encontrarla en el panel de control de tu hosting (suele aparecer como "Ruta del servidor" o "Absolute path"). Otra forma es crear un archivo PHP con <?php echo __DIR__; ?> y subirlo a tu web, aunque es más técnico.

Paso 3: Subir los archivos al servidor

Conecta por FTP a tu hosting y navega hasta la carpeta /wp-admin de tu instalación de WordPress. Sube el archivo .htaccess que acabas de crear.

Asegúrate de que el archivo se llame exactamente .htaccess (sin nada antes del punto). Algunos editores de texto en Windows pueden añadir una extensión extra; si eso pasa, renombra el archivo antes de subirlo.

También sube el archivo .htpasswd a la ruta que especificaste en AuthUserFile. Si lo pusiste fuera del directorio público, simplemente súbelo a esa ubicación.

Una vez subidos, prueba a acceder a tudominio.com/wp-admin. Debería aparecer una ventana emergente pidiendo usuario y contraseña.


Cómo integrar esta protección con WordPress sin romper nada

Un error común es que, al proteger wp-admin, también se bloqueen las peticiones AJAX o los archivos de login que usan algunos plugins o temas. Para evitarlo, puedes añadir algunas líneas extra al .htaccess de wp-admin para permitir el acceso a ciertos archivos.

Por ejemplo, si usas WooCommerce o algún plugin de caché, es posible que necesites permitir el acceso a admin-ajax.php sin contraseña. Añade esto al final de tu .htaccess:

<Files admin-ajax.php>
    Require all granted
</Files>

Esto permite que las peticiones internas de WordPress puedan pasar sin la autenticación extra.

[INFO] Si tu web usa un plugin de caché (como W3 Total Cache o WP Rocket), es posible que necesites también excluir ciertos archivos de la protección para que el rendimiento no se vea afectado. Consulta la documentación del plugin o prueba la web después de aplicar la protección.


Cómo desproteger wp-admin si te equivocas o ya no lo necesitas

Si en algún momento quieres quitar la protección, simplemente elimina el archivo .htaccess que creaste dentro de la carpeta /wp-admin. Si no puedes acceder por FTP, utiliza el administrador de archivos de tu panel de hosting.

Si has perdido el acceso a FTP y no puedes eliminar el archivo, contacta con el soporte de tu hosting para que lo hagan por ti.

[WARNING] No intentes eliminar el .htaccess principal de WordPress (el que está en la raíz), ya que contiene reglas importantes para los enlaces permanentes. Solo elimina el que está dentro de wp-admin.


Alternativa: Proteger wp-admin con un plugin

Si no te sientes cómodo editando archivos de configuración, existen plugins de seguridad que ofrecen esta función con un par de clics. Algunos ejemplos son:

  • iThemes Security: incluye una opción para proteger el panel con contraseña adicional.
  • WP Admin Security: específico para este propósito.
  • All In One WP Security: tiene un módulo de seguridad para el directorio de administración.

Ventajas de los plugins: son fáciles de configurar, no requieren conocimientos técnicos y algunos ofrecen funciones adicionales como limitación de intentos de acceso o bloqueo de IPs.

Desventajas: añaden peso al sitio y, en algunos casos, pueden entrar en conflicto con otros plugins si no se configuran bien.


Preguntas frecuentes sobre proteger wp-admin con contraseña

¿Es compatible con todos los hostings?

La mayoría de los hostings compartidos usan Apache, así que sí. Si tu hosting usa LiteSpeed (que es compatible con .htaccess), también funcionará. Si usas Nginx, necesitarás otra configuración.

¿Afecta al rendimiento de mi web?

El impacto es mínimo, ya que la autenticación solo se verifica al cargar el panel de administración, no en el front-end de tu web.

¿Puedo usar la misma contraseña que mi usuario de WordPress?

Sí, pero es recomendable que uses una contraseña diferente y robusta para esta capa extra. Así, si una se ve comprometida, la otra sigue protegiendo.

¿Qué pasa si olvido la contraseña del .htpasswd?

Puedes eliminar el archivo .htpasswd y crear uno nuevo con una nueva contraseña, siguiendo el paso 1 del tutorial.

¿Protege también el archivo wp-login.php?

No directamente. La protección por .htaccess en wp-admin cubre todo el directorio, pero wp-login.php está en la raíz. Si quieres proteger también esa página, necesitas aplicar una regla similar en el .htaccess raíz de WordPress.


Conclusión y buenas prácticas finales

Proteger el directorio wp-admin con una contraseña adicional es una medida sencilla pero muy efectiva para reforzar la seguridad de tu WordPress. Aunque no es infalible (ninguna medida lo es), disuade a la mayoría de atacantes automatizados y añade una barrera más contra accesos no autorizados.

Resumen de buenas prácticas:

  • Usa una contraseña fuerte y diferente a la de WordPress.
  • Guarda el archivo .htpasswd fuera del directorio público.
  • Haz copias de seguridad antes de modificar cualquier archivo.
  • Prueba el acceso después de aplicar los cambios.
  • Si usas Syspanel (con puerto 2106) para gestionar tu hosting, recuerda que también puedes acceder al administrador de archivos desde ahí para subir o editar estos archivos.

[TIP] Si tu hosting utiliza Syspanel como panel de control, ten en cuenta que el acceso al panel se realiza a través del puerto 2106. Desde allí podrás acceder al administrador de archivos y al editor de texto para crear o modificar el .htaccess sin necesidad de FTP.

Espero que esta guía te haya sido útil. Si tienes dudas, déjalas en los comentarios y estaré encantado de 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