Seguridad y SSL

Excluir directorio o fichero al proteger un directorio con usuario y contraseña

Revisado el · accesos · contrasenas · htaccess

cPanel dispone la opción Privacidad del directorio que permite proteger un directorio con usuario y contraseña.

La utilidad de esta función va desde proteger el acceso a una web en desarrollo hasta, en el caso de WordPress, añadir una capa adicional de protección al directorio wp-admin.

Pero en ocasiones podemos necesitar excluir un fichero o directorio de esta protección, siguiendo el ejemplo de wp-admin, hay plugins y plantillas que realizan llamadas a admin-ajax.php y si protegemos el acceso a wp-admin estas llamadas fallarán,

Para ello podemos añadir una regla en el .htaccess que excluya solo el fichero exacto que deba ser público. En Apache 2.4 usa la sintaxis moderna Require y coloca la excepción en el .htaccess del directorio protegido, después de comprobar que ese endpoint aplica su propia autorización y validación:

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

En este ejemplo excluimos únicamente el fichero exacto admin-ajax.php de la autenticación básica. La excepción no evita que WordPress deba validar nonces, permisos y sesión para cada acción sensible.

No sustituyas el fichero por un patrón amplio ni excluyas directorios administrativos completos como wp-admin: dejarías sin esa capa de protección todos sus endpoints actuales y futuros. Si otro recurso necesita acceso público, crea una excepción independiente para su nombre exacto, prueba solo esa URL y confirma que el resto del directorio continúa solicitando autenticación.

También te puede ayudar

  1. Guía acerca de como son vulneradas las contraseñas de acceso
  2. Protección contra Leech
  3. Autenticación de dos factores en cPanel
  4. Cambiar contraseña de acceso a cPanel / FTP