Что за содержимое файла .htpasswd?
.htpasswd – это текстовый файл, содержащий текст ASCII.
Структура .htpaswd очень проста, там каждая строка хранит имя пользователя и связанные с ним пароли.
Имя пользователя и пароль разделяются знаком двоеточия.
Кроме того, пароль хранится в зашифрованном виде, а не в формате открытого текста, чтобы обеспечить безопасность пароля.
Ниже мы увидим, что есть 3 строки, в которых пользователи ismail, ahmet, ali настроены с их зашифрованным паролем.
ismail:$apr1$/5EzxSg3$SXVemrqNIb/TrKvJv4Z5r0
ahmet:$apr1$cEKbD/Wa$M012WG8Txqp/dhso8.znk0
ali:$apr1$o/t1Efly$E7798GsGjMWoNUpqmG4l60
Как создать файл .httpaswd?
Файл .htpasswd можно создать с помощью команды htpasswd, команды touch или текстового редактора.
Но наиболее подходящий способ – это использовать команду httpasswd.
Также содержимое файла .htpasswd можно редактировать с помощью команды htpasswd.
Далее мы создадим файл .htpasswd с помощью команды htpasswd, где мы предоставим имя файла с параметром -c.
$ htpasswd -c .htpasswd itsecforu
$ htpasswd -c /var/www/mysite/.htpasswd itsecforu
В качестве альтернативы мы можем использовать команду touch, где созданный файл .htpasswd будет пустым файлом со своим именем.
$ touch .htpasswd
Другой альтернативой для создания файла .htpasswd является использование командной строки или текстового редактора.
В качестве примера мы будем использовать текстовый редактор nano, но в качестве альтернативы можно использовать текстовые редакторы, такие как vi, vim, KWrite.
$ nano .htpasswd
Настройка файла .htpasswd
Поскольку файл .htpasswd используется для Apache и связанного с ним программного обеспечения веб-сервера для аутентификации пользователей, мы должны настроить веб-сервер для использования файла .htpasswd.
Далее мы включим базовую аутентификацию HTTP, указав файл .htpasswd для имени пользователя и пароля.
AuthUserFile /var/www/mysite/.htpasswd
AuthType Basic
AuthName "itsecforu HTTP Authentication"
Require valid-user