Por que eu tenho um NFS4 somente de leitura?

2

Lado do SERVIDOR NFS:

[USER@NFSSERVER ~]$ cat /etc/exports
/var/foo/logs 10.75.16.4(ro,sync)
/var/foobar 10.100.102.0/24(rw,sync)  
[USER@NFSSERVER ~]$ 

Lado do NFS CLIENT:

[root@NFSCLIENT ~]# grep nfs /etc/fstab 
10.100.102.34:/var/foobar /var/foobar nfs auto 0 0
[root@NFSCLIENT ~]# 

O NFS CLIENT está no 10.100.102.0/24

Outro NFS CLIENT pode gravar nesse diretório.

O problema:

[root@NFSCLIENT foobar]# touch testing
touch: cannot touch 'testing': Permission denied
[root@NFSCLIENT foobar]# 

Pergunta : Por que não temos permissão para escrever? FS montado como RW, ambos são RHEL 6, NFSv4.

    
por LoukiosValentine79 22.03.2016 / 19:16

1 resposta

3

Quando você exporta seu sistema de arquivos sem a opção no_root_squash , seu ID de usuário root é mapeado para "anônimo" ou "ninguém" no lado do servidor. Isso efetivamente nega suas permissões para escrever. É um padrão de senso comum para proteger contra ataques do tipo SUID através de montagens NFS, mas isso pode causar problemas como esse para aqueles não familiarizados com ele. Você pode acessar as NFs normalmente como um usuário não raiz (UID! = 0), ou você pode adicionar a opção no_root_squash a /etc/exports , reexportar a partir do servidor e montar novamente no cliente para obter permissão para gravar no sistema de arquivos montado como root no cliente.

    
por 22.03.2016 / 19:19

Tags