1

Я хочу предоставить пользователям личное хранилище для загрузки файлов в их домашний каталог через SFTP(chrooted). Затем эти файлы должны отображаться на нашем веб-сайте, чтобы решить, следует ли импортировать их в систему или нет. Таким образом, веб-сервер (пользователь www-данных) должен иметь права на чтение / запись.

Прямо сейчас я не могу получить www-данные, которые могут записывать / удалять эти файлы.

Прочитав много источников и ответов на эту проблему, я оказался в этой настройке:

  • Владельцы домашних каталогов: имя пользователя: www-data
  • Я использовал setgid для перезаписи группы каждого загруженного файла через SFTP
  • Я узнал, что я не могу активно устанавливать права доступа к файлам на стороне сервера, я могу только уменьшить использование umask

Как мне автоматически назначить разрешение «g +w» на каждый загруженный файл через SFTP, чтобы пользователь www-данных мог удалить их после того, как они были обработаны.

Что я пробовал до сих пор:

  • Играли в арсеналы с помощью масок (чтобы узнать, что никогда не увеличит права на файл)
  • Поиграл с ACL, но здесь та же проблема, кажется, правило
  • Используйте FTPS вместо SFTP, чтобы получить лучший контроль над такими вещами. Поэтому я использовал vsftpd, но даже при этом я не мог получить разрешение «g +w» для файлов

Что я не хочу:

  • Использование rsync или любого другого сервера (который может потерпеть неудачу) для синхронизации домашних папок с любой другой папкой при переводе надлежащих прав на файл.

Большое спасибо за любые советы!

0