Шифруемся . Как закрыть доступ к файлам, к админке?

.htacces - help me!

Как сделать так, чтобы файл с сервера получить, или отдать по паролю. Скажем вам нужно чтобы прайс лист могли получать только зарегистрированные пользователи. Или .pdf документацию могли скачивать из определённой папки сервера, только пользователи знающие пароль от этой папки. Или вы сделали админку и желаете ограничить к ней доступ. Конечно вы можете запустить FTP сервер, если конечно умеете это делать. Но, предположим, такой возможности нет? Что же делать? Как быть? Такую возможность нам предоставляет сервер apache (Linux, Unix, Windows, — не суть).
Для того чтобы запаролить нужную директорию на сервере, или файл нам необходимы всего 2 файла:
.htaccess – файл находящийся в директории укажет Apache что необходимо использовать авторизацию
.htpasswd – файл может содержать в себе логины пользователей и хеши паролей – формат следующий:

olga:$1$WquaQ/CP$5935C2gAk7Af.MNuHB45v.
serg:$1$lx9ToJNt$GnkzyiiLOAx2FLhqa6SYh.

В этом примере два пользователя – olga, serg. Для “olga” пароль “pass”, и для “serg” пароль “pa$$”. Оба пароля зашифрованы при помощи MD5 (Unix). Не забудьте защитить этот файл, для этого кладём в директорию с файлом .htpasswd файл .htaccess, содержащий в себе:
<Files .htpasswd>
deny from all
</Files>
«deny from all» — этой строкой мы запрещаем всем доступ к нашему файлу

Файл с паролями .htpasswd может находиться в любой созданной директории на сервере, и полный путь к нему должен быть указан в файле .htaccess, именно «полный путь»!

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

AuthType Basic
AuthName «Only authorized users!»
AuthUserFile /home/helpset.ru/www/secret/.htpasswd
Require valid-user

—————————-

AuthUserFile содержит полный путь до файла .htpasswd

—————————-

AuthName «Only authorized users!»
В кавычках текст который увидит пользователь, обратившийся к данному файлу, или директории. Текст в кавычках может быть любой, на ваше усмотрение.

—————————-
AuthType Basic
Тип авторизации
—————————-

Require valid-user
Эта директива указывает Apache, что доступ имеют только те пользователи, которые прошли проверку . htpasswd

—————————-

Вот некоторые интересные директивы:

require group admins // Доступ имеют пользователи из группы admins
require user1 Admin olga serg //Только перечисленные пользователи имеют доступ.

Пример – запароливаем директорию:
AuthType Basic
AuthName «Only authorized users!»
AuthUserFile /home/helpset.ru/www/secret/.htpasswd
Require valid-user
Пример – запароливаем файл zip архивом:
<Files archiv.zip>
AuthType Basic
AuthName «Only authorized users!»
AuthUserFile /home/helpset.ru/www/secret/.htpasswd
Require valid-user
</Files>
Пример – закрываем доступ к типам файлов *.pdf
<Files “\.pdf$”>
AuthType Basic
AuthName «Only authorized users!»
AuthUserFile /home/helpset.ru/www/secret/.htpasswd
Require valid-user
</Files>

Если у вас есть доступ к консоли, или удаленный доступ по ssh, вы можете с помощью утилиты htpasswd создать пароли для различных пользователей. Эта программа, может создавать файлы, указываемые в директиве AuthUserFile.
Как описано выше создаваемый файл содержит строки вида логин:хеш.
Создается такой файл командой:

htpasswd -c .htpasswd user

Добавить нового пользователя или изменить пароль можно командой:

htpasswd .htpasswd user

Ну а если нету возможности сгенерировать пароли – вам в помощи интернет – зашифровать пароль MD5 , расшифровать

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