Hierarquia de permissão possível no OpenSolaris + ZFS + ACLs?

4

Estou pesquisando o OpenSolaris e o ZFS para uso em um NAS.

Até agora eu criei o seguinte:

/tank/projects

/tank/storage

/tank/developer

/tank/sandbox

O espaço total alocado para o tanque é de 3,4 TB (RAIDZ2). Os desenvolvedores montam é o nosso repositório Subversion, ele deve ser bloqueado para que apenas os administradores tenham acesso a esse conteúdo mais os do grupo suDevelopers.

SandBox é uma área de jogo, é tudo de portas abertas, leia / escreva / exclua o que quer que seja.

Eu estou querendo saber como conseguir o seguinte, se eu teria que usar ACLs ou apenas permissões padrão do Unix.

Existem três grupos principais de usuários deste NAS, isso está na hierarquia de usuários. Não há anúncios ou qualquer outra coisa além do CIFS para compartilhar este NAS.

  • suDevelopers Eles têm acesso a todo o conteúdo no tanque.

  • suStaff Esses usuários são os funcionários das instalações, eles devem ter acesso a tudo, exceto ao desenvolvedor zfs no tanque.

  • suContratores Esses usuários só podem ver a pasta Armazenamento e não conseguir acessar os outros.

O problema é que alguns arquivos na área de armazenamento contêm informações confidenciais (números de série, chaves de licença) que não queremos que os contratantes vejam. Podemos definir essas permissões no Windows pelo usuário que colocou o arquivo lá e elas serão automaticamente definidas no lugar certo?

Não sei como fazer o acima corretamente e se são ACLs ou apenas CHMOD que devo usar.

    
por Leah Calum 25.10.2009 / 02:07

1 resposta

3

Bem, quer você use permissões tradicionais ou ACLs POSIX, você estará usando chmod no Solaris. Sugiro que você use ACLs neste caso. Você terá que aplicar o ACL separadamente a cada sistema de arquivos no pool de armazenamento do tanque. Eu sugiro configurar as propriedades aclmode e aclinherit de cada sistema de arquivos para passthrough também.

Acho que é preferível definir as ACLs no lado do Solaris, em vez de fazê-lo no Windows.

Basicamente, seria algo parecido com:

chmod -R A=\
group:suDevelopers:full_set,\
group:sysadmins:full_set,\
/tank/projects

chmod -R A=\
group:suDevelopers:full_set:allow,\
group:suStaff:full_set:allow,\
group:suContractors:full_set:allow
/tank/storage

chmod -R A=everyone@:full_set:allow /tank/sandbox

e etc, conforme necessário. Você também pode usar read_set para permissões somente leitura.

Há muitas outras maneiras de cortar coisas com ACLs, elas são um sistema extremamente poderoso no Solaris. Você pode ler man chmod e man zfs para detalhes.

Há também este artigo , que dá mais detalhes exemplos.

Verifique também se você está usando /usr/bin/chmod em vez de /usr/gnu/bin/chmod , o que acredito ser o padrão.

    
por 25.10.2009 / 19:48