5.4. Protegendo o NFS

O Sistema de Arquivo de Rede (Network File System ou NFS) é um serviço RPC, usado em conjunto com o portmap e outros serviços relacionados, para oferecer sistemas de arquivo acessíveis para máquinas-cliente. Para mais informações sobre o funcionamento do NFS, consulte o capítulo entitulado Sistema de Arquivo de Rede (NFS) no Guia de Referência do Red Hat Enterprise Linux. Para mais informações sobre o NFS, consulte o Guia de Administração de Sistemas do Red Hat Enterprise Linux. As sub-seções a seguir assumem um conhecimento básico do NFS.

ImportanteImportante
 

É recomendado que qualquer um planejando implementar um servidor NFS, primeiramente proteja o serviço portmap, como descrito em Seção 5.2, antes de resolver as seguintes questões.

5.4.1. Planejar Cuidadosamente a Rede

Como o NFS passa todas as informações sem criptografia através da rede, é importante que o serviço seja executado por trás de um firewall e numa rede segmentada e segura. Toda vez que informações são passadas através do NFS em uma rede insegura, seus riscos estão sendo interceptados. Um planejamento cuidadoso da rede neste aspecto pode ajudar a prevenir violações à segurança.

5.4.2. Cuidado com Erros de Sintaxe

O servidor NFS determina quais sistemas de arquivo e quais máquinas exportar para estes diretórios através do arquivo /etc/exports. Cuidado para não adicionar espaços extras ao editar este arquivo.

Por exemplo: a linha a seguir no arquivo /etc/exports compartilha o diretório /tmp/nfs/ com a máquina bob.example.com com permissões leitura e escrita.

/tmp/nfs/     bob.example.com(rw)

Por outro lado, esta linha do arquivo /etc/exports compartilha o mesmo diretório com a máquina bob.example.com com permissão somente-leitura, e o compartilha com o mundo com permissões leitura e escrita devido um único caracter de espaço após o nome da máquina (hostname).

/tmp/nfs/     bob.example.com (rw)

É bom praticar a verificação de todos os compartilhamentos do NFS usando o comando showmount para checar o que foi compartilhado.

showmount -e <hostname>

5.4.3. Não Use a Opção no_root_squash

Por default, as partilhas do NFS alteram o usuário root para o usuário nfsnobody, uma conta de usuário sem privilégios. Desta maneira, todos os arquivos criados por root são de propriedade (owner) do usuário nfsnobody, o que previne o upload de programas com as informações do conjunto de ids do usuário.

Se no_root_squash é usado, os usuários root remotos poderão alterar qualquer arquivo do sistema de arquivo compartilhado e deixar aplicações infectadas pelo trojan, para que outros usuários as executem inadvertidamente.