Вам понадобится
- Сайт, функционирующий под управлением сервера apache. Доступ к сайту по ssh. Доступ к сайту по ftp. Конфигурация сервера, разрешающая пользовательские файлы .htaccess.
Инструкция
1
Подключитесь к серверу по ssh. Если у вас установлен консольный клиент, наберите в консоли команду "ssh <имя_пользователя>@<адрес_сервера>", где <имя_пользователя> - имя вашей учетной записи на сервере, а <адрес_сервера> - символическое имя, либо IP-адрес сервера. Команда может выглядеть так: "ssh vic@receptoman.ru". После запроса введите пароль от своей учетной записи. Под windows можно воспользоваться альтернативными программами-клиентами. Одна из таких программ - putty.
2
Перейдите в корневой каталог сайта на сервере. Это каталог, не доступный из web. Как правило, в нем находится подкаталог public_html, в которое помещено содержимое сайта, доступное для просмотра через интернет. Используйте команду cd. Если вы не помните полный путь к папке, используйте команду ls для получения содержимого текущего каталога и совершайте поэтапные переходы.
3
Создайте файл паролей в текущем каталоге. Выполните команду вида "htpasswd -c <имя_файла_паролей> <имя_пользователя>". Здесь <имя_файла_паролей> - корректное имя файла, в который будут помещены данные для авторизации, а <имя_пользователя> - один из идентификаторов пользователей, которые будут иметь доступ к разделу сайта. Команда может выглядеть так: "htpasswd -c .pwd User1". После ввода команды будет запрошен пароль для пользователя с введенным именем. После ввода пароля будет запрошено его подтверждение.
4
Проверьте существование файла паролей. Выполните команду "ls --all". В отображенном списке содержимого текущего каталога должно присутствовать имя файла паролей.
5
Добавьте еще пользователей, которым будет разрешен доступ. Выполняйте команду вида "htpasswd <имя_файла_паролей> <имя_пользователя>". Значение параметра <имя_файла_паролей> должно быть такое же, как при создании файла паролей. Например, добавить в файл с именем .pwd данные для пользователя user2, можно командой "htpasswd .pwd user2". Пароли и подтверждения паролей будут запрошены в интерактивном режиме.
6
Отключитесь от сервера. Введите команду exit и нажмите Enter.
7
Измените файл .htaccess. Подключитесь к серверу при помощи программы FTP-клиента. Зайдите в каталог, соответствующий разделу сайта, для которого необходима авторизация. Если там есть файл с именем .htaccess, загрузите его на свой компьютер. Если такого файла нет, создайте его на своем компьютере. Добавьте в начало файла .htaccess следующие строки:AuthType Basic
AuthName "приветствие"
AuthUserFile "путь_к_файлу_с_паролями"
Require valid-userВместо слова "приветствие" введите любую фразу. Она будет отображаться в диалоге запроса данных пользователя в браузере. Вместо значения "путь_к_файлу_с_паролями" введите полный путь к файлу с данными для авторизации на сервере. Этот путь, к примеру, может быть таким: "/home/www/vic/domains/receptoman.ru/.pwd". Сохраните файл .htaccess. Загрузите его на сервер.
AuthName "приветствие"
AuthUserFile "путь_к_файлу_с_паролями"
Require valid-userВместо слова "приветствие" введите любую фразу. Она будет отображаться в диалоге запроса данных пользователя в браузере. Вместо значения "путь_к_файлу_с_паролями" введите полный путь к файлу с данными для авторизации на сервере. Этот путь, к примеру, может быть таким: "/home/www/vic/domains/receptoman.ru/.pwd". Сохраните файл .htaccess. Загрузите его на сервер.
8
Проверьте работу системы авторизации. Зайдите в раздел сайта, для которого был модифицирован файл .htaccess. Если все работает корректно, браузер отобразит диалог с запросами данных для авторизации.
Видео по теме
Обратите внимание
Обязательно убедитесь, что каталог, в котором находится файл паролей, не доступен через web. В противном случае злоумышленник сможет завладеть этим файлом. Пароли в файле зашифрованы. Но, имея имена пользователей и хеши паролей, гораздо проще подобрать данные для авторизации.
Полезный совет
В административной панели хостинга может иметься функция для более быстрого паролирования директорий. Вследствие ее применения также будет создан файл паролей и модифицирован файл .htaccess.
Источники:
- Аутентификация, авторизация и контроль доступа в Apache