![Как создать FTP-папку, которую сможет видеть другой пользователь?](https://rvso.com/image/1568309/%D0%9A%D0%B0%D0%BA%20%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D1%82%D1%8C%20FTP-%D0%BF%D0%B0%D0%BF%D0%BA%D1%83%2C%20%D0%BA%D0%BE%D1%82%D0%BE%D1%80%D1%83%D1%8E%20%D1%81%D0%BC%D0%BE%D0%B6%D0%B5%D1%82%20%D0%B2%D0%B8%D0%B4%D0%B5%D1%82%D1%8C%20%D0%B4%D1%80%D1%83%D0%B3%D0%BE%D0%B9%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%3F.png)
Отказ от ответственности, не буду врать, я снова поднимаю вопрос, который не мог решить раньше.
В Linux я хочу создать dropbox, где пользователь FTP может записывать файлы (пользователь A), но не видеть их впоследствии, в то время как другой пользователь (пользователь B) может читать и управлять этими файлами. Я пробовал группы, я пробовал изменять umask для пользователя A до 777, но в конце концов, когда пользователь A записывает файл на сервер, только пользователь A имеет права на него. Да, у пользователя B есть права на каталог, но не на файлы, которые пользователь A сбрасывает в каталог.
Пользователь B запускает скрипт Perl, который обрабатывает данные в файлах, и пока он работает только если я запускаю скрипт Perl каквс, но мы знаем, что это опасно.
Я понятия не имею, что я делаю не так, но уверен, что это простая вещь. Это конфигурация ftp-пользователей? Права доступа к каталогам? Это сводит меня с ума,
Спасибо,
решение1
Umasks (в файле профиля) редко работают вне сеанса оболочки (в FTP или sFTP), если только используемая вами программа не имеет собственной реализации Umask.
Если вы используете файловую систему, которая поддерживает ACL (и смонтирована с включенными ACL), вы можете установить разрешение по умолчанию для каталога Dropbox, чтобы пользователь UserB всегда имел доступ к новым файлам.
setfacl -m -d user:userB:rwx /path/to/dropbox
-m
заключается в изменении существующих списков контроля доступа (работает и при запуске с чистого листа)
-d
заключается в установке разрешения по умолчанию (применимо только к каталогам), чтобы все новые файлы наследовали набор разрешений.
user:userB:rwx
первый «пользователь» указывает, что вы устанавливаете разрешения для пользователя (а не для группы), userB — это имя пользователя, которому нужно предоставить доступ, а rwx — это разрешения, которые вы предоставляете (чтение/запись/выполнение).
решение2
Закрываю этот вопрос, потому что понял, что есть umask для пользователей FTP, а также другой набор umask для пользователей на сервере. Однажды я изменил umask пользователя FTP, чтобы дать другим право читать файлы, которые пользователь FTP сбрасывает в dropbox.