Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практическая работа 4 - Denwer.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
121.34 Кб
Скачать

1.4Права доступа к файлам и каталогам.

Из соображений безопасности нам необходимо для любого файла или каталога, используемого для хранения страничек или CGI-программ, установить определенный набор прав. Но вначале рассмотрим, каким же образом нам задать папку или файл(ы), которым мы присваиваем права. Делается это при помощи одной из следующих конструкций:

Для каталога:

<Directory directory>

Здесь перечисляются все директивы, управляющие доступом и опциями каталога

</Directory>

Для файла(ов):

<Files filename>

Здесь перечисляются все директивы, управляющие доступом к файлу(ам)

</Files>

Вместо directory и filename подставляются нужные значения. Возможно использование регулярных выражений, что позволяет задавать права для целой группы файлов и/или каталогов.

Права, определенные для каталога, распространяются и на все подкаталоги, входящие в него, если только для какого-нибудь из подкаталогов права не были переопределены. Сейчас мы рассматриваем способ определения прав в основном конфигурационном файле, но для тех же целей можно использовать файлы (секции ) виртуальных хостов и локальные файлы .htaccess, которые размещаются в той папке, для которой требуется ограничить доступ. В ряде случаев это гораздо удобнее. Синтаксис написания команд в файле .htaccess полностью аналогичен синтаксису команд в файле httpd.conf.

Важно отметить, что конфигурирование поведения web-сервера при помощи .htaccess возможно только в случае, если это разрешено в правах вышестоящего каталога (см AllowOverride). Основные директивы, используемые для определения прав:

Options option_list - директива, определяющая дополнительные опции для конкретного каталога. Опции отделяются друг от друга пробелами. Основные из них следующие:

  • None - дополнительные опции для данного каталога не определены

  • All - определены все возможные опции, за исключением MultiViews

  • Indexes - опция, позволяющая использовать файлы по умолчанию - при неполном наборе адреса. Список файлов по умолчанию задаются директивой DirectoryIndex, которая была описана в этой статье несколько выше. При отсутствии в данном каталоге файла по умолчанию Apache выдаст броузеру содержимое каталога.

  • Includes - опция, относящаяся к функционированию SSI и разрешающая использовать директиву Include. Для полноценного функционирования SSI опция должна быть включена.

  • IncludesNOEXEC - опция, подобная предыдущей, но запрещающая использовать во включениях SSI-команды запуска CGI-скрипта <!--#exec script.pl --> и <!--#include script.pl -->

  • ExecCGI - опция, разрешающая в данном каталоге запуск CGI-программ.

  • FollowSymLinks - опция, позволяющая Apache переходить по символьным ссылкам в системах Unix. То есть страничка может находиться вне основного дерева, определенного для хранения html-документов.

AllowOverride - директива, разрешающая переопределять параметры доступа для нижележащих каталогов. После данной команды должен быть указан список директив, разрешенных к переопределению. Например, AllowOverride All - разрешает переопределение любых прав, AllowOverride Options - разрешает переопределение опций для каталога, AllowOverride None - запрещает переопределение прав.

Order allow, deny - порядок наложения прав доступа к файлу или каталогу с определенных IP-адресов или доменных имен. Может использоваться маска для отсеивания целых сегментов сети. В данном случае вначале определяются сайты, доступ к которым разрешен, а потом те, к которым запрещен. В случае команды Order deny, allow - все наоборот.

Allow from - список IP-адресов или доменных имен, доступ с которых разрешен. Может быть использована маска - для разрешения доступа к сайту целой группе доменов. Например, Allow from .com - разрешает доступ со всех доменов, имеющих окончание .com. Allow from all - разрешает доступ к сайту из любой точки интернета.

Deny from - список IP-адресов или доменных имен, доступ с которых запрещен. Так же, как и в предыдущем случае, может быть указана группа доменов или маска IP-адресов.