• • •
Apache - httpd.conf - Log
 
• • •
Options - Order - Auth
 
• • •
ErrorDocument
 
• • •
AddType - MIME types
 
• • •
CharsetDefault - CharsetSourceEnc
 
• • •
Redirect - RedirectMatch
 
• • •
Mod_rewrite - RewriteCond
 
• • •
AddHandler - Pass(Set)Env
 
• • •
PHP - .htaccess
 
• • •
Дополнительный материал
 
Рекомендуем

 
Auth - защита паролем

Auth - защита паролем

Хостинг! У меня виртуальный хостинг держит 10 000 посетителей со стандартным кэшем Joomla. А у Вас?

Полная поддержка директив .htaccess прилагается...

Реклама - рекомендация от администрации сайта

Защита файлов каталогом паролем - авторизация по логину-паролю на веб сервере с помощью .htaccess


Пример работы здесь - http://htaccess.net.ru/admins

Этот скрипт автоматически генерирует директивы .htaccess - служебного файла децентрализованного управления веб-сервером Apache которые защищают один или несколько каталогов с обычной проверкой подлинности HTTP. При этом логин пароль для входа будут храниться на сервере в специальном служебном файле .htpasswd Для создания файла .htpasswd используется в частности крошечная утилита, прикрепленная в архиве ниже - htpasswd.zip

Размещать данные директивы нужно в файле .htaccess расположенным в том каталоге, в который вы защищаете паролем - делает просмотр информации, размещенный в этом каталоге возможным только после авторизации по логину - паролю. При этом за один сеанс посещения логин пароль нужно будет вводить только 1 раз.

Введите информации, которая будет отображаться над формами ввода логина - пароля при входе в защищенную директорию:
Например: Dannyj razdel trebuet avtorizacii. Vvedite vash login parol. Писать лучше на английском, так как ряд браузеров, как правило, криво определяют кодировку в окне авторизации, и вместо текста вы увидите просто какие-нибудь кружки и черточки.

Введите корневой - абсолютный путь каталога в котором расположен файл с логинами паролями .htpasswd:
Например: При желании закрыть от посетителей директорию с названием admins, проще всего указать следующий путь /home/www/htaccess.net.ru/admins/, и собственно закрыть доступ к каталогу "admins" разместив в нем файл .htaccess, с полученными директивами, и для простоты здесь же разместить файл с паролями .htpasswd.

Если вы не знаете абсолютный путь от корня вашего хостинга до каталога в котором будет храниться файл с логинами паролями .htpasswd, можно воспользоваться скриптом приведенным левее - info.php

Вы сможете посмотреть путь в частности в переменных "SCRIPT_FILENAME, _SERVER["SCRIPT_FILENAME"] со значением "/home/www/htaccess.net.ru/1.php" т.е. чаще всего путь, следующий /home/www/htaccess.net.ru/ (/home/www/+ваш домен).


Еще можно использовать .htaccess для установки пароля на доступ к определенным страницам или разделам Вашего сайта (пароль htaccess).

Делается это путем создания в нужном подкаталоге файла .htaccess, в который пишем следующее:

# в кавычках пишем произвольное сообщение на английском,

#которое будет появляться в окошке авторизации

AuthName "The Catalogue on reconstructions, entry for debugging only. We Bring their own apologies an administration"

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

require valid-user

Файл с паролями может быть создан утилитой htpasswd

Директива AuthName

Описание: значение AuthName будет выводиться для посетителя и может использоваться для пояснения запроса авторизации - название области ограниченного доступа (htaccess доступ)

Синтаксис: AuthName "The Catalogue on reconstructions, entry for debugging only. We Bring their own apologies an administration"

#все пишется в одну строку

Директива AuthType

Описание: Эта директива выбирает тип аутентификации. Возможны следующие типы: Basic and Digest . Второй может не поддерживаться некоторыми браузерами, поэтому пользоваться им не рекомендуется.

Синтаксис: AuthType Basic | Digest

Директива AuthUserFile

Описание: значение AuthUserFile указывает имя файла с паролями для аутентификации пользователей.


Файл с паролями .htpasswd может быть создан утилитой htpasswd >>> скачать htpasswd для Windows - 202Кб.


Windows XP - определяет утилиту как опасную программу и выдает предупреждение, в windows 7 вопросов нет, как и в любой антивирусной программе. Так что запускайте смело. Сама утилита без-установочна и работает из любой папки. Можно как сразу получить файл с логином – паролем «Encode and Save» так и создать обычный txt-ный файл и скопировать – вставить в него логин (логины - каждый пользователь вводиться с новой строки) с хешем пароля разделенные двоеточием – «Encode Only».

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

Путь к файлу с паролями .htpasswd задается относительно корня веб-сервера. Храните файл с паролями в папке, доступ к которой закрыт для пользователей - (желательно поместить этот файл вне иерархии вашего веб-сайта, но часто это не позволяют сделать настройки сервера хостинга). Поэтому обычно данный файл храниться в той же папки, в которую он и ограничивает доступ. Так как в стандартной конфигурации веб-сервера данные файлы являются скрытыми и закрытыми для обычного доступа по маске файла «.ht».

Директива AuthName

Синтаксис: AuthUserFile путь-к-файлу

Если вы не знаете путь от корня сервера то его можно посмотреть - кинув тестовый php-скрипт info.php на сервере со следующим кодом:

<?php
phpinfo () ;
?>

Далее набираем в браузере ваш-домен.ру/info.php

В переменной окружения _SERVER["SCRIPT_FILENAME"] Вы увидите ваш путь, приблизительно такого вида: "/home/www/htaccess.net.ru/info.php"

Соответственно для того что бы запаролить нашу тестовую папку "admins" нам нужен следующий путь "/home/www/htaccess.net.ru/admins/" - со слешом в конце папки.

Функция "phpinfo ()" показывает практически всю конфигурацию вашего сервера, поэтому для безопасности не забудьте удалить данный мини скрипт с сервера после окончания настройки.

Директива Require

Описание: Определяет пользователей, которые могут получить доступ

Синтаксис: Require имя-пользователя| valid-user

Указывая valid - user вы разрешаете доступ всем пользователям, перечисленным в файле паролей.

Пример: разрешает доступ директории всем пользователям встречающимсмя в файле паролей .htpasswd. В зависимости от настроек хостинга может потребоваться секция директив Limit GET POST смотри в примерах ниже.

AuthName "Restricted area"

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

Require valid-user

Пример: разрешает доступ к директории только 3-м пользователям:

AuthName "The Catalogue on reconstructions, entry for debugging only."

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

Require Alexey Serpul Root

# в зависимости от версии иногда нужно добавить "*user*"

# Require *user* Alexey Serpul Root


ВАЖНОЕ ПРИМЕЧАНИЕ!!!

Стоит отметить, что разместить файл с паролями .htpassw в корне всех доменов в данном примере в директории "www", на некоторых хостингах не удалось - он был не доступен, на других такой вариант срабатывал. Вариант с одним .htpassw для нескольких каталогов - нескольких htaccess вполне работоспособен. Т.е. с одним файлом паролей лежащим в одном домене, могут работать все остальные домены вашего хостинга - сервера. Т.е один логин - пароль на все закрываемые Вами директории.

Что касается прав доступа то форма авторизации работает практически на всех вариантах, как на наиболее встречающихся дефолтных - 755 (стоит заметить крайне небезопасных), так и например на 544 т.е. владелец-5-(чтение-выполнить), группа-4-(чтение), публичные-4-(чтение).

Рабочий пример: разрешает доступ к директории только 1-м пользователю (из практики скажим что для некоторых хостингов секция команд пропущенная в приведущих примерах "Limit GET POST" обязательна, поэтому эксперемнтируем):

AuthName "The Catalogue on reconstructions, entry for debugging only!"

AuthType Basic

AuthUserFile /home/www/htaccess.net.ru/secret/.htpasswd

<Limit GET POST>

require valid-user

<Limit>

Содержимое .htpasswd - сгенерированого и сохраненного утилитой passwd.exe - Encode UNIX Password. Копируем его соотвественно в - htaccess.net.ru/secret

Root:RoU9yc57nPeKM

В итоге при попытки открыть - войти в каталог в котором лежит данный .htaccess появляется окошко авторизации для ввода "Имя пользователя" - "Root" и "Пароля"- "12345".

Если введены неверные данные то сервер выдаст 401 код:
401 Unauthorized
Неавторизованный запрос. Этот код результата, передаваемый с заголовком WWW-Authenticate, показывает, что пославший запрос пользователь не имеет необходимых полномочий и что при повторении запроса с указанием данного URI пользователь должен такие полномочия предоставить.


Пример: ограничение доступа к определенным файлам (в этом примере ограничен доступ к zip архивам - htaccess запрет)

<FilesMatch "\.zip$">

AuthName "Only valid users can download zip files."

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

Require valid-user

</ FilesMatch >

Пример: ограничение доступа к одному файлу (в этом примере ограничен доступ к конкретному файлу . htpasswd, но обычно о защите данного файла должен позаботиться хостер, в глобальной конфигурации сервера - при попытке открыть .htpasswd - сервер должен выдать 403 ошибку.

<Files ".htpasswd">

AuthName "Access restricted."

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

Require Alexey Serpul

</ Files >

Следует помнить, что при таком ограничении доступа пароли передаются по каналам связи в открытом виде и при определенных обстоятельствах могут быть перехвачены злоумышленниками. Поэтому в целях безопасности рекомендуется организовывать доступ к закрытым областям веб-сайта через защищенное SSL -соединение.

Рекламная информация

Недавно освободившиеся домены с PR и ТИЦ:

Сервис http://reg.ru - крупнейшего регистратора доменов позволяет подать заявку на регистрацию доменного имени, которое недавно было освобождено прежним Администратором. Освобожденные домены часто имеют высокие показатили ТИЦ и PR и могут быть интересны к приобретению.

Освобожденные домены .РФ c ТИЦ:
Освобожденные домены .RU c ТИЦ:
Освобожденные домены .SU c ТИЦ:
Свободные премиум-домены:
Освобождающиеся домены. Первым подать заявку на возможное переоформление при не продлении владельцем: Освобожденные домены с PR:

Объем информации: 17331 bytes
Россия • admin@htaccess.net.ru 2005 - 2014 • Рекомендуем хостинг: Reg.ru (крупнейший), Hostland.ru (по-дешевле) - договора, счета, акты.


 
  In Partnership with AOL Search    службы мониторинга серверов