Cliente Win10 NFS é um assassino do SAMBA?

Cliente Win10 NFS é um assassino do SAMBA?

Finalmente conseguimos o último de nossos recalcitrantes usuários do Windows 7 para o Windows 10 graças à recente retirada do suporte da MS ao primeiro, então toda a empresa agora é Ubuntu 18.04 ou Windows 10.

Como o Windows 10 tem um cliente NFS, a questão agora é abandonar o SAMBA em favor do NFS.

Especificamente, existe algum motivo para manter o SAMBA agora que todos os nossos clientes Windows suportam NFS?

Responder1

O SMB 3.xx tem um desempenho melhor ajustado em relação à conectividade TCP "genérica" ​​e possui recursos como RDMA e suporte multicanal que a Microsoft não implementou com o cliente NFS "seu" (na verdade - licenciado).

Responder2

O Server Message Block (SMB), o protocolo usado pelo software Samba, pode ser implementado mais facilmente com segurança suficiente. Network File System, abreviado como NFS, foi jocosamente chamado de "No File Security". Esse é o nome brincalhão, mas “Sem segurança em nível de arquivo” pode ser um nome com algumas implicações precisas. Em outras palavras, a segurança do NFS é baseada no compartilhamento de uma partição, não de um arquivo individual, portanto, as permissões em nível de arquivo não são impostas pelo protocolo NFS.

Pela minha leitura, é possível que um servidor NFS preste atenção aos arquivos e rejeite solicitações inválidas. No entanto, nem todos os softwares NFS farão isso. O protocolo tende a fazer com que o cliente solicite um bloco de dados em uma unidade, e um servidor pode atender a essa solicitação lendo o bloco do disco sem necessariamente exigir atenção a qual arquivo esse bloco faz parte.

Mesmo que você descubra que uma implementação do NFS é segura, o que impede a possibilidade de uma mudança futura resultar em uma implementação/implantação menos segura do NFS? Se você tiver preocupações de segurança, ter uma resposta para essa pergunta pode valer muito a pena.

Com o SMB, as pessoas compartilham diretórios em vez de partições. Isso pode ajudá-lo a ter certeza de que está compartilhando apenas um diretório desejado, e não outros diretórios localizados em uma parte diferente da hierarquia de uma unidade.

Edit: Aí vem um novo desafiante. Um comentário a esta resposta afirmou que isso está errado. Então, procurei alguma documentação consagrada que ajudasse a comprovar isso. E encontrei facilmente material que respalda as afirmações da minha resposta:

Em primeiro lugar,"Secure Networks Inc." postou um "Aviso de Segurança" de 7 de março de 1997, intitulado "4.4BSD NFS File Handles". (Esse hiperlink é do site do OpenBSD:SecList.org BugTraq Mailing List Archive de 1997: 4.4BSD NFS File Handlesmostra a mesma coisa postada como parte de uma lista de discussão antiga, mas adiciona um cabeçalho. PacketStormSecurity: Aviso sobre manipulação de arquivos SNI BSDtambém mostra o mesmo documento.)

Este artigo discute a natureza baseada em blocos de como o NFS atende dados (e é provavelmente a fonte do meu entendimento desta vulnerabilidade específica).

Esse documento foi hospedado por várias organizações. Aqui está um relatório diferente, aparentemente sem qualquer relação com esse documento: partes do"Por que o NFS é uma merda", por "Olaf Kirch" da "SUSE/Novell Inc."[e-mail protegido]dizer:

"O NFS não se importa se você exporta reiser, ext3 ou XFS, um CD ou DVD. Uma consequência direta disso é que o NFS precisa de um mecanismo bastante genérico para identificar os objetos que residem em um sistema de arquivos." ... "Apenas o servidor precisa entender o formato interno de um identificador de arquivo." ... "O Linux introduziu o conceito de cache de diretório, também conhecido como dcache. Uma entrada no dcache é chamada de dentry" ... "praticamente todas as funções na camada VFS esperam um dentry como argumento em vez de (ou além para) o objeto inode que eles costumavam usar." "Isso tornou as coisas interessantes para o servidor NFS, porque as informações do inode não são mais suficientes para criar algo que a camada VFS esteja disposta a operar" ... "os invasores poderiam interceptar um pacote com credenciais válidas e manipular a solicitação NFS para fazer seus próprios lances nefastos."

Quanto à minha afirmação sobre o apelido, https://news.ycombinator.com/item?id=10967064faz backup:

em 1987, era de conhecimento comum entre os engenheiros da Sun que NFS significava "No File Security"

A primeira tela traz algumas vulnerabilidades diferentes, incluindo confiar em alguém com base no nome do host relatado pelo computador cliente.

Google Books: material citado de "Um Guia Prático para Ubuntu Linux"notas:

A segurança padrão do NFS é marginal ou inexistente (uma piada comum é que NFS significa No File Security ou Nightmare File System), portanto tal acesso não deve ser permitido fora da sua rede para máquinas nas quais você não confia.

Seção eTutorials.org sobre configuração NFSnotas:

Se você montar seus sistemas de arquivos pela Internet, os arquivos transferidos poderão sofrer interferências e até mesmo serem adulterados a qualquer momento (algumas pessoas brincam que NFS é a abreviação de "No File Security").

informação relacionada