Как защитить каталог с помощью .htaccess и htpasswd (Apache httpd)

Файл .htaccess обеспечивает способ внесения изменений конфигурации для каждого каталога.

Этот файл может содержать одну или несколько конфигурационных директив.

Затем эти директивы будут применены к каталогу, в котором существует файл .htaccess и все его подкаталоги.

Выполните действия, описанные ниже, чтобы защитить каталог с помощью .htaccess и htpasswd.

Ниже приведен пример сервера CentOS / RHEL.

1. Используйте утилиту htpasswd password для создания комбинаций имени пользователя и пароля, не зависящих от пароля входа в систему для доступа к веб-странице.

Укажите местоположение файла пароля, а если он еще не существует, включите в команду ключ -c или create.

Замените имя пользователя на создаваемых юзеров.

# htpasswd -c /etc/httpd/conf/.htpasswd username

Для добавления другого пользователя не используйте параметр -c снова.

# htpasswd /etc/httpd/conf/.htpasswd username

2. Сделайте файл .htpasswd доступным для чтения всем пользователям.

Зависит от того, хотите ли вы предоставлять ли доступ для чтения всем или нет.

# chmod 644 /etc/httpd/conf/.htpasswd

3. Создайте файл .htaccess в каталоге (например, /var/www/html/test), к которому должен применяться парольный контроль.

Ниже приведен пример файла .htaccess:

# cat .htaccess
AuthUserFile /etc/httpd/conf/.htpasswd
AuthName "Restricted"
AuthType Basic
require user username

Помните, что этот пароль защищает каталог и все его подкаталоги.
— AuthUserFile сообщает Apache использовать файл .htpasswd.
— Требование инструкции пользователя сообщает Apache, что только пользовательское имя пользователя в файле .htpasswd должно иметь доступ. Если все пользователи .htpasswd должны иметь доступ, замените эту строку на «require valid-user».
— AuthType Basic инструктирует Apache принимать базовые незашифрованные пароли из веб-браузера удаленных пользователей.

# chmod 644 /var/www/html/test/.htaccess

5. Убедитесь, что файл /etc/httpd/conf/http.conf имеет опцию AllowOverride в директиве (/var/www/html/test).

# cat /etc/httpd/conf/http.conf
<Directory "/var/www/html/test">
   AllowOverride AuthConfig
</Directory>

6. Перезапустите Apache.

# service httpd restart

7. Попробуйте получить доступ к веб-сайту http://newsite.com/test/test.html, и он предложит ввести пароль.

cryptoparty

Cryptography is typically bypassed, not penetrated.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

5e7fa976b0640d40