Permissão de compartilhamento de grupo para clientes Windows?

3

Na nossa rede doméstica, temos o Ubuntu 10.4 amd64 Desktop funcionando como um servidor de arquivos e alguns laptops WinXP. O Ubuntu não está configurado como um servidor de domínio, os nomes de usuário e as senhas são sincronizados manualmente em todas as máquinas.

Qual é a maneira correta de configurar um espaço compartilhado para os clientes Windows para que os membros do grupo Pais, e somente os Pais, tenham acesso de leitura e gravação ao seu conteúdo?

Eu pensei que tinha feito isso, mas quando papai cria ou grava um arquivo no \ server \ share-parents \ mom, o acesso de gravação ao mesmo é revogado, vice-versa. Isso cria todos os tipos de estragos quando o arquivo é a planilha de despesas da família e as alterações da casa estão tão perto de soprar o orçamento do ano e o pagamento do cartão de crédito é devido ... recursivamente chown'ing para: pais e chmod'ing g + w já não mantém o bacon fora do fogo?

A seção compartilhada smb.conf:

[global]
# other stuff edited out
security = user

[share-parents]
comment = parents shared files
available = yes
browseable = yes
public = yes
valid users = mom, dad
writable = yes
path=/home/shared
follow symlinks = yes
    
por matt wilkie 14.09.2010 / 02:55

1 resposta

2

Este é um problema de permissão, que você pode resolver por:

1) dizendo ao Samba para forçar algumas permissões específicas (por exemplo, 664 ) em todos os arquivos no compartilhamento: a solução relevante é discutida aqui: link

Tudo se resume a: supondo que você quer que tudo seja lido + escreva para "pais" e somente leitura para todos os outros, adicione as seguintes linhas você [parents] compartilhar configuração:

  force create mode = 0664
  force security mode = 0664 
  force directory mode = 0775

Cada bit definido como 1 em um dos modos "force *" será definido por SAMBA no arquivo, independentemente do que os clientes do Windows solicitem.

2) Use a configuração security mask para proibir a limpeza do bit de gravação de grupo (os bits definidos para 1 na "máscara de segurança" podem ser manipulado por clientes Windows):

   security mask = 757

Assim, depois de definir um arquivo g+w do Linux, ele nunca poderá ser alterado de volta do Windows.

Uma explicação mais detalhada dos parâmetros relevantes é dada em: link

Independentemente da solução escolhida, você também pode querer forçar todos arquivos no compartilhamento para pertencer ao grupo UNIX parents :

  force group = parents

Qualquer uma das duas opções deve funcionar; eles são compatíveis para que você possa também optar por implementar os dois ao mesmo tempo.

    
por Riccardo Murri 14.09.2010 / 10:44