Compartilhando uma pasta através do NFSv4 e do Samba

1

Eu tenho alguns problemas para obter o direito de acesso adequado para trabalhar em uma pasta compartilhada por meio do samba e nfs. Conectado assim:

┌────────────┐    ┌──────────────┐    ┌──────────────┐
│ NFS-Server ├────┤ NFS Client   ├────┤ Samba Client │
│            │    │ Samba Server │    │              │
└────────────┘    └──────────────┘    └──────────────┘

A máquina no meio é uma máquina de desenvolvimento compartilhada (rodando Linux). Os clientes do Samba são geralmente o Windows. A razão pela qual isso é conectado assim é por causa da política de rede / firewall. Seria strongmente desencorajado acessar o servidor NFS diretamente pelo Samba.

Além disso, como um efeito colateral, essa configuração dá a todos o acesso do samba à máquina de desenvolvimento.

Os recursos exportados do NFS devem ser lidos / gravados por um grupo específico. Eu implementei isso usando ACLs Unix. Ao acessar o compartilhamento através da máquina de desenvolvimento (o cliente NFS) diretamente, isso já me causa problemas. Parece que o mask não está devidamente guardado.

Encontrei alguns recursos na Web sobre esse tópico, mas ainda tenho dificuldade em entender exatamente por que / como isso está acontecendo.

Também deparei com as ACLs do NFSv4 que são diferentes das ACLs que você definiu usando setfacl . Eu tentei brincar com esses também, mas executando o comando, me deu um erro:

[11:24:32] michel@BBS-extractor coftp $ nfs4_getfacl .
Operation to request attribute not supported.

Eu pensei que isso poderia ser um problema relacionado às opções de montagem. No entanto, o FS subjacente é um volume ext4 . O que não tem nada a ver com o NFS ... certo?

Alguém pode me explicar o que está acontecendo aqui? Por que o padrão mask é ignorado ao usar o NFS?

Como exemplo prático, deixe-me dar as ACLs da pasta raiz:

[11:30:26] michel@BBS-extractor coftp $ getfacl .
# file: .
# owner: coftp
# group: coftp
# flags: -s-
user::rwx
group::rwx
group:coftp:rwx
mask::rwx
other::r-x
default:user::rwx
default:group::rwx
default:group:coftp:rwx
default:mask::rwx
default:other::r-x

Depois de criar uma pasta chamada test na máquina remota, recebo isto:

[11:30:26] michel@BBS-extractor coftp $ getfacl test
# file: test
# owner: michel
# group: coftp
# flags: -s-
user::rwx
group::rwx                      #effective:r-x
group:coftp:rwx                 #effective:r-x
mask::r-x
other::r-x
default:user::rwx
default:group::rwx
default:group:coftp:rwx
default:mask::rwx
default:other::r-x

Isso mostra que o grupo "coftp" não terá acesso de gravação a esta pasta, embora na ACL na pasta raiz, ela deva ter. O motivo é o mask . A pasta raiz especifica uma máscara padrão, mas parece ser ignorada / alterada ao acessar a pasta via NFS.

    
por exhuma 30.10.2012 / 11:34

0 respostas