Иллюстрированный самоучитель по Linux

Защита каталогов посредством управления доступом

Как было указано в параграфе о разрешении HTML-каталога, существует возможность установить управление доступом для каждого каталога отдельно. Обычно это делается при помощи файла .htaccess в том каталоге, который надо защитить. В данный файл помещаются необходимые команды конфигурирования.

Для управления доступом в этом файле используются следующие основные команды:

  • AuthUserFile
  • AuthGroupFile
  • AuthName
  • AuthType
  • require
  • order
  • deny
  • allow

AuthUserFile и AuthGroupFile

Команды AuthUserFile и AuthGroupFile позволяют указать расположение файлов пользователей и групп. В нашем примере эти команды следующие:

AuthUserFile /etc/httpd/conf/users
AuthGroupFile /etc/httpd/conf/groups

Эти команды очень важны: без них сервер не будет знать, где искать пользователей и их пароли.

AuthName

AuthName используется для указания домена аутентификации. Это подсказка пользователям, чтобы они знали, как вводить имя и пароль. Например, AuthName Authors Only отображает пользователю подсказку Authors Only при запросе имени и пароля.

AuthType

AuthType предназначена для указания типа аутентификации, используемого для доступа к Web-страницам в перечисленных каталогах. Поскольку единственная доступная для AuthType опция basic, эта директива мало влияет на функционирование текущей версии Apache.

Require

Команда require используется при ограничении доступа пользователям и группам. Команда может использоваться для ограничения доступа пользователей, перечисленных в файле паролей, перечисленных в команде пользователей или для всех перечисленных в команде групп.

Для ограничения доступа любого пользователя, упомянутого в файле паролей, используется следующая команда:

require valid-user

Для ограничения доступа конкретных пользователей используется формат:

require user username1 username2 username3…

Для ограничения доступа членам групп используется строка:

require group groupname1 groupname2 grouрname3…

Order

Команда order используется в сочетании с элементами deny и allow для управления доступом на уровне хостов, а не пользователей. Используя order, deny и allow можно разрешить доступ только конкретным хостам, задав их IP-адреса или имена.

Команда order указывает порядок применения команд deny и allow. Например, в команде order allow,deny вначале выполняется команда allow, и если хост клиента не соответствует условиям команды allow, то выполняется команда deny. Аналогично, order deny, allow изменяет порядок, выполняя вначале команду deny.

Deny

Команда deny указывает, каким хостам запрещен доступ к каталогу. Возможны значения all, частичное имя хоста и частичный или полный IP-адрес. Например, deny from all означает, что всем хостам запрещен доступ. Аналогично, deny from.juxta.com запрещает доступ всем хостам домена juxta.com. При использовании IP-адресов формат такой же:

deny from 194.148.43.195

Команда запрещает доступ указанному хосту.

Allow

Команда allow выполняет обратную по сравнению с deny функцию: указывает, каким хостам разрешен доступ к данному каталогу. Она имеет те же параметры, что и команда deny.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.