Como posso definir a permissão padrão com o ACL no linux?

0

Eu tenho dois grupos group1 e group2 .

Eu preciso que group1 usuários possam ler e gravar arquivos (rwx) de usuários em group2 , mas os usuários em group2 não podem gravar em arquivos (r-x) de group1 .

Todos os usuários de um grupo podem ler, mas não gravar, arquivos no mesmo grupo (r-x)

Eu sei que posso usar o ACL (Access Control Lists) para lidar com isso.

setfacl -m g:group1:rwx "directory owned by a group2 user"

o problema é que deve ser definido para cada nova pasta. Existe uma maneira de definir como padrão para que cada novo arquivo / pasta group2 user's tenha essa permissão aplicada?

esse padrão será aplicado se eu criar um novo usuário em group2 ?

Eu sei que as permissões normais são copiadas de /etc/skel para a pasta inicial quando um novo usuário é criado, mas como fazer com que as permissões de acl sejam copiadas também?

    
por Kasama 16.04.2014 / 04:08

2 respostas

0

Para permissões padrão, é "-d". Então você pode usar isto:

setfacl -d -m g:group1:rwx "Main directory owned by group2 user"

Verifique também os direitos efetivos com o getfacl. Você pode ter que definir a máscara também.

    
por 01.07.2014 / 08:29
0

Você não precisa de ACLs.

Coloque todos os usuários do grupo1 também no grupo2. Em seguida, certifique-se de colocar o bit setgid nos diretórios: todos os novos arquivos pertencerão ao proprietário do diretório, com permissões semelhantes (o setgid será adicionado aos novos subdiretórios).

# Setup as root
mkdir -p /tmp/test/1
chgrp group1 /tmp/test/1
chmod g+wsx,o= /tmp/test/1
mkdir -p /tmp/test/2
chgrp group2 /tmp/test/2
chmod g+ws,o= /tmp/test/2
# user1 is in groups users (primary gid), group1, group2 
# user2 is in groups users (primary gid), group2
# as user1:users
mkdir -p /tmp/test/{1,2}/d1
touch /tmp/test/{1,2}/{f1,d1/f1}
# as user2:users
mkdir -p /tmp/test/{1,2}/d2
touch /tmp/test/{1,2}/{f2,d2/f2}
# check the ownerships on everything
ls -la /tmp/test/{1,2}/{f{1,2},d{1,2},d{1,2}/f{1,2}}

Se você quiser ficar com as ACLs, precisa ver as ACLs padrão, e você faz o mesmo com elas.

Quanto a adicionar novos usuários e /etc/skel/ , receio que você esteja sem sorte, pois o comando useradd do estoque não preserva ACLs ou xattrs ao copiar / etc / skel /.

    
por 16.04.2014 / 06:34