NFS Compartilhar com root para anonuid / anongid

4

Eu exportei um compartilhamento do meu servidor e defini anonuid e anongid para ser 0 (root). No entanto, quando eu monto o compartilhamento no cliente, ele não parece que minhas configurações estão funcionando porque estou recebendo permissão negada para pastas dentro do compartilhamento de propriedade do root.

Servidor CentOS 5.7 / Client CentOS 6.4 usando NFS version 3.2.29.

Aqui está meu / etc / exports em SERVER:

/STORAGE 10.0.5.10(rw,sync,no_subtree_check,no_root_squash,anonuid=0,anongid=0)

Basicamente, quando o cliente (10.0.5.10) se conecta ao servidor, eu preciso que ele se comporte como se fosse root no servidor. Obrigado antecipadamente pela ajuda!

    
por Jason 16.09.2013 / 16:09

2 respostas

7

Se você quiser que qualquer usuário no 10.0.5.10 apareça como root, você quer fazer isso:

/STORAGE 10.0.5.10(rw,sync,no_subtree_check,all_squash,anonuid=0,anongid=0)

all_squash diz ao NFS que, para qualquer usuário que se conecte de 10.0.5.10, ignore seu UID / GID real e os trate como se fosse UID = anonuid e GID = anongid. Desde que você defina anonuid=0,anongid=0 que concede a todos os usuários privilégios de acesso root 10.0.5.10 em /STORAGE , efetivamente ignorando toda a segurança em /STORAGE e deixando-a totalmente aberta ao abuso de qualquer pessoa que pareça vir do 10.0.5.10 endereço IP.

FWIW, esta é uma ideia terrível do ponto de vista da segurança.

Se você puder usar o NFSv4 no servidor, poderá ativar o mapeamento UID / GID e adicionar um mapa estático a /etc/idmapd.conf no servidor, informando que um usuário específico em 10.0.5.10 deve receber acesso root no NFSv4 servidor. man idmapd.conf para detalhes sobre a configuração do arquivo de configuração. Quando o arquivo de configuração estiver configurado no servidor NFSv4, atualize sua exportação:

/STORAGE 10.0.5.10(rw,sync,no_subtree_check,no_root_squash)

Você só deseja ativar o mapeamento, limpar o cache do idmap e reiniciar o serviço de mapas:

echo N > /sys/module/nfs/parameters/nfs4_disable_idmapping
nfsidmap -c
service rpcidmapd restart

Se você fizer isso, estará apenas fornecendo um acesso root ao usuário, não a todos os usuários.

    
por 30.10.2015 / 20:27
3

Primeiro de tudo, você deve atualizar para o NFS4, já que as coisas se comportam de maneira ligeiramente diferente em cada versão.

Em vez de no_root_squash , você precisará usar root_squash ou all_squash - este é o único parâmetro relevante em relação a essa questão.

all_squash faz com que qualquer cliente conectado a esse compartilhamento use o ID fornecido nos parâmetros anonuid / anongid .

    
por 26.07.2014 / 01:03

Tags