Como evitar qualquer ACL da montagem do NFS?

Como evitar qualquer ACL da montagem do NFS?

Estou tentando exportar/montar um volume NFS sem nenhuma ACL (POSIX ou NFS), mas falho nisso.

Contexto técnico: último debian atual em ambos os lados, volume ext4.

Objetivo: eu imponho acesso estrito usando ACLs POSIX no servidor, e os usuários podem (irão) acessar o volume em outra máquina, com NFS. Mas qualquer usuário que possua um diretório/arquivo pode alterar as ACLs, o que não é bom aqui. Portanto, quero evitar que os usuários alterem ACLs, e simplesmente remover os comandos get/setfacl não é uma boa maneira. Remover o suporte ACL no volume do lado do servidor não é bom…

Então minha pergunta:é possível impedir ACLs de uma montagem NFS, sem remover ACLs no volume do lado do servidor? Se sim, como isso pode ser realizado?

Testei usando no_acl/noacl sem sucesso: minhas exportações são feitas na versão NFSv3, com opção "no_acl". Em /etc/exportações:

/exports ip-of-client-during-tests(rw,sync,no_acl,no_subtree_check,fsid=0)
/exports/data ip-of-client-during-tests(rw,sync,no_acl,no_subtree_check)

Todos os serviços recarregados/reiniciados. Então eu monto no cliente com a opção "noacl" (qualquer que seja):

mount -t nfs -o noacl,vers=3 my-server:/exports/data/ /var/data/

que dá em /proc/mounts:

server-name:/exports/data/ /var/data nfs rw,relatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,noacl,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=server-ip,mountvers=3,mountport=53844,mountproto=udp,local_lock=none,addr=server-ip 0 0

E sou capaz de obter/definir ACLs no cliente usando get/setfacl em dir/files que possuo, e as alterações são visíveis no sistema de arquivos do servidor. Também tentei usar o NFSv4, sem alterações. Aliás, no servidor, não consigo ver a opção "no_acl" em /proc/fs/nfs/exports:

/exports/data   client-ip(rw,root_squash,sync,wdelay,no_subtree_check,uuid=0bac8439:e7e2488e:817358d2:f2c94b85,sec=1)

mesmo que esteja visível com exportfs -v:

/exports/data   client-ip(rw,wdelay,root_squash,no_subtree_check,no_acl,sec=sys,rw,root_squash,no_all_squash)

Responder1

Você pode desabilitar o suporte do lado do servidor compilando o kernel sem a CONFIG_NFSD_V3_ACLopção.

informação relacionada