Простая аутентификация в Apache

Автор: . Дата статьи: 07.05.2008 г.

Иногда возникает необходимость закрыть доступ к тому или иному web-ресурсу. Сделать это можно используя различные методы аутентификации. Одним из самых простых и быстрых является метод basic authentification.


На простом примере мы рассмотрим настройку basic authentification в Apache.




Первым шагом для нас будет создание файла с паролями и в создании файла с паролями нам поможет команда htpasswd.


Итак, создадим файл, выполнив:



После выполнения вышеуказанной команды, будет предложено ввести пароль для пользователя vasya:


New password:(введите пароль и нажмите Enter)

Re-type new password:(повторите пароль пользователя vasya)

После вышеуказанных действий, мы увидим, что пользователю vasya успешно присвоен пароль:


Adding password for user vasya

Собственно, на этом и все, файл с паролем пользователя vasya был вами создан. Как вы заметили, в первой выполненной нами команде (htpasswd -c passwd vasya) мы использовали ключ -c. Именно он позволяет создать файл с паролями. В дальнейшем, когда у вас будет необходимость добавить в файл дополнительных пользователей, этот ключ вы можете опустить.


Следующим шагом будет обеспечение защиты от доступа к файлу с паролями. Во-первых, нам необходимо разместить файл passwd в более надежном месте (к примеру в каталоге /etc/httpd/secret/ ). А, во-вторых, выставить необходимые права (только наш веб-сервер может читать и только пользователь root может писать в него) на файл с паролями. В этом нам помогут команды chown и chmod.


Назначаем владельца и группу на файл:


chown root.nogroup /etc/httpd/secret/passwd


Выставляем права (rw- r-- --- ):


chmod 640 /etc/httpd/secret/passwd

Ну, а теперь завершающий аккорд - небольшие изменения в конфигурационном файле Apache (httpd.conf) в разделе вашего web-ресурса:


AuthType Basic

AuthName "Authorized access only"

AuthUserFile /etc/httpd/secret/passwd

Require valid-user

Вот и все! Вы защитили свой web-ресурс методом basic authentification!




IT-поддержка

Оказываем квалифицированную помощь в поддержке Вашей IT-инфраструктуры

Подробнее