Home (Главная)

Page 500 - Страница 500
Page 500
background image

Глава 26. Конфигурирование Web-сервера    503

 

'Restricted Area' at www.somewhere.com" — "Введите  пароль  для  'Защищенной 
области'  на  сайте www.somewhere.com"), помогая  пользователю  определить, 
какое имя пользователя и пароль требуется ввести. Название может быть лю-
бым. Если оно содержит пробелы, его следует заключить в кавычки. 

•  AuthUserFile, AuthDBUserFile и AuthDBMUserFile. Одна из этих директива дол- 

жна быть обязательно указана, поскольку она задает местонахождение базы 
данных имен пользователей/паролей для защищенной области. Каждая область 
может иметь отдельную базу данных, если нужно. Если это обычный тексто- 
вый файл, указывается директива AuthUserFile, если он имеет формат db или 
dbm, ускоряющий поиск (весьма желательно при большом количестве запи- 
сей), — директива AuthDBUserFile или AuthDBMUserFile, соответственно. О 
том, как создать пользовательскую базу данных в формате текстового файла 
или db/dbm, рассказано далее. 

•  AuthGroupFile, AuthDBGroupFile и AuthDBMGroupFile. Эти директивы работают 

так же,  как AuthUserFile.  В них заданы группы пользователей из файла 
AuthUserFile, что позволяет ограничивать доступ не только отдельным пользо- 
вателям, а и целым группам. Эта директива не является обязательной, но если 
она используется, файл AuthUserFile также необходим, чтобы пользователи 
распознавались, как принадлежащие к перечисленным группам. 

•  Require. Эта директива указывает Apache, как аутентифицировать пользовате- 

ля. Аргументом может быть valid-user (имя пользователя из файла AuthUserFile; 
при этом требуется ввод корректного пароля), user <username> <username>... 
(список пользователей) или group <groupname> <groupname>... (список групп). 

Добавление пользователей 

Когда блок контроля доступа уже настроен и команда apachectl configtest сообща-

ет о корректности конфигурации, в систему можно добавить учетные записи пользо-
вателей Apache. Вначале рассмотрим, как  создать  базу  данных в  виде обычного  тек-
стового  файла,  указываемого  как  аргумент  директивы  AuthUserFile.  Для  этого 
применяется  команда  htpasswd,  которая  в FreeBSD расположена  в  каталоге /usr/ 
local/bin и поэтому автоматически включена в пути поиска: 

• htpasswd -с /usr/local/www/.htpasswd frank

 

Ключ -с обязателен только при первом запуске. Он указывает команде htpasswd, 

что файл нужно создать, поскольку он еще не существует. Затем команда запраши-
вает  пароль  пользователя,  который  требуется  ввести,  как  обычно,  дважды. Если  ко-
манда  используется  в  сценарии,  ключ  -Ь  позволяет  указать  пароль  во  втором  аргу-
менте: 

•  htpasswd -b /usr/local/www/.htpasswd joe Prld3L4ndz

 

Следующей  полезной  опцией  является  -т.  Она  указывает  htpasswd  использовать 

алгоритм шифрования MD5, а не системную процедуру crypt(), обеспечивая тем самым 
более  серьезную  защиту.  О  других  опциях  рассказано  на  странице  справочного  ру-
ководства man apachectl.