Объединенный сетевой / веб-ресурс: право собственности на файл и права доступа

Я использую комбинацию pyd.io и netatalk, чтобы мое удаленное хранилище было доступно дома и из любого места. Пока (чтение) все работает нормально, но сейчас - при попытке загрузить что-то в первый раз - у меня проблема, которая вызывает у меня головную боль.

Каталог /mnt/data через afpd (netatalk) как обычный пользователь pi (да, я начал с малины). Таким образом, владение файлом pi:pi, разрешения 755, Прекрасно работает: я могу читать и писать локально и с Mac через Netatalk.

Этот же каталог доступен через pyd.io через apache2. Чтение работает отлично, а запись - нет, так как apache запускается под пользователем www-data:www-data, Если я чмод к 777в целях тестирования новые файлы создаются в www-data:www-data владение (конечно). Но они тогда не доступны для записи пользователю pi через netatalk.

Я действительно не знаю, как решить эту проблему, так как объединение двух (запуск apache под pi или аналогичным) кажется очень небезопасным.

1 ответ

Решение

Я решил это с помощью следующих шагов:

  1. Создать новую группу (в моем случае shared-data)
  2. добавлять www-dataа также pi в группу
  3. Измените разрешения для общей папки на 664
  4. Сделать разрешения для новых папок одинаковыми chflags g+s -R /path
  5. Сделать разрешения для новых файлов одинаковыми с setacl
  6. Заставьте pyd.io создавать новые файлы и папки с 664
  7. Редактировать netatalk доли в /usr/local/etc/afp.conf: Добавлять file perm = 0664а также directory perm = 0664
  8. Перезапустите Apache и Netatalk
Другие вопросы по тегам