Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Apache: доступ по паролю 
:(
    Опции темы
Wowa
Дата 11.11.2004, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 2
Всего: 290



Директива <Auth*>

Сервер Apache предоставляет возможность реализации доступа к отдельным каталогам по паролю. Это осуществляется при помощи установок в глобальном файле конфигурации, либо в пользовательских файлах .htaccess . Чтобы защитить каталог паролем, необходимо задать значения в трех различных директивах: AuthName , AuthType и AuthUserFile . Использование четвертой директивы, AuthGroupFile , не является обязательным. 

Директива AuthName должна представлять собой короткую строку, в которой выводится сообщение для пользователя. Формат второй парольной директивы, AuthType , еще проще. В директиве AuthType задается метод идентификации пользователя, используемый сервером, разрешается указывать только два значения, Basic и Digest . Если установить значение Basic , то будет использоваться стандартный для UNIX механизм парольной защиты, а также директива AuthUserFile . Если задать в директиве AuthType значение Digest , то будет задействована более надежная система шифрования, алгоритм MD5. На большинстве Web-серверов не стоит использовать установку Digest , поскольку эта возможность пока не поддерживается большинством броузеров. В директиве AuthUserFile , используемой только при выбранном методе Basic, задается полный путь в файловой системе сервера Apache к файлу паролей пользователей для данного каталога. Для создания файла паролей применяется программа htpasswd . Например, новый файл паролей для пользователя new_user создается при помощи следующей команды: 

Код

htpasswd -с /html/secured/.htpasswd new_user
Adding password for new_user.
New password: 
Re-type new password:


Опция -с указывает программе htpasswd, что следует создать новый файл паролей. Если эта опция опущена, программа пытается отредактировать существующий файл паролей. После того как задан требуемый метод идентификации пользователей, можно воспользоваться для парольной защиты каталога еще одной директивой, AuthGroupFile . Файл, указанный в этой директиве, должен содержать список групп и пользователей, перечисленных в файле AuthUserFile , являющихся членами этих групп, например: 

Код

group: new_user qwerty asdf zxcvb 


Такая строка создает на сервере Apache парольную группу group с 4 пользователями. 

Директива <Limit> 
Данная директива используется для наложения ограничений доступа к файлам в каталоге по протоколу HTTP. Директиву <Limit> можно использовать в пользовательском файле .htaccess (если этому не препятствует значение, указанное Вашим хостером в файлах глобальной настройки в директиве AllowOverride ). Директива <Limit> принимает в качестве аргументов один или несколько методов HTTP, к которым применимы следующие четыре директивы, используемые внутри секции <Limit>: 

Код

deny (отказать), allow (разрешить), order (порядок) и require (потребовать). 


Директивы deny и allow дают возможность задавать, каким компьютерам и доменам разрешен доступ к данным каталогам. Синтаксис этих директив одинаков, за каждой из них следует слово from и список компьютеров, которым сервер должен запретить или, наоборот, разрешить доступ к каталогу. В этот список можно включать: 
  • названия доменов, например baks.com или top.org. 
  • названия хостов, например first.baks.com или only.top.org. 
  • IP-адреса хостов, например 165.23.42.235. 
  • IP-адреса доменов, например 125.23.42.32 
  • слово all, означающее все хосты.
В директиве order задается порядок, в котором сервер Apache рассматривает директивы deny и allow . Существуют три допустимых значения: 
  • deny,allow. Сначала сервер рассматривает директиву deny, а затем allow. 
  • allow,deny. Сначала сервер рассматривает директиву allow, а затем deny. 
  • mutual-failure. Сервер отказывает в доступе всем компьютерам, явно не указанным в списке allow. 
  • require. Ее можно использовать для установления парольной защиты каталога. За названием директивы должен следовать список элементов. Этими элементами могут служить имена пользователей или названия групп, заданные в директивах AuthUserFile или AuthGroupFile . Можно также воспользоваться ключевым словом valid-user , указывающим серверу, что любому пользователю, имя которого присутствует в директиве AuthUserFile , должен быть предоставлен доступ в случае ввода им правильного пароля.
Ниже приведен пример файла .htaccess , разрешающего доступ только авторизованным пользователям домена one.info: 

Код

AuthUserFile /home/users/baks/www/secure/.htpasswd
AuthName SecurityTest
AuthType Basic
<Limit GET>
order deny,allow
allow from one.info
require valid-user
</Limit>


Сервер вычисляет значение директивы <Limit> в следующей последовательности:
  • Запрещает любой доступ, кроме указанного в директиве allow. 
  • Разрешает доступ пользователям из домена one.info. 
  • Требует от пользователей из этого домена ввода имени и пароля, хранящихся в файле /home/users/baks/www/secure/.htpasswd
Если запрос прошел все эти проверки, то по нему будут предоставлены файлы из данного каталога. 

PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема »


 




[ Время генерации скрипта: 0.1036 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.