Контакты:
(977) 716-1580
info@liveb.ru
Вы здесь: » » Ограничение доступа с помощью .htaccess

Ограничение доступа с помощью .htaccess

27 Февраль 2019, Среда
111
0


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


Ограничение по IP-адресу


Конструкция подобного ограничения очень проста:


order allow,deny
deny from 1.1.1.1
deny from 2a01:230::6d0a:8406:c4e4:9e19
deny from 10.10
deny from 192.168.0.0/24
deny from domain.dom
allow from all

Системные требования для работы этих правил: Веб-сервер Apache 2.2.x с подключенным модулем mod_authz_host.


В этом примере я привел все возможные вариации ограничения доступа. И ниже разберем каждую строку в отдельности.


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


Вторая и третья строки блокируют доступ по конкретным IP-адресам (ipv4 и ipv6 соответственно).


Четвертая строка показывает, что можно указывать частично IP-адрес и в таком случае (как указано в примере) будет обрабатываться как подсеть /16.


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


Для работы вариантов блокировки как в шестой строке потребуется включить параметр HostnameLookups.


И, наконец, последняя строка allow from all говорит о том, что всем остальным доступ разрешен.


Ограничение по паролю


Рассмотрим простейший вариант ограничения доступа с авторизацией по логину и паролю


AuthType Basic
AuthName "Доступ ограничен паролем"
AuthUserFile /path/to/.htpasswd

Системные требования для работы такой конструкции: Веб-сервер Apache 2.2.x с подключенными модулями auth_basic, authn_file.


Генерация пароля


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


Использование:

        htpasswd [-cmdpsD] passwordfile username
htpasswd -b[cmdpsD] passwordfile username password

htpasswd -n[mdps] username
htpasswd -nb[mdps] username password

-c Создать новый файл.
-n Не обновлять файл, вывести результат на экран.
-m Зашифровать пароль с помощью [[MD5]].
-d Зашифровать пароль с помощью [[CRYPT]] (по умолчанию).
-p Не шифровать пароль (открытый текст).
-s Зашифровать пароль с помощью [[SHA]].
-b Указать пароль в параметре командной строки.
-D Удалить указанного пользователя.
На [[Windows]], [[NetWare]] и [[TPF]] системах флаг '-m' используется по умолчанию. На всех остальных системах флаг '-p' может не работать.

Примеры работы htpasswd


Таким образом, чтобы создать файл с логином и паролем для авторизации с зашифрованным паролем в MD5, потребуется выполнить команду:



  • htpasswd -bcm /path/to/.htpasswd sampleuser samplepass


Adding password for user sampleuser


Результатом будет файл .htpasswd со строкой


sampleuser:$apr1$i5Kx715D$qkWbaZLztXohMGOdfCUy5/

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



  • htpasswd -bm /path/to/.htpasswd sampleuser1 samplepass1


Updating password for user sampleuser1


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



  • htpasswd -D /path/to/.htpasswd sampleuser2


Deleting password for user sampleuser2


Обсудить
Материалы по теме:
Лучшие FTP-клиенты 18 Март 2019, Понедельник
Скрипт городского портала Tamaranga City 18 Март 2019, Понедельник

Читайте также:

Доска объявлений AWEBCOM BOARD RELOAD
28 Февраль 2019, Четверг
Доска объявлений AWEBCOM BOARD RELOAD
Flazy скрипт форума
28 Февраль 2019, Четверг
Flazy скрипт форума
Хозяева дорог
26 Февраль 2019, Вторник
Хозяева дорог
Добавить комментарий
Комментарии (0)
Информация
Добавление комментариев пользователям из группы «Гости» запрещено
Наш коллектив
Партнеры