Сервер Ubuntu 14 - Настройка запрос пароля пользователя перед загрузкой файла

У меня настроен сервер Ubuntu 14 (я использую стек LAMP), и в настоящее время на нем размещен созданный мной веб-сайт. Я загрузил туда zip-файл, и любой, у кого есть ссылка, может пойти и скачать его. Однако это может стать проблемой очень быстро. Предположим, файлы могут идти по пути, например:

homepage.com/src/file1.zip

Любой, у кого есть достаточно любопытства, может ввести homepage.com/src/ , просмотреть весь каталог и начать загрузку других файлов, которые он может там увидеть. Это также не мешает им попытаться получить доступ к другим папкам, таким как homepage.com/source/ , и просто попытаться выудить папки.

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

auth screen

Однако, перейдя к созданию AuthFiles, я не думаю, что смогу применить это к папке или файлу. Таким образом, подводя меня к моему основному вопросу:

Как я могу предложить пользователю ввести комбинацию имени пользователя и пароля, прежде чем он сможет загрузить файл?

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

Любая помощь и руководство приветствуются.

1
задан 26 September 2016 в 17:35
1 ответ

То, что вам нужно, называется .htaccess в apache.

Подробнее см. документацию Apache .

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

sudo htpasswd -c /etc/apache2/.htpasswd username

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

AuthType Basic
AuthName "Protected"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user

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

1
ответ дан 3 December 2019 в 23:40

Теги

Похожие вопросы