Cómo deshabilitar la lista de directorios en Apache

Apache la lista de directorios está habilitada de forma predeterminada, lo que permite que cualquier persona descubra y acceda fácilmente a todos los archivos y carpetas en un servidor web. Esto puede causar problemas de seguridad para su sitio web. Aquí se explica cómo deshabilitar Apache lista de directorios para su servidor web para que nadie pueda ver la estructura de carpetas de su sitio web.

Cómo deshabilitar la lista de directorios en Apache

Veamos cómo deshabilitar la exploración de directorios. Supongamos que tiene un directorio de sitios web (por ejemplo, /archivos) en su Apache servidor (por ejemplo, /var/www/html/files) pero no tiene un archivo index.html en él. Cuando un usuario accede a esta carpeta (por ejemplo, https://www.example.con/ archivos ), Apache mostrará todos los archivos y subcarpetas en /product, incluidas las carpetas principales. Aquí hay un example.

De modo que cualquier usuario puede encontrar fácilmente la estructura completa de su sitio web sin ningún permiso, simplemente visitando https://www.googlesyndication.com/files y explotarlo en su beneficio. Aquí se explica cómo deshabilitar Apache lista de directorios. Hay 2 formas de deshabilitar la lista del contenido del directorio en apache: utilizando hosts virtuales y el archivo .htaccess. Veremos estos dos métodos. Después de ocultar el índice del sitio web en Apachees posible que desee utilizar un software de generación de informes para monitorear las métricas clave sobre su sitio web/aplicación, como suscripciones, tráfico, ventas, ingresos, etc. mediante paneles y gráficos, para garantizar que todo funcione bien y detectar problemas rápidamente.

como deshabilitar Apache Listado de directorios usando Virtual Host

Si ha configurado un archivo de host virtual (p. ej., /etc/apache2/sites-disponible/ sitio web.conf ), entonces simplemente puede abrirlo con un editor

                      $ sudo vim /etc/apache2/sites-available/
                      
                        website.conf
                      
                    

y agregue las siguientes líneas en él. Asegúrese de mencionar la ruta correcta al directorio de su sitio web en la etiqueta .

                      <Directory /var/www/files>
   Options -Indexes
</Directory>

                    

En la configuración anterior, las Opciones – Índices se desactivarán Apache listado de directorio para carpeta /var/www/html/ archivos . Si desea detener la lista de directorios para una carpeta diferente, simplemente cambie la ruta de esta carpeta a otra. Si cambia la ruta de la carpeta a la raíz del sitio web (por ejemplo, /www/var/html), deshabilitará la lista de directorios globalmente para todo su sitio web.

Lectura adicional: Cómo habilitar mod_ssl en Apache

como deshabilitar Apache Listado de directorio usando .htaccess

Abierto Apache archivo de configuración principal

                      $ sudo vi /etc/apache2/apache2.conf #On 
                      
                        Debian
                      
                      /
                      
                        Ubuntu
                      
                       systems
$ sudo vi /etc/httpd/conf/httpd.conf #On RHEL/
                      
                        CentOS
                      
                       systems

                    

Busque la sección AllowOverride y establézcala en AllowOverride All

                      <Directory /var/www/html/>
   Options Indexes FollowSymLinks
   AllowOverride All
</Directory>

                    

Abra su archivo .htaccess en /www/var/html/.htaccess. Si no existe, cree un nuevo archivo en blanco con el nombre de archivo .htaccess

Agregue las siguientes líneas en él. Asegúrese de mencionar la ruta correcta al directorio de su sitio web en la etiqueta .

                      <Directory /var/www/files>
   Options -Indexes
</Directory>

                    

En la configuración anterior, las Opciones – Índices se desactivarán Apache listado de directorio para carpeta /var/www/html/ archivos . Si desea detener la lista de directorios para una carpeta diferente, simplemente cambie la ruta de esta carpeta a otra. Si cambia la ruta de la carpeta a la raíz del sitio web (por ejemplo, /www/var/html), deshabilitará la lista de directorios globalmente para todo su sitio web.

Lectura extra: Cómo configurar Apache caché en Ubuntu

Reiniciar Apache Servidor web

En ambos casos, reinicie Apache servidor web para aplicar los cambios.

                      
                        -------- On SystemD based systems --------
                      
                       
$ sudo systemctl restart apache2
$ sudo systemctl restart httpd


                      
                        -------- On SysVInit based systems --------
                      
                       
$ sudo /etc/init.d/apache2 restart 
$ sudo /etc/init.d/httpd restart
                    

Ahora, cuando intente acceder a la carpeta a través del navegador, obtendrá una respuesta “403: Acceso prohibido”. De esta manera puede proteger el directorio web en Apache.

Por cierto, si desea crear gráficos y paneles para monitorear su negocio o sitio web, puede probar CodePre. Ofrecemos una prueba gratuita de 14 días.

milímetro

Acerca de CodePre

CodePre es una poderosa plataforma de informes y tableros para pequeñas y medianas empresas. Cree paneles, gráficos e informes para su negocio en minutos. Obtenga información de los datos rápidamente. ¡Pruébalo gratis hoy!

Related Posts