htpasswd генератор. Создание .htpasswd и .htaccess для 401-авторизации


Содержание

Как закрыть сайт паролем с помощью htaccess

Бывают ситуации, когда сделанный вами сайт не должен быть публичным, а используется как некий сервис для ограниченного круга лиц. Можно, конечно, нагородить аутентификацию через PHP, но есть почти элементарный способ – закрыть папку на сайте средствами Apache. Например, с помощью файлов .htaccess и .htpasswd. Вот об этом мы сейчас и поговорим.

Создаём файл .htpasswd с паролями

Для того, чтобы установить пароль, сначала мы должны сгенерировать файл .htpasswd. Делается это с помощью утилиты htpasswd, которая существует в версии как для Linux, так и для Windows.

htpasswd -c .htpasswd admin

Ключ указывает, что необходимо создать новый файл с паролями. .htpasswd — имя генерируемого файла. admin – логин пользователя, которому будет разрешен доступ в закрытую часть сайта. После запуска утилиты со всеми нужными параметрами, появится запрос на ввод пароля и его повтор. Если файл .htaccess у вас уже создан, и вы хотите добавить в него нового пользователя, просто запустите утилиту, указав файл с паролями без ключа –c.

Создаваемый файл является текстовым и содержит логин пользователя и хеш-пароля, которые, разделены двоеточием. По умолчания, алгоритм хеширования – DES. Но его можно сменить и использовать алгоритм MD5 с ключом –m, но лучший вариант использование алгоритма SHA(ключ -s).

Защита сайта с помощью .htaccess

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


# Закрываем доступ к файлу .htaccess
Order allow,deny
Deny from all
Satisfy All

# Указываем место положение файла .htpasswd, включаем аутентификация
AuthUserFile /etc/apache2/passwd/.htpasswd
AuthName «Password Protected Area»
AuthType Basic
Require valid-user

Параметр AuthUserFile указывает на абсолютный путь к файлу .htpasswd. По неизвестной мне причине, во многих мануалах которые я видел, файл паролей зачем-то хранят в домашней директории пользователя. Я бы не советовал хранить этот файл в домашней директории, а тем более в корневой директории сайта.

После создания файла и размещения файл .htaccess в корне сайта, неплохо было бы перезагрузить процесс apache.

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

На этом я думаю можно, и закончить этот пост. Если у Вас есть какие-то ещё вопросы по теме, жду их в комментариях.

Как создать .htpasswd

.htpasswd — файл, содержащий пароли для доступа к ресурсу у веб-сервера Apache. Метод авторизации с использованием такого файла носит название базового. Некоторые другие веб-серверы, например, nginx, также могут работать с этим файлом.

Для создания нового файла .htpasswd

Можно воспользоваться online генератором или сгенерировать в консоле.

В командной строке набираем команду:

Для изменения существующего файла .htpasswd

В командной строке набираем команду:

Dir — каталог где будет лежать файл

username — имя с которым будем заходить в закрытую .htaccess область

PassWord — пароль с которым будем заходить в закрытую .htaccess область

Полный список ключей :

-c Create a new file.
-n Don’t update file; display results on stdout.
-m Force MD5 encryption of the password.
-d Force CRYPT encryption of the password (default).
-p Do not encrypt the password (plaintext).
-s Force SHA encryption of the password.
-b Use the password from the command line rather than prompting for it.
-D Delete the specified user.


Настройка авторизации на основе пароля на Apache в Ubuntu 14.04

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

В этом руководстве показано, как настроить авторизацию на основе пароля на веб-сервере Apache в Ubuntu 14.04.

Требования

Для выполнения руководства нужен аккаунт не-root пользователя с правами sudo. Чтобы создать такой аккаунт, обратитесь к этому руководству.

Установка утилит Apache

Чтобы создать файл для хранения паролей, понадобится утилита htpasswd. Она входит в пакет apache2-utils, который можно найти в репозитории Ubuntu.

Обновите список пакетов и установите необходимые утилиты и сервер Apache2 при помощи следующей команды:

sudo apt-get update
sudo apt-get install apache2 apache2-utils

Создание файла паролей

Теперь на сервере доступна команда htpasswd, которая позволяет создать файл паролей, необходимый серверу Apache для авторизации пользователей. Создайте скрытый файл .htpasswd в каталоге /etc/apache2.

При первом запуске данной утилиты нужно использовать флаг –c, который и создаст необходимый файл. Укажите имя пользователя в конце команды, чтобы создать новую запись в файле:

sudo htpasswd -c /etc/apache2/.htpasswd 8host

Примечание: Замените условное имя пользователяapache настройка авторизации 8host своим именем.

Программа предложит создать и подтвердить пароль для этого пользователя.

Чтобы добавить других пользователей в файл паролей, используйте команду htpasswd без флага –с:

sudo htpasswd /etc/apache2/.htpasswd another_user

Файл паролей содержит имена пользователей и их пароли в зашифрованном виде:

cat /etc/apache2/.htpasswd
8host:$apr1$lzxsIfXG$tmCvCfb49vpPFwKGVsuYz.
another_user:$apr1$p1E9MeAf$kiAhneUwr.MhAE2kKGYHK.

Настройка авторизации Apache

Итак, необходимый файл паролей готов. Теперь нужно настроить Apache для проверки этого файла перед обслуживанием закрытого контента. Это можно сделать двумя способами.

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

Второй способ больше подходит пользователям, которые не имеют возможности редактировать виртуальный хост. В таком случае ограничить доступ к некоторым разделам сайта можно при помощи файла .htaccess. Сервер Apache использует файлы .htaccess для того, чтобы настроить определенные элементы конфигурации в каталоге, хранящем контент. Недостатком такого способа является то, что сервер Apache должен перечитывать все эти файлы при каждом запросе к этому каталогу, что может негативно повлиять на производительность.

Выберите наиболее подходящий способ настройки и следуйте инструкциям соответствующего раздела.

Настройка авторизации через виртуальный хост

Откройте файл виртуального хоста сайта, доступ к которому нужно ограничить. В данном примере используется стандартный файл 000-default.conf, содержащий виртуальный хост по умолчанию.


sudo nano /etc/apache2/sites-enabled/000-default.conf

Раскомментированный файл выглядит так:

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog $/error.log
CustomLog $/access.log combined

Авторизация в Apache настраивается по каталогам. Для этого найдите раздел каталога, к которому нужно ограничить доступ, в блоке . В данном примере нужно ограничить доступ к document root (при необходимости укажите другой каталог):

/etc/apache2/sites-enabled/000-default.conf

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog $/error.log
CustomLog $/access.log combined

В блоке этого каталога нужно указать тип авторизации, в данном случае – Basic. В параметре AuthName укажите имя области данных, которое будет отображаться при запросе. Используйте директиву AuthUserFile, чтобы указать созданный ранее файл паролей. Установите значение valid-user для директивы Require, чтобы разрешить доступ к контенту только тем пользователям, которые могут пройти авторизацию.

Илон Маск рекомендует:  Наложение CSS-градиента на фоновое изображение

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog $/error.log
CustomLog $/access.log combined

AuthType Basic
AuthName «Restricted Content»
AuthUserFile /etc/apache2/.htpasswd
Require valid-user

Сохраните и закройте файл. Перезапустите Apache, чтобы обновить конфигурации.

sudo service apache2 restart

Теперь доступ к контенту, находящемуся в этом каталоге, защищён паролем.

Настройка авторизации при помощи файла .htaccess

Для начала нужно настроить Apache для поддержки файлов .htaccess. Откройте конфигурации Apache:

sudo nano /etc/apache2/apache2.conf

Найдите блок каталога /var/www (как вы понимаете, это настройки каталога document root). Включите поддержку файлов .htaccess, заменив значение директивы AllowOverride на All.

. . .

Options Indexes FollowSymLinks
AllowOverride All
Require all granted

. . .

Сохраните и закройте файл.

Затем нужно добавить файл .htaccess в каталог, доступ к которому нужно ограничить. Опять же, в примере доступ будет ограничен к каталогу document root, /var/www/html (то есть ко всему сайту). Чтобы ограничить доступ к другому каталогу, внесите в код соответствующие поправки.

sudo nano /var/www/html/.htaccess

В этом файле нужно указать тип авторизации, в данном случае это Basic. В директиве AuthName задайте имя области данных, которое будет отображаться при запросе. В директиве AuthUserFile укажите созданный ранее файл паролей для Apache. Для директивы Require укажите значение valid-user, чтобы открыть доступ к контенту только тем пользователям, которые могут пройти авторизацию.

AuthType Basic
AuthName «Restricted Content»
AuthUserFile /etc/apache2/.htpasswd
Require valid-user

Сохраните и закройте файл. Перезапустите веб-сервер, чтобы обновить его настройки.

sudo service apache2 restart

Тестирование авторизации

Чтобы убедиться, что требуемые каталоги защищены паролем, попробуйте получить доступ к закрытому контенту в веб-браузере. На экране должна появиться форма авторизации, предлагающая указать имя пользователя и пароль:

Authentication Required
The server requires a username and password. The server says:
Restricted server.
User Name:
Password:

Введите валидные учётные данные, чтобы получить доступ к контенту. В случае получения неверных учётных данных сервер вернёт ошибку «Unauthorized».


Заключение

Теперь контент сайта защищён с помощью пароля. Имейте в виду, что защиту паролем следует комбинировать с шифрованием SSL, в противном случае учетные данные будут передаваться на сервер в виде простого текста, а это очень серьёзная уязвимость для безопасности.

Примечание: Чтобы узнать, как создать SSL-сертификат для Apache, читайте данное руководство.

Форум русскоязычного сообщества Ubuntu

Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Настройка аутентификации и авторизации в веб-сервере Apache (Прочитано 15756 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Страница сгенерирована за 0.061 секунд. Запросов: 24.

© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

Защита сайта и директорий через htaccess и htpasswd Инструкция

Рассмотрим интересный способ защиты сайта, или директории (папки) сайта, например с административной частью.

Данный способ достаточно прост, но в тоже время является очень надежным, при условии использования «нормального хостинга», так как данный тип защиты паролем через htaccess и htpasswd строиться средствами самого сервера Apache.

Ещё один плюс данного способа – это то, что происходит защита паролем самой директории и плюс подпапок и абсолютно всех файлов внутри этой папки. Также без авторизации не возможно будет отправить ни $_POST ни $_GET запросов к защищенным файлам…вообще ничего.

Из минусов – этот способ, как правило, подойдет, если пользователей, которые будут иметь доступ, не много…так как для каждого пользователя отдельно генерировать пароль надоест очень быстро.

Почему не стоит данный способ использовать на «копеечном хостинге»?

Дело в том что, как правило, такой тип хостинга подразумевает не качественную настройку Apache, и этим самым Вы можете просто открыть злоумышленникам дорогу в «защищаемую» директорию.

И так приступим…

Инструкция защиты через htaccess и htpasswd

Нам потребуется:

  • Доступ по протоколу FTP
  • Наличие прав на создание-редактирование файла htaccess
  • Утилита для создания и шифрования пароля htpasswd.exe, ссылка для загрузки

Создаем файл для защиты htaccess

Проще всего этот файл создать с помощью обычного блокнота. Жмем правой кнопкой мыши на рабочий стол: создать -> текстовый документ. Открываем его с помощью обычного блокнота Windows. Жмем Файл -> Сохранить как…

Далее в поле «Имя Файла» пишем .htaccess вместе с точкой в начале. В поле «Тип Файла» выбираем «Все Файлы(*.*)». Жмем «Сохранить» и закрываем. Готово.

Создание файла паролей htpasswd

Копируем скачанную утилиту в корень диска C. Далее поймете, зачем именно в корень.

Запускаем консоль («Пуск» -> «Выполнить», пишем cmd и жмем «ОК»). Переходим в корень диска C (пишем команду cd/ ).

В самой нижней строчке, где мигает курсор должно быть написано «C:\>» — мы в корне диска C.


Теперь пишите следующую команду:

На конце команды admin – это имя пользователя (Логин). Можете использовать любое(английские буквы, без пробелов).

Вам предложат ввести пароль. Вводим, переключившись на английскую раскладку. Жмем энтер на клавиатуре и повторно вводим тот же пароль. Опять энтер. Готово. Файл .htpasswd создан в корне диска C. Закрываем консоль.

Подключаемся к сайту по FTP и переходим в директорию, которую защищаем через htaccess и htpasswd.

Перекидываем в корень этой папки созданный файл .htpasswd

Теперь нам нужно выяснить абсолютный путь к файлу .htpasswd на хостинге…если Вы уже знаете – хорошо, если нет, то вот что нам нужно:

1. Рядом с файлом паролей на хостинге создаем файл, например er2344fsdxaasdl.php
2. Отрываем окно редактирования этого файла и пишем следующий код:

3. Сохраняем и закрываем.
4. Открываем браузер и пишем в адресной строке

Жмем энтер. И видим большую таблицу о версии PHP и прочие данные.

5. Слева колонка с параметрами, справа колонка со значениями этих параметров. Нам нужно значение параметра SCRIPT_FILENAME. Допустим, оно имеет значение:

Копируем это значение куда-нибудь, без названия нашего php-файла, т.е. копируем только это:

Это и есть абсолютный путь до нашей защищаемой директория. Наш php-файл er2344fsdxaasdl.php обязательно удалить!

Сам процесс защиты через htaccess и htpasswd

Теперь открываем с помощью блокнота файл .htaccess на рабочем столе (или где вы его сохраняли?). Вписываем в него:

Заметьте, у AuthUserFile прописан наш скопированный абсолютный путь плюс имя файла .htpasswd

Сохраняем изменения через Ctrl+S или «Файл» -> «Сохранить».

Теперь переносим измененный файл .htaccess на сервер в корень защищаемой папки, туда же где лежит файл .htpasswd

Вот и все. Директория защищена. Закройте браузер и запустите его снова.

Откройте в вкладке адрес

У Вас должно появиться окно ввода логина и пароля. Если этого не произошло, значит Вы где-то ошиблись…проделайте весь процесс заново и очень внимательно.

Попробуйте ввести не правильный пароль и увидите сообщение об ошибке.

Сеанс будет длиться до тех пор, пока Вы не закроете браузер.

Пишите в комментариях, если возникнут проблемы…разберемся вместе.

Что такое .htaccess и .htpasswd настройка

Абсолютно каждый нормальный сайт имеет в корневом каталоге файл .htaccess благодаря которому выполняется большая часть настроек которые можно изменять или же добавлять в зависимости от Ваших потребностей.

В файле .htaccess можно использовать такие настройки как ошибки 404, пароли на каталоги, пароли на файлы, редиректы страниц и многое другое. Не смотря на то, что файл .htaccess позволяет выполнять огромное количество настроек многие люди работают с сайтом и даже не знают о существовании такого файла.


Как правило все грамотные seo оптимизаторы, веб мастера уделяют большое внимание данному файлу так как благодаря нему можно оптимизировать url адреса сайта, сделать редиректы с несуществующих страниц сайта на новые, выбрать главный домен с www или без сделав перенаправление на нужный, вывод страницы ошибки 404 или при ошибке 404 перенаправление на главную сайта и т.п.

Перенаправление в .htaccess старых ссылок на новые страницы с помощью редиректа 301

Многие встречаются с проблемой изменения алиасов при переезде сайта на другой хостинг или смене дизайна сайта и соответственно сайт начинает терять позиции в поисковых системах так как из поиска вылетают проиндексированные страницы из за не доступности их по старым ссылкам. Вместо уже проиндексированных страниц получается ошибка 404. И соответственно поисковой робот не может знать, что Вы не удалили страницу, а просто изменили алиас либо имя категории и тут Вам пригодится .htaccess так как в нем можно создать редирект 301 который позволит перенаправлять поисковых роботов и людей по старой ссылке на новую тем самым Вы не потеряете трафик на сайт, а поисковой робот поймет, что у страницы изменился адрес и после апдейта так же поменяет его в поисковой базе. Вот так выглядят строки редиректа 301 в файле .htaccess

Илон Маск рекомендует:  Что такое код dlgdirlist

Первая ссылка это адрес старой страницы которой уже не существует, а вторая адрес новой страницы и за счет Redirect 301 будет происходить перенаправление.

Как защитить директории и файлы используя .htaccess и .htpasswd

Многие наверняка не однократно сталкивались при серфинге в интернете, что на некоторых сайтах для доступа к разделам или скачки файлов требует ввода логина и пароли и именно это и есть работа данных файлов. Благодаря возможности настройки данных файлов Вы можете обеспечить безопасность административных разделов сайта, каталогов файлов и многое другое.

С начала необходимо создать файл .htpasswd который должен содержать логин и пароль в таком виде «Login: password» (без кавычек). Создать его можно программой htpasswd.zip которую необходимо извлечь из архива и положить в корень диска С. После чего открыть командную строку windows и перейти в каталог С командой «cd/» и далее ввести команду «htpasswd -m .htpasswd admin» admin это учетная запись пользователя для которой мы генерируем пароль. После ввода команды Вам будет предложено ввести пароль и его подтверждение. Файл .htpasswd автоматически создастся в корне диска С там же куда Вы положили утилитку.

-cm — это ключи для утилиты. Ключ с — указывает, что необходимо создать новый файл с паролями. Если файл с таким именем уже существует, то он будет перезаписан. Ключ m — определяет шифрование по алгоритму MD5. Запомните пароли необходимо генерировать именно данной утилитой. Так же при желании можете набрать в поиске «онлайн генератор .htpasswd» и Вам откроется целая куча ссылок с генераторами таких файлов.

После этого он должен быть помещен именно в тот каталог который Вы хотите защитить. Если Вам необходимо добавить больше пользователей то их нужно добавить в данный файл в таком же формате с новой строки.

Далее нам необходимо создать окно авторизации которое будет требовать ввода логина и пароля

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

Здесь все просто и понятно и единственно где у Вас могут возникнуть сложности это узнать абсолютный путь «AuthUserFile». Для того, что бы узнать абсолютный путь нужно либо обратится к хостеру либо поместить в корень сайта такой файлик home.rar и перейдите по адресу ваш_сайт/home.php и Вам будет показан абсолютный путь. Обратите внимание путь должен быть именно от корня до самого файла с паролями как показан на примере.

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

Так же на многих виртуальных хостингах где Вы не имеете доступа к настройкам apache или php благодаря файлу .htaccess Вы можете изменять настройки на необходимые Вам.

Защита админки WordPress через .htpasswd

Чтобы защитить админку дополнительным паролем необходимо отредактировать два файла. Создайте или откройте уже существующие файлы .htaccess и .htpasswd в корневом каталоге сайта. В .htaccess добавьте текст:

где вместо /home/getked/public_html/.htpasswd укажите полный путь до файла на своём сервере. Если не знаете как это сделать, то создайте в корне сайта файл path.php с таким содержимым:

Откройте в браузере страницу ваш_сайт.ru/path.php — появившаяся строка и будет полный путь.

Перейдите на онлайн-генератор .htpasswd-файлов. В полях Username и Password укажите имя пользователя и пароль, которые будут дополнительно запрашиваться при входе в админку. После нажатия на кнопку Create .htpasswd file сервис отобразит строку типа такой: test:$apr1$PyFAwBk1$n/jY65hGfEfIRG319dhTC1 . Открываем .htpasswd в корне сайта и вставляем туда эту строчку. Теперь при открытии админки будет появляться окно авторизации:

От всех уязвимостей это не спасет, но отлично защитит от брутфорс-атак.

Записная книжка

Генератор паролей для .htpasswd онлайн

Если Вы хотите сделать базовую авторизацию на уровне apache-серевера Вам необходимо сгенерировать .htpasswd файл. Действие файлов .htaccess распространяется на текущую директорию и на все поддиректрии, лежащие уровнем ниже.

Укажите данные для создания .htpasswd и .htaccess файлов:

Помните, в .htpasswd только одна запись может быть в строке!

Обратите внимание что файлы .htaccess и .htpasswd должны быть сохранены в unix-формате. Например, в Far Manager этого можно достичь если в режиме редактирования файла нажать комбинацию Shift+F2 и в появившемся меню выбрать “в формате UNIX (LF)”.


Директивы и описание файла .htaccess, используемые для ограничения доступа

  • AuthType — Тип используемой аутентификации. Для базовой аутентификации эта директива должна иметь значение: Basic
  • AuthName — Имя области действия аутентификации. Текст, помогающий посетителю понять, куда он пытается получить доступ. Например, может быть написано: «Private zone. Only for administrator!»
  • AuthUserFile — полный путь к файлу с паролями (.htpasswd). Относительные пути работать не будут.
  • AuthGroupFile — путь к файлу групп, если он существует.
  • Require — Одно или несколько требований, которые должны быть выполнены для получения доступа к закрытой области.
    • require valid-user — разрешен доступ всем прошедшим проверку
    • require user admin alex mango — разрешен доступ только посетителям с именами admin, alex, mango. Естественно, они должны пройти аутентификацию.
    • require group admins — разрешен доступ всем пользователям из группы admins

Файлы групп

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

Формат файла групп — это текстовый файл, каждая строка, которого описывает отдельную группу. Первым в строке должно идти название группы с двоеточием. А затем через пробел перечисляются посетители, входящие в группу.

Пример файла групп:

В группу Admins входят посетители с именами admin, alex, mango. А группу Users входят посетители с именами guest, user, max23.

Пример файла .htaccess для доступа всем пользователям, прошедшим авторизацию:

Пример файла .htaccess для доступа только пользователям admin и root:

Доступ только пользователей из группы admins:

Добавить комментарии Отменить ответ

При полном или частичном использовании любых материалов с сайта вы обязаны явным образом указывать открытую для поисковых систем гиперссылку на сайт: ch6.ru в качестве источника.

  • Перевод тем ВордПресс (Wopd… от Люцифер

После установки ВордПресс и подбора к нему темы, я обнаружил, что тема не совсем русифицирована. Точнее, она совсем не русифицирована :). Что-то было по-русски, а всё остальное по-английски. Я решил русифицировать её сам.

Чтобы делать бекап сайта нам потребуется другой сервер или хотя бы свой домашний компьютер. Нет смысла делать бекапы и хранить их на этом же сервере Если полетит сервер, то и все данные на нём удалятся. Для начала создадим ФТП-сервер на другом сервере, VDS или компьютере. Для этого можно использовать любое подходящее ПО ФТП-сервера подходящее для[…]

Критерии оценки материалов и (или) информации, необходимые для принятия решений Федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций, Федеральной службой Российской Федерации по контролю за оборотом наркотиков, Федеральной службой по надзору в сфере защиты прав потребителей и благополучия человека о включении доменных имен и (или) указателей страниц сайтов в информационно-телекоммуникационной сети[…]

Илон Маск рекомендует:  Типографика

Спайс: что входит в состав? «Спайс» — так в народе называют курительные смеси. Они содержат множество компонентов, как опасных, так и безобидных для человека. Вопреки мнению, распространенному среди молодежи еще пару лет назад, о том, что «спайсы» безвредны, исследования подтвердили, что большинство этих смесей содержат крайне опасные для здоровья человека вещества. Название «spice» переводится как[…]


Если Вы хотите сделать базовую авторизацию на уровне apache-серевера Вам необходимо сгенерировать .htpasswd файл. Действие файлов .htaccess распространяется на текущую директорию и на все поддиректрии, лежащие уровнем ниже.

Городские легенды — это полуфольклорные истории о «крысах-мутантах в метро», летающих тарелках Третьего Рейха и секретных правительственных разработках, которые способны менять климат на планете. Правды в таких историях нет, что не мешает желтой прессе периодически доставать из чулана и перепечатывать рассказы о чупакабрах и крокодилах в канализации. Проверить-то все равно невозможно: последний свидетель давно умер[…]

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

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

Пролонгации домена 199-00 руб

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

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

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

Введите информации, которая будет отображаться над формами ввода логина — пароля при входе в защищенную директорию:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

AuthName «Restricted area»

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

AuthName «The Catalogue on reconstructions, entry for debugging only.»

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!»

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

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

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

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

AuthName «Only valid users can download zip files.»

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

AuthName «Access restricted.»

Require Alexey Serpul

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

Как поставить пароль на страницу через htaccess?

В .htaccess добавляю

Генерирую .htpasswd здесь www.htaccesstools.com/htpasswd-generator
Заливаю .htpasswd в дерикторию /htdocs/site.ru/
И. пароль не принимает!

В filezilla даже скопировал полный путь к файлу и вставив его в htaccess
ftp://srv30566@ftp-srv30566.ht-systems.ru/htdocs/s.
И все равно не принимает.

Что я делаю не так?

  • Вопрос задан более года назад
  • 1142 просмотра

Путь AuthUserFile должен быть полным. Вызовите в скрипте __DIR__ посмотрите какой путь получится.

Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL