Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero
Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero

Options -Indexes en Apache: Qué es, para qué sirve y cómo configurarlo

Loading

Options -Indexes es una directiva de Apache que controla si el servidor debe mostrar un listado de archivos de un directorio cuando no existe un archivo índice (como index.html o index.php).

Sin esta configuración, si un usuario accede a un directorio sin índice, Apache muestra automáticamente todos los archivos contenidos, lo que representa un riesgo de seguridad al exponer información sensible.

Qué hace Options -Indexes

  • Options -Indexes desactiva la posibilidad de listar los archivos de un directorio.
  • Cuando un usuario intenta acceder a un directorio sin archivo índice, Apache devuelve un error 403 Forbidden en lugar de mostrar el contenido.
  • Es especialmente importante en entornos de producción y para aplicaciones web que contienen configuraciones o datos sensibles.

Cómo habilitar Options -Indexes

Hay dos formas principales de aplicar esta directiva: en la configuración de Apache o dentro de un archivo .htaccess.

Dentro del bloque en Apache

Este es el método recomendado, porque aplica la directiva a nivel de servidor y no depende de .htaccess.

Ejemplo de VirtualHost genérico:


    ServerName ejemplo.midominio.com
    DocumentRoot /var/www/miapp

    
        AllowOverride All
        Require all granted
        Options -Indexes
    

    ErrorLog ${APACHE_LOG_DIR}/miapp_error.log
    CustomLog ${APACHE_LOG_DIR}/miapp_access.log combined

Explicación:

  • AllowOverride All → permite que Apache lea reglas de .htaccess.
  • Require all granted → da acceso al directorio desde el navegador.
  • Options -Indexes → bloquea el listado de archivos.

Luego recarga Apache para aplicar los cambios:

sudo systemctl reload apache2

Dentro de un archivo .htaccess

Si no puedes modificar la configuración principal de Apache, puedes ponerlo en un .htaccess en el directorio que quieras proteger:

# /var/www/miapp/.htaccess
Options -Indexes

Notas importantes:

  • Funciona solo si AllowOverride All (o al menos Options) está activo en Apache.
  • Aplica solo al directorio donde se encuentra el .htaccess y sus subdirectorios.
  • Puede combinarse con otras reglas de seguridad como restricciones de acceso o redirecciones.

Verificación

Para probar que Options -Indexes funciona:

  1. Asegúrate de que el directorio no tenga un archivo index.html ni index.php.
  2. Intenta acceder al directorio desde el navegador:
http://tu-servidor/miapp/
  • Si muestra 403 Forbidden → la configuración funciona
  • Si lista los archivos → Apache no está leyendo la directiva

Buenas prácticas

  • Aplica Options -Indexes en los directorios que contengan archivos sensibles, como configuraciones o datos de la aplicación.
  • Prefiere configurarlo en VirtualHost o configuración principal de Apache para producción.
  • Combínalo con otras medidas de seguridad: .htaccess, permisos de archivo correctos y restricciones de acceso a directorios críticos.

Conclusión

Options -Indexes es una directiva simple pero fundamental para proteger la información de tus aplicaciones web.

  • Bloquea el listado de archivos de directorios sin índice.
  • Puede aplicarse en .htaccess o en la configuración de Apache.
  • Es especialmente recomendable en entornos de producción para evitar exposición accidental de datos sensibles.

Clave: aplicarlo siempre que haya directorios accesibles al público y que no contengan un archivo índice.

You may also like...