Потребителски вход

Запомни ме | Регистрация
Постинг
10.01.2011 11:45 - Apache mod_access
Автор: ritter Категория: Технологии   
Прочетен: 1064 Коментари: 0 Гласове:
0



Apache Module mod_access

 

Интродукция:

mod_access както и името му посочва, предоставя контрол на достъпа за документи т.е. позволяват или ограничават досъпа до ресурси на базата на клиентското хост име, на базата на IP адрес или конкретен мрежови адрес. Този модул е базовия за контролиране на досъпа за Apache.

 

Описание:

 

Предоставя възможност за контролиране на достъпа, базирана на клиентския hostname, IP адрес и други характеристики на клиентското допитване.

Модул: access_module

Source файл: mod_access.c

Съвместимост: Достъпна само за версиите преди 2.1

 

Общо

 

Всички директиви, подържани от mod_access се използват в , и секциите, както и в .htaccess файловете, за да контролират достъпа до определени части на сървъра. Достъпа може да се осъществява на базата на клиентско име, IP адрес и други характеристики на на клиентския request, които се долавят от променливите на средата(enviroment variables). Директивите Позволение(Allow) и Отказ(Deny) се използват, за да специфицират на кои клиенти е позволен достъпа и кои не е позволен. Докато директивите за позволение инициализират стойността по подразбиране за достъп и конфигурират как директивите за достъп и за отказ да комуникират една с друга.

Както правилата за хост-базиран достъп, така и системите за идентификация с парола могат да бъдат имплементирани едновременно. В този случей, директивата Satisfy се използва за определяне на начините, по които две множества от ограничения могат да си взаимодействат.

По правило, директивите за достъп се реализират от всички методи за достъп(GET, PUT, POST). Това е желано поведения в повечето случеи. Възможно е да се забранят някои методи, докато други останат незасегнати, посредством директиви в файла.

 

Директива за достъп

 

Описание: Контролира кой хост може да достъпва обсега на даден сървър

Синтаксис: Позволява от всички |host|env=env-variable[host|env=env-variable]

Контекст: directory, .htaccess

Предефиниране: ограничено

Статус: Base

Модул: mod_access

 

Директивата за достъп Allow късае кои хостове имат достъп до обхвата на сървъра. Достъпа може да се контролира от името на хоста, IP адреса IP обхвата, както и много други характеристики на клиентското допитване, уловени от променливите на средата. Аргумента на тази директива може да има три различни форми. Ако Allow from all е посочена, тогава на всички хостове е разрешен достъпа. За да се позволи само на определении хостове да достъпват до сървъра се използват следните формати:

 

-Частично домейн име:

Пример:

Allow from apache.org

Allow from .net example.edu

Хостовете, които отговарят на този шаблон, получават достъп. Посоченият шаблон ще допусне foo.apache.org, но няма да допусне fooapache.org.

 

-Пълен IP адрес:

Пример:

Allow from 10.1.2.3

Allow from 192.168.1.104 192.168.1.205

Позволява достъп до посочения адрес

 

Част от адреса(subnet):

Пример:

 

Allow from 10.1

Allow from 10 172.20 192.168.2

Използва се главно за subnet restriction

 

Двойка адрес/маска:

Пример:

 

Allow from 10.1.0.0/255.255.0.0

 

CIDR спецификация:

 

Пример:

Allow from 10.1.0.0/16

 

Директива за отказ

 

Синтаксис: Отказа се осъществява от all|host|env=env-variable [host|env=env-variable]

Контекст: directory, .htaccess

Предефиниране: ограничено

Статус: Base

Модул: mod_access

 

Тази директива позволява, достъпът до сървъра да се ограничава на базата на име на хоста, IP адрес или променлива на средата. Аргументите на директивата за отказ са идентични с тези на директивата за достъп.

 

Директива за наредба

 

Синтаксис: подрежда се с ordering

По подразбиране: Order, Deny, Allow

Контекст: directory, .htaccess

Предефиниране: ограничено

Статус: Base

Модул: mod_access

 

Директивата за наредба, наред с директивите за достъп и отказ , контролира тристъпковата система за достъп.

 

Примери:

 

В следвашия пример всички хостове в apache.org домейна са с разрешен достъп, а всички останали със забранен.

 

Order Deny,Allow
Deny from all
Allow from apache.org

 

В следващия пример всички хостове от apache.org са с разрешен достъп, с изключение на хостовете от събдомейна foo.apache.org.

 

Order Allow,Deny
Allow from apache.org
Deny from foo.apache.org

 

Следващите команди ще забранят достъпа от директорията /www:

 


  Order Allow,Deny

 

Допълнително:

 

В текущата версия на Apache 2.2 се ползва mod_authz_host. В подобрението се включва и подръжка и на Ipv6 адреси. В примера се позволява достъпа от конкретен адрес и от подмрежа.

 

Allow from 2001:db8::a00:20ff:fea7:ccea
Allow from 2001:db8::a00:20ff:fea7:ccea/10



Тагове:   apache,


Гласувай:
0



Няма коментари
Търсене

За този блог
Автор: ritter
Категория: Технологии
Прочетен: 35046
Постинги: 15
Коментари: 4
Гласове: 28
Архив
Календар
«  Април, 2024  
ПВСЧПСН
1234567
891011121314
15161718192021
22232425262728
2930