@MistikFox

Как разделить права доступа Nginx к каталогам пользователей WebDav?

Добрый день. У меня стоит задача - разработать управление пользователями WebDaV с веб-сервером Nginx. Я настроил nginx для работы с webdav, проверил работоспособность, всё нормально. Затем было необходимо чтобы каждый пользователь, что авторизуется через файл htpasswd создавался отдельным каталогом в директории `srv/webdav`. То есть нужно, чтобы пользователь `user` вводил команду `curl --user 'user:123' -T /home/user/Desktop/file.txt 'localhost/webdav/file.txt', и его файл с рабочего стола перемещался в директорию `srv/webdav/user/`. Но возникает проблема в том, что любой авторизованный через веб-сервер пользователь может работать с файлами другого пользователя. Я пытался создать ручным методом каталог с именем пользователя и задать user`у привилегии на использование каталога через команды `chown user /srv/webdav/user` и 'chmod 700 user /srv/webdav/user', но после только один пользователь конечно и будет иметь доступ к этому каталогу, а если пытаться выполнить команду curl, то у nginx просто нет прав на запись файла, хоть команда и выполняется от имени пользователя. Подскажите, как сделать эти ограничения.
  • Вопрос задан
  • 409 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Karpion
Если "пользователь, что авторизуется через файл htpasswd" - это значит, он авторизуется не в системе. А значит, права доступа к файлу (chown, chmod, это вот всё) Вам не помогут.

Я не понял, что значит "user" в Ваших командах. Это конкретное имя юзера?

Если "каждый пользователь авторизуется через файл htpasswd - создаваётся отдельным каталогом в директории `srv/webdav`", то в этом каталоге надо создавать файл .htpasswd и в нём прописывать права доступа по юзерам - но не системным, а которые "авторизуются через файл htpasswd".

Надеюсь, я понятно объяснил.
Ответ написан
Как мы понимаем, конечная цель - настроить авторизацию в nginx, которая берёт пароли из разных каталогов пользователей и проверяет их подлинность в зависимости от авторизации.
Попробуйте ознакомиться с мануалами:
https://hamsterden.ru/nginx-password-htaccess/
https://blog.listratenkov.com/kak-nastroit-bazovuj...
https://www.8host.com/blog/nastrojka-avtorizacii-n...

Для настройки разных прав пользователей может пригодиться:
https://interface31.ru/forum/index.php?topic=230.0
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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