Não sei se isso é "simples" o suficiente para você, mas isso pode ser feito usando ferramentas já incluídas no sistema.
Isso pode ser feito facilmente usando os comandos chmod
e chown
. Com chown
você pode definir a propriedade de arquivos e diretórios e com chmod
você pode definir permissões.
Como você pode querer que vários usuários acessem um único diretório, você precisa criar um grupo de usuários para ele e adicionar usuários a ele:
groupadd g_project_1
useradd -G g_project_1 user_1
#Repeat useradd for every user who is to access project_1
Agora, você define o grupo de proprietários de project_1
to g_project_1
(não sei se é necessário, mas você pode querer manter www-data
como o usuário de propriedade do diretório) para executar este comando:
chgrp g_project_1 project_1
Agora, você precisa definir as permissões de diretório como 0770 (rwx * para o usuário, rwx para o grupo e sem acesso para outras pessoas):
chmod 0770 project_1
Para garantir que os arquivos e diretórios dentro recebam a mesma propriedade na criação, execute também o seguinte comando:
chmod g+s project_1
Faça isso analogamente para outros diretórios e usuários do projeto. Por favor experimente primeiro um projeto fictício , pode ser que eu tenha cometido um erro ...
* A permissão executável em um diretório controla se alguém pode inseri-lo ( cd
), enquanto a permissão de leitura controla a visualização de seu conteúdo ( ls
)