Пользователь, член группы и разрешения

У меня есть user1 , который является членом группы www-data .

$ groups user1
> user1 : user1 www-data

Я не могу добавить / удалить что-то в / var / www / test

/ var / www / test принадлежит www-data

$ ls -l /var/www/test
> drwxr-sr-x 2 www-data www-data 4096 aug 11 12:02 subtest

Как разрешить user1 управлять файлами и каталогами, созданными www-data ?


Я уже пытался

  • Измените основную группу user1 на www-data
  • Logout / login
0
задан 11 August 2016 в 15:11
2 ответа

Наконец-то я нашел что-то более чистое

Добавление веб-каталога в личный каталог пользователя

mkdir -p /home/user1/websites/appOfUser1
chown -Rf user1:user1/home/devone/websites
chmod -Rf 770 /home/user1/websites

Затем добавление этой строки: / etc / fstab (предварительно установите bindfs)

bindfs#/var/www/application1 /home/user1/websites/appOfUser1 fuse force-user=user1,force-group=user1,create-for-user=www-data,create-for-group=www-data,create-with-perms=0770,chgrp-ignore,chown-ignore,chmod-ignore 0 0  

И наконец, смонтируйте его!

mount /home/user1/websites/appOfUser1
  • он решает проблему параллелизма, поскольку каждый пользователь в уравнении (каждый разработчик и веб-сервер) видит разрешения, необходимые для правильной и безопасной работы;

  • он решает проблему непроницаемости, как если бы вам нужен один разработчик для доступа к конкретному приложению, вы должны добавить точку монтирования в его домашний каталог, но, наоборот, если вам нужен один разработчик, чтобы не получить доступ к определенному приложению, вам просто не нужно добавлять в него такую ​​точку монтирования. домашний каталог.

  • он решает проблему стабильности, поскольку разработчики никогда не смогут изменить права доступа к файлам, установленные для файлов приложения, как того требует веб-сервер для правильной и безопасной работы.

  • Лучше всего, это просто разобраться и настроить!

Источник

0
ответ дан 4 December 2019 в 16:32

Попробуйте следующее:

sudo chgrp -R www-data /var/www/test
sudo chmod -R g+w /var/www/test

Дополнительно:

sudo find /var/www/test -type d -exec chmod 2775 {} \; 

sudo find /var/www/test -type f -exec chmod ug+rw {} \;

Надеюсь, вы понимаете значение приведенной выше команды, поскольку они довольно ясны.

Не забудьте выйти / войти.

1
ответ дан 4 December 2019 в 16:32

Теги

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