Базовая аутентификация - запароленный вход в папку сайта AuthType Basic
- Подробности
- Категория: Безопасность сайтов
- Просмотров: 3024
Если ваш сайт часто взламывают, а вы все таки за безопасность свои данных и сайта в целом, то тогда вы должны знать про то, что еще есть "Запароленный вход в папку сайта через базовую аутентификацию" - и это еще один хороший способ защитить вашу папку от хакеров...
То есть при входе в запароленную папку через браузер будет появляться что-то такое:
Итак создаем папку или она уже существует, в ней создаем файл .htaccess с таким содержимым:
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /home/domains/php/auth/.htpasswd
Require valid-user
1 строчка - AuthType Basic - базовый тип аутентификации
2 строчка - Приветствие
3 строчка - путь, где расположен файл .htpasswd, в нем и расположен пароль в зашифрованном виде.
4 строчка - говорит о том, что доступ будет предоставлен только лицам, которые правильно введут логин и пароль.
Файл с паролем .htpasswd для базовой аутентификации - можно сделать при помощи онлайн сервисов (например этот), если вы хорошо владеете командной строкой, то можно через нее, а вот у меня установлена расширенная версия openserver, и там есть Консоль.
Запускаем эту консоль, вводим htpasswd -cm pwdaccess admin :
где:
htpasswd - это утилита, которая входит в состав apache - она вот и создает этот запароленный файлик;
-cm : -c - указывает, что необходимо создать новый файл, m - говорит о том, что необходимо провести шифрование по алгоритму md5;
pwdaccess admin - далее идет название создаваемого файла и логин (который можно выбрать любой)
В данном случае файлик создастся на диске W, у вас может быть по-другому.
2) Проблема у вас может возникнуть с поиском пути к этому файлу, некоторые это делают через функцию phpinfo(); В общем у меня с этим проблем не возникло, на сервере, чтобы уж точно - то лучше через эту функцию.
Все проверяйте папка теперь у вас запаролена!
Но и это еще не все, может вы захотите добавить еще пользователя прямо в этот же файл, тогда делайте так:
htpasswd -m .htpasswd user
Этой же командой можно и изменять пароли уже существующих пользователей!
Для самых любопытных: эти данные попадают в суперглобальный массив $_SERVER (логин в $_SERVER['PHP_AUTH_USER'] и пароль в $_SERVER['PHP_AUTH_PW']), таким образом их можно обрабатывать при помощи php.