.htpasswd

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

.htpasswd — файл, содержащий пароли для доступа к ресурсу у веб-сервера Apache. Метод авторизации с использованием такого файла носит название базового (англ. basic authentication). Некоторые другие веб-серверы, например, nginx [1], также могут работать с этим файлом.

Название начинается с точки, так как точка в Unix-подобных операционных системах указывает на атрибут «скрытый». Кроме того, Apache не отдаёт по запросу файлы, имя которых начинается с точки, что позволяет размещать файл паролей внутри директорий, доступных анонимным пользователям.

Формат файла[править | править исходный текст]

Файл состоит из строк, каждая из которых соответствует паре логин/хеш пароля. Логин отделяется от хеша двоеточием. Пример содержимого файла .htpasswd.

gygtest:eCcls0kn3MEXs

Вместо пароля в файле сохраняется xеш, рассчитанный одним из следующих способов:

  • системная функция crypt
  • алгоритм MD5 (модифицированный в проекте Apache)
  • SHA

Функция crypt используется по умолчанию для всех операционных систем за исключением MS Windows и Transaction Processing Facility. Помимо перечисленных, есть ещё один вариант — когда пароль хранится в виде открытого текста и никак не защищается.

Для генерации данных для .htpasswd используется утилита htpasswd.

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

Утилита htpasswd[править | править исходный текст]

Для работы с файлом паролей служит утилита htpasswd, обычно входящая в состав дистрибутива веб-сервера Apache. Посредством неё производится создание файлов паролей, а также добавление новых записей, либо модификация существующих.

Ниже приведена строка для добавления нового пользователя ivan в уже существующий файл с именем .htpasswd. Если нужно создать новый файл, то добавьте ключ -c.

htpasswd /usr/local/www/data/.htpasswd ivan

См. также[править | править исходный текст]

Примечания[править | править исходный текст]