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.
![]() | Importante |
---|---|
É 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. |
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.
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> |
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.