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

Cómo proteger el panel de administración de WordPress con contraseña en cPanel

Actualizado el 25 de marzo de 2026

¿Por qué proteger el panel de administración de WordPress?

El panel de administración de WordPress (también conocido como wp-admin) es la puerta de entrada a todo tu sitio web. Si un atacante logra acceder a él, podría robar tu contenido, instalar malware, redirigir a tus visitantes a sitios maliciosos o incluso eliminar tu web por completo.

Aunque WordPress ya tiene su propio sistema de contraseñas, añadir una capa extra de protección a nivel de servidor es una de las mejores prácticas de seguridad WordPress. Esta capa adicional funciona como un "segundo candado" que se activa antes de que siquiera llegues a la pantalla de inicio de sesión de WordPress.

En este artículo, te voy a enseñar paso a paso cómo proteger wp-admin con una contraseña adicional usando cPanel .htaccess. No necesitas ser un experto en sistemas, solo seguir las instrucciones al pie de la letra.

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

El archivo .htaccess es un archivo de configuración que utilizan los servidores web Apache. Piensa en él como un pequeño "guardia de seguridad" que se coloca en la puerta de tu servidor y que puede decidir quién entra y quién no.

Al modificar este archivo, puedes:

  • Restringir el acceso a carpetas específicas (como wp-admin).
  • Solicitar una contraseña adicional para entrar.
  • Bloquear direcciones IP sospechosas.
  • Redirigir visitantes a otras páginas.

En este caso, vamos a configurarlo para que, además de la contraseña de WordPress, se pida una contraseña adicional (a nivel de servidor) para acceder a cualquier archivo dentro de la carpeta wp-admin. Esto incluye bloquear wp-login, que es la página típica de inicio de sesión.


Requisitos previos antes de empezar

Antes de lanzarnos a modificar archivos, asegúrate de tener lo siguiente:

  1. Acceso a cPanel de tu hosting (normalmente en tudominio.com/cpanel).
  2. Acceso a un editor de archivos dentro de cPanel (puede ser el "Administrador de archivos").
  3. Una contraseña segura que quieras usar para esta capa extra de protección.
  4. Un navegador web actualizado (Chrome, Firefox, etc.).

[!WARNING]
IMPORTANTE: Si tu hosting no usa Apache (por ejemplo, si usa Nginx), este método puede no funcionar. En ese caso, consulta con tu proveedor de hosting o busca la opción de "protección por contraseña" en tu panel de control. Si tu panel es Syspanel (también conocido como HestiaCP), ten en cuenta que el acceso a este panel suele ser a través del puerto 2106 y la gestión de archivos se hace desde el administrador de archivos del propio panel.


Paso 1: Crear un archivo de contraseñas en cPanel

Lo primero que necesitamos es un archivo que contenga la contraseña cifrada. No podemos simplemente escribir la contraseña en texto plano, porque sería un riesgo de seguridad. Vamos a crearlo con una herramienta de cPanel.

  1. Inicia sesión en cPanel.
  2. Busca la sección "Seguridad" y haz clic en "Protección con contraseña" (Password Protection).
  3. Verás una lista de carpetas. Navega hasta la carpeta que contiene tu WordPress. Normalmente es public_html o el nombre de tu dominio dentro de public_html.
  4. Dentro de esa carpeta, busca la carpeta wp-admin. Si no la ves, es posible que tu WordPress esté instalado en una subcarpeta. En ese caso, navega hasta la ruta correcta.
  5. Una vez dentro de wp-admin, haz clic en el botón "Proteger esta carpeta" (o "Protect this folder").
  6. Se te pedirá que pongas un nombre para el "reino" (realm). Puedes poner algo como "Zona de administración" o simplemente "wp-admin".
  7. A continuación, crea un nombre de usuario y una contraseña. Esta será la contraseña que se pedirá además de la de WordPress.
  8. Haz clic en "Guardar".

[!INFO]
¿Qué hace exactamente esto? Lo que has hecho es crear un archivo llamado .htpasswd (normalmente en una ubicación privada del servidor) que contiene tu usuario y contraseña cifrada. También ha modificado el .htaccess de la carpeta wp-admin para que exija esa autenticación.


Paso 2: Verificar que el archivo .htaccess se ha modificado correctamente

Ahora vamos a asegurarnos de que todo se ha configurado bien. Vamos a echar un vistazo al archivo .htaccess de la carpeta wp-admin.

  1. Vuelve a la raíz de tu cuenta en cPanel.
  2. Abre el Administrador de archivos (File Manager).
  3. Navega hasta la carpeta wp-admin.
  4. Busca el archivo .htaccess. Si no lo ves, activa la opción de "Mostrar archivos ocultos" (puede ser un botón en la parte superior del administrador de archivos).
  5. Haz clic derecho sobre el archivo y selecciona "Editar".
  6. Deberías ver un contenido similar a este:
AuthType Basic
AuthName "Zona de administración"
AuthUserFile /home/tuusuario/.htpasswd
Require valid-user

Si ves esto, ¡perfecto! La protección está activa. Si no ves nada o el archivo está vacío, es posible que el paso anterior no se haya completado bien. Puedes continuar con el Paso 3 para hacerlo manualmente.


Paso 3: Configurar manualmente el .htaccess (método alternativo)

A veces, la herramienta de cPanel no funciona como esperamos o queremos un control más fino. En ese caso, podemos hacerlo manualmente. Sigue estos pasos:

  1. Crea un archivo de contraseñas con una herramienta como esta o usando el terminal de tu hosting (si tienes acceso SSH). Si usas la web, simplemente introduce tu usuario y contraseña y copia el resultado (tendrá el formato usuario:hash).
  2. Sube ese archivo a una carpeta segura. Lo ideal es que esté fuera del directorio público public_html. Si tu hosting no te deja, puedes ponerlo en una subcarpeta dentro de public_html pero con un nombre difícil de adivinar (por ejemplo, .configuracion_secreta).
  3. Ahora, ve al Administrador de archivos y navega a la carpeta wp-admin.
  4. Si no existe un archivo .htaccess, crea uno nuevo. Si existe, edítalo con el editor de texto.
  5. Añade el siguiente contenido:
AuthType Basic
AuthName "Acceso restringido a administradores"
AuthUserFile /ruta/absoluta/a/tu/archivo/.htpasswd
Require valid-user

[!WARNING]
MUY IMPORTANTE: La línea AuthUserFile debe contener la ruta absoluta a tu archivo .htpasswd. No sirve una ruta relativa. Si no sabes cuál es, puedes encontrarla en cPanel. En el Administrador de archivos, sube el archivo y haz clic derecho sobre él, luego selecciona "Editar" y al final de la ventana verás la ruta completa. Otra opción es crear un archivo PHP temporal con <?php echo __DIR__; ?> y subirlo a la misma carpeta, pero eso es más complejo.

  1. Guarda los cambios.

Paso 4: Probar que la protección funciona

Este es el momento de la verdad. Vamos a comprobar que todo funciona.

  1. Abre una ventana de incógnito en tu navegador (o prueba desde otro dispositivo).
  2. Escribe la URL de tu sitio seguido de /wp-admin (por ejemplo, tudominio.com/wp-admin).
  3. Deberías ver una ventana emergente del navegador pidiendo usuario y contraseña. Esto es la protección que acabamos de activar.
  4. Introduce el usuario y contraseña que creaste en el Paso 1.
  5. Si todo es correcto, después de esta pantalla verás la pantalla de inicio de sesión de WordPress normal.
  6. Si introduces mal la contraseña, el navegador te la volverá a pedir o mostrará un error 401.

[!TIP]
¿Quieres proteger también el archivo wp-login.php? Aunque la protección de la carpeta wp-admin ya bloquea el acceso a wp-login.php (porque está dentro de esa carpeta), algunos ataques intentan acceder directamente a /wp-login.php. Para mayor seguridad, puedes crear un archivo .htaccess en la raíz de WordPress con reglas específicas para bloquear el acceso directo a ese archivo. Pero eso es tema de otro artículo más avanzado.


Paso 5: Solución de problemas comunes

A veces las cosas no salen a la primera. Aquí tienes los problemas más habituales y cómo resolverlos.

Error 500 (Internal Server Error)

Esto suele ocurrir si has escrito mal una línea en el .htaccess o si la ruta del archivo .htpasswd es incorrecta.

  • Solución: Revisa el archivo .htaccess y asegúrate de que las líneas AuthType, AuthName, AuthUserFile y Require están bien escritas y en mayúsculas/minúsculas correctas.
  • Comprueba que la ruta en AuthUserFile es la correcta. Prueba a usar la ruta completa desde la raíz (por ejemplo, /home/tuusuario/.htpasswd).

La contraseña no se pide

Si entras directamente a wp-admin y no te pide contraseña, es posible que la protección no se haya aplicado a la carpeta correcta.

  • Solución: Verifica que el archivo .htaccess está dentro de la carpeta wp-admin y no en la raíz.
  • Asegúrate de que el archivo se llama exactamente .htaccess (con el punto al principio).
  • En algunos servidores, la protección por contraseña de cPanel guarda el archivo .htpasswd en una ruta especial que puede no ser la que has puesto. Revisa la configuración de cPanel para ver dónde lo ha creado.

No puedo acceder a mi sitio en absoluto

Si después de los cambios no puedes acceder ni siquiera a la parte pública de tu web, es que has roto algo en el .htaccess.

  • Solución: Entra a cPanel y usando el Administrador de archivos, navega a la carpeta wp-admin y renombra el archivo .htaccess a .htaccess.bak (o simplemente bórralo si tienes una copia). Esto desactivará la protección y tu web volverá a funcionar. Después, revisa el archivo y vuelve a intentarlo.

Consejos adicionales de seguridad WordPress

Proteger wp-admin es un gran paso, pero no deberías quedarte solo ahí. Aquí tienes otras recomendaciones rápidas:

  • Usa contraseñas largas y únicas para tu usuario de WordPress y para la capa extra de protección.
  • Cambia el nombre de usuario de administrador. Evita usar "admin".
  • Activa la autenticación de dos factores (2FA) en WordPress.
  • Limita los intentos de inicio de sesión con plugins como Wordfence o Limit Login Attempts.
  • Mantén WordPress y los plugins actualizados siempre.
  • Haz copias de seguridad periódicas.

Preguntas frecuentes (FAQ)

¿Puedo usar este método para proteger otras carpetas, como wp-includes?

Sí, el mismo método funciona para cualquier carpeta. Sin embargo, ten cuidado con carpetas que deben ser accesibles públicamente, ya que podrías romper la funcionalidad de tu web.

¿Qué pasa si mi hosting usa Nginx en lugar de Apache?

Este método no funcionará. Necesitarás usar la configuración de Nginx. Si tu hosting es Syspanel (HestiaCP), la configuración de Nginx se gestiona desde el panel (recuerda que el acceso es a través del puerto 2106). En ese caso, tendrás que editar la configuración del servidor o usar un plugin de seguridad de WordPress que ofrezca esta funcionalidad.

¿Es necesario proteger también wp-login.php?

Como hemos mencionado, al proteger la carpeta wp-admin, el archivo wp-login.php queda protegido indirectamente. Pero si quieres una capa extra, puedes añadir reglas específicas en el .htaccess de la raíz para bloquear el acceso directo a wp-login.php desde ciertas IPs o con autenticación adicional.

¿Puedo usar esto para bloquear el acceso desde países específicos?

No, esto es solo para autenticación. Para bloquear por país necesitarías módulos como mod_geoip o un servicio de firewall como Cloudflare.

Si olvido la contraseña de esta capa extra, ¿cómo la recupero?

No se puede recuperar, pero sí se puede restablecer. Solo tienes que acceder a cPanel, ir a "Protección con contraseña" y cambiar la contraseña de la carpeta wp-admin. Si lo hiciste manualmente, edita el archivo .htpasswd y genera un nuevo hash.


Conclusión

Proteger el panel de administración de WordPress con una contraseña adicional en cPanel es una medida sencilla pero extremadamente eficaz para aumentar la seguridad WordPress. Aunque no es infalible, añade una barrera más que disuadirá a la mayoría de los atacantes automatizados.

Recuerda que la seguridad es un proceso continuo y que ninguna medida es 100% efectiva por sí sola. Combina esta técnica con otras buenas prácticas (como las que te he mencionado) para mantener tu sitio lo más seguro posible.

Si has seguido todos los pasos, tu wp-admin ahora está protegido con un doble candado. ¡Enhorabuena! Ahora puedes dormir un poco más tranquilo sabiendo que has dificultado mucho la tarea a los ciberdelincuentes.

¿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