Hemos escuchado que una buena práctica de seguridad es restablecer todo en el host virtual para no permitir nada y luego tener otra directiva para permitir un acceso específico, algo como esto:
<VirtualHost *:80>
DocumentRoot /home/example/public_html
<Directory />
AllowOverride None
Order Deny,Allow
Deny from all
</Directory>
<Directory /home/example/public_html >
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
Tiene sentido, pero no estamos seguros, por lo que nos encantaría recibir algunas opiniones sobre la mejor manera de configurar las cosas.
Respuesta1
Si realmente usa la <Directory />
directiva tal como está escrita allí, no cambiará nada para ese host virtual, sino que declarará las mismas anulaciones una y otra vez para el directorio /
.
Entonces esas opciones no hicieron nada, o en el mejor de los casos, solo <Directory />
se aplicó la última sección encontrada:
https://httpd.apache.org/docs/current/sections.html#merging
Si esa sección tiene el mismo aspecto para todos los hosts virtuales, eso no causará problemas, pero si algunos hosts virtuales difieren y la cantidad de hosts virtuales cambia con el tiempo, será confuso determinar cuál <Directory />
directiva se aplicó.
Quitaría la <Directory />
sección de todos los hosts virtuales y la declararía una vez, en una configuración global.