Estoy ejecutando CentOS 5.5 con el stock Apache httpd-2.2.3.
He habilitado mod_status en Location / server-status. Me gustaría permitir el acceso a esta ubicación única de la siguiente manera:
- Negar todo
- Permitir desde la subred 192.168.16.0/24
- Negar desde un IP 192.168.16.100, que está dentro de la subred 192.168.16.0/24.
1 y 2 son fáciles. Sin embargo, dado que "Permitir desde 192.168.16.0/24", ¿es posible Denegar desde 192.168.16.100?
Intenté agregar una declaración de denegación para 192.168.16.100 pero no funciona. Aquí está la configuración relevante:
<Location /server-status>
SetHandler server-status
Order Allow,Deny
Deny from all
Deny from 192.168.16.100 # This does not deny access from 192.168.16.100
Allow from 192.168.16.0/24
</Location>
O:
<Location /server-status>
SetHandler server-status
Order Allow,Deny
Deny from all
Deny from 192.168.16.100 # This does not deny access from 192.168.16.100
Allow from 192.168.16.0/24
</Location>
Sin embargo, esto no impide el acceso a esta página en particular, como se demuestra en los registros de acceso:
www.example.org 192.168.16.100 - - [11/Mar/2011:16:01:14 -0800] "GET /server-status HTTP/1.1" 200 9966 "-" "
De acuerdo con el manual de mod_authz_host :
Permiten negar
Primero, se evalúan todas las directivas Permitir; al menos uno debe coincidir, o la solicitud es rechazada. A continuación, se evalúan todas las directivas de denegación. Si alguno coincide, la solicitud es rechazada
La dirección IP coincide con la directiva Denegar, ¿no debería rechazarse la solicitud?
De acuerdo con la tabla en la página mod_authz_host, esta dirección IP debería "coincidir con Permitir y Denegar" y, por lo tanto, debería aplicarse la regla "Controles de coincidencia final: Denegado".
Coincidir Permitir, Negar resultado Negar, Permitir resultado Coincidencia Permitir solo Solicitud permitida Solicitud permitida Solo denegar coincidencia Solicitud denegada Solicitud denegada Sin coincidencia Predeterminado a segunda directiva: denegado Predeterminado a segunda directiva: permitido Coincide con Permitir y denegar Controles de coincidencia final: denegados Controles de coincidencia final: permitidos
Allow from 192.168.16.0/24
. Según tengo entendido la documentación, cualquier IP solicitante en la red 192.168.16.0/24 coincidirá con esta declaración Permitir, la solicitud está permitida.