Модуль http_access

Модуль http_access#

Модуль позволяет ограничить доступ для определенных адресов клиентов.

Ограничить доступ можно также по паролю или по результату подзапроса. Одновременное ограничение доступа по адресу и паролю управляется директивой satisfy.

Пример конфигурации#

 location / {
   deny  192.168.1.1;
   allow 192.168.1.0/24;
   allow 10.1.1.0/16;
   allow 2001:0db8::/32;
   deny  all;
}

Правила проверяются в порядке их записи до первого соответствия. В данном примере доступ разрешен только для IPv4-сетей 10.1.1.0/16 и 192.168.1.0/24, кроме адреса 192.168.1.1, и для IPv6-сети 2001:0db8::/32. Если правил много, то лучше воспользоваться переменными модуля http_geo.

Директивы#

allow#

Синтаксис:

allow адрес | CIDR | unix: | all;

Умолчание:

Контекст:

http, server, location, limit_except

Разрешает доступ для указанной сети или адреса. Если указано специальное значение unix:, разрешает доступ для всех UNIX-сокетов.

deny#

Синтаксис:

deny адрес | CIDR | unix: | all;

Умолчание:

Контекст:

http, server, location, limit_except

Запрещает доступ для указанной сети или адреса. Если указано специальное значение unix:, запрещает доступ для всех UNIX-сокетов.