Acerca del control de acceso al servidor Apache

  
        

El control de acceso de Apache se refiere a cualquier forma de control de acceso de cualquier recurso.

Primero, control basado en host o dirección IP

Este control de acceso se basa en el nombre de host o la dirección IP del visitante, mediante el uso de las instrucciones Denegar y Permitir para permitir o prohibir el acceso a un host Nuestros recursos de servidor. Por lo general, la directiva Orden también se usa en conjunto para definir el orden en el que funcionan las directivas Denegar y Permitir. Si no usa la directiva de orden, el orden predeterminado es Denegar, Permitir, que es equivalente a Denegar orden, Permitir.

La directiva Order funciona junto con la directiva Allow, Deny para implementar un sistema de control de tres pasos.

Paso 1: De acuerdo con el orden de la Orden, aplique todos los comandos Permitir o Denegar en el orden a la solicitud actual, es decir, si es Orden permitir, denegar, entonces el primer paso es colocar todos los La directiva Permitir se aplica al acceso actual, si hay una coincidencia, entonces se permite el acceso; si no hay coincidencia con una directiva Permitir, entonces el acceso está prohibido.

Paso 2: Todas las instrucciones restantes son todas La declaración coincide con la solicitud actual, y si hay una coincidencia, se ejecuta el control de acceso correspondiente.

Paso 3: Si la solicitud actual no coincide con ninguno de los dos primeros pasos, se ejecuta la siguiente instrucción en la instrucción de Orden.

A continuación, un ejemplo para comprender:

Haga que los recursos en el directorio especificado solo tengan acceso local

 < Directorio " /server " > Permitir pedido, denegar Permitir desde 127.0.0.1 < /Directory > Paso 1: el acceso local coincide con el comando Permitir desde 127.0.0.1, por lo que está permitido; otros hosts no coinciden con ninguno de los comandos Permitir, por lo que el acceso está prohibido; 

Paso 2: Todos los accesos no coinciden con la instrucción de denegación.

Paso 3: No hay acceso a ninguna instrucción, es decir, no es un acceso local. Siga las instrucciones de la Orden para ejecutar las siguientes instrucciones de denegación. Por lo tanto, el acceso está prohibido;

En segundo lugar, el control de acceso según las variables de entorno

Este método puede implementarse mediante Permitir desde env = o Denegar desde env = sintaxis, por ejemplo, solo se permite el navegador Firefox. Acceso del cliente:

 < Directory " /server " > SetEnvIf User-Agent &Firefox " ff = 1 Permitir pedido, denegar Permitir desde env = ff < /Directory > Control de acceso con mod_rewrite 

Con el indicador [F] de la directiva mod_rewrite, el control de acceso se puede implementar en un recurso en función de cualquier criterio.

Por ejemplo, quiero acceder a cualquier recurso de 8 am a 6 pm, puedo hacer esto:

 RewriteEngine OnRewriteCond% {TIME_HOUR} > 20 [O] RewriteCond% { TIME_HOUR} < 07RewriteRule ^ /fridge - [F] En este caso, volverá a 403 después de las 8:00 de la tarde hasta las 7 am.
						
Copyright © Conocimiento de Windows All Rights Reserved