incapaz de gravar no ponto de montagem (nfs-server), recebendo "Permissão negada"

21

Estou tentando configurar NFSentre dois nós RHEL7:

primeiro nó:

[root@ip-10-164-175-246 ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 7.0 (Maipo)
[root@ip-10-164-175-246 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.el7.x86_64
[root@ip-10-164-175-246 ~]# cat /etc/exports
/var/www/html/  ip-10-184-161-46.ec2.internal(rw)
[root@ip-10-164-175-246 ~]# 

segundo nó:

[root@ip-10-184-161-46 ~]# mount ip-10-164-175-246.ec2.internal:/var/www/html/ /mnt/
[root@ip-10-184-161-46 ~]# touch /mnt/$$
touch: cannot touch ‘/mnt/3326’: Permission denied
[root@ip-10-184-161-46 ~]# 

Por que não consigo escrever nada /mnt/no NFS?

alexus
fonte
1
Tente alterar o (rw)em /etc/exportsque (rw,no_root_squash), fazendo um exportfs -avno servidor, em seguida, remontar o sistema de arquivos no cliente e tente novamente.
MadHatter apoia Monica

Respostas:

29

Sua exportação utiliza root_squash? Dos documentos do CentOS :

root_squash - Impede que os usuários root conectados remotamente tenham privilégios de root e atribui a eles o ID do usuário para o usuário nfsnobody. Isso efetivamente "esmaga" o poder do usuário raiz remoto para o usuário local mais baixo, impedindo alterações não autorizadas de arquivos no servidor remoto. Como alternativa, a opção no_root_squash desativa a esmagamento da raiz. Para esmagar todos os usuários remotos, incluindo o root, use a opção all_squash. Para especificar os IDs de usuário e grupo a serem usados ​​com usuários remotos de um host específico, use as opções anonuid e anongid, respectivamente. Nesse caso, uma conta de usuário especial pode ser criada para os usuários remotos do NFS compartilharem e especificarem (anonuid =, anongid =), onde é o número do ID do usuário e o número do ID do grupo.

Você precisará adicionar o sinalizador no_root_squashpara desativar isso, pois está ativado por padrão.

Christopher Karel
fonte
1
Obrigado, tudo funciona como esperado! Eu estava desaparecido no_root_squash, obrigado novamente!
8284 alexus
Encontrei esse artigo nos sites da RHEL: access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/… . Parece que não é seguro usar no_root_squash. Qual é a solução se queremos seguir suas recomendações?
Djidiouf 20/05
Basicamente, você deseja dar ao usuário 'ninguém' a capacidade de modificar os arquivos apropriados na montagem do NFS. Quando o usuário raiz é mapeado (compactado) para ninguém, ele ainda poderá modificá-lo. Como alternativa, acredito que o NFSv4 permite que você defina mapeamentos apropriados de contas locais / servidores.
Christopher Karel