Crie uma pasta compartilhada no Windows Server, configure permissões NTFS por grupo com icacls, restrinja o SMB à rede interna e desative o SMBv1.

Para que serve

Este artigo mostra como criar uma pasta compartilhada no Windows Server e usar permissões NTFS para controlar quem lê e quem altera os arquivos, evitando os dois erros mais comuns: dar "Controle total para Todos" e expor o compartilhamento (porta 445) à internet.

Permissões de compartilhamento e permissões NTFS: como se combinam

Existem duas camadas independentes:

  • Permissões de compartilhamento: valem só para quem acessa pela rede (\\servidor\pasta). São três opções simples: Leitura, Alteração e Controle total.
  • Permissões NTFS: valem sempre, inclusive para quem está logado no próprio servidor (por exemplo, usuários de RDS). São detalhadas e herdadas pelas subpastas.

Quando alguém acessa pela rede, vale a mais restritiva das duas. A prática recomendada é deixar o compartilhamento aberto para usuários autenticados e controlar tudo pelo NTFS, em um só lugar.

Pré-requisitos

  • Windows Server 2022/2025 com acesso de administrador.
  • Usuários e grupos criados, locais ou do Active Directory. Dê permissão a grupos, nunca a usuários individuais.
  • Um volume separado para dados (por exemplo D:), e não o disco do sistema.
  • Os usuários acessando de dentro da sua rede: VMs na mesma rede, VPN ou o próprio servidor RDS.
Nunca libere a porta 445 (SMB) para a internet. Ela é varrida por robôs o tempo todo, foi o vetor do WannaCry e ainda é usada para roubar senhas. Usuários externos devem acessar por VPN; veja também o artigo «Como instalar um servidor VPN WireGuard em uma VM no Proxmox (Debian/Ubuntu)».

Passo a passo

1. Criar os grupos

Exemplo com grupos locais (em domínio, use New-ADGroup):

New-LocalGroup -Name "Financeiro-Leitura"
New-LocalGroup -Name "Financeiro-Edicao"
Add-LocalGroupMember -Group "Financeiro-Edicao" -Member "maria"
Add-LocalGroupMember -Group "Financeiro-Leitura" -Member "joao"

2. Criar a pasta e definir as permissões NTFS

New-Item -Path "D:\Dados\Financeiro" -ItemType Directory

# Remove a herança e começa do zero
icacls "D:\Dados\Financeiro" /inheritance:r

# Administradores e SYSTEM com controle total
icacls "D:\Dados\Financeiro" /grant "*S-1-5-32-544:(OI)(CI)F" "*S-1-5-18:(OI)(CI)F"

# Grupo de edição pode modificar; grupo de leitura só lê
icacls "D:\Dados\Financeiro" /grant "Financeiro-Edicao:(OI)(CI)M"
icacls "D:\Dados\Financeiro" /grant "Financeiro-Leitura:(OI)(CI)RX"

O que significa cada parte:

  • (OI)(CI): a permissão vale para os arquivos e as subpastas.
  • F = controle total, M = modificar (criar, alterar, apagar), RX = ler e executar.
  • *S-1-5-32-544 e *S-1-5-18 são os identificadores fixos de Administradores e SYSTEM. Assim o comando funciona em Windows em qualquer idioma.

Evite dar F a usuários comuns: com controle total, eles podem alterar as permissões e tomar posse dos arquivos.

3. Criar o compartilhamento

Os nomes dos grupos internos mudam conforme o idioma do Windows, por isso o script primeiro obtém o nome correto a partir do identificador fixo:

$adm  = ([Security.Principal.SecurityIdentifier]'S-1-5-32-544').Translate([Security.Principal.NTAccount]).Value
$auth = ([Security.Principal.SecurityIdentifier]'S-1-5-11').Translate([Security.Principal.NTAccount]).Value

New-SmbShare -Name "Financeiro" -Path "D:\Dados\Financeiro" `
  -FullAccess $adm -ChangeAccess $auth `
  -FolderEnumerationMode AccessBased -EncryptData $true
  • S-1-5-11 é o grupo "Usuários Autenticados". O controle fino fica por conta do NTFS.
  • -FolderEnumerationMode AccessBased esconde pastas que o usuário não tem permissão para abrir.
  • -EncryptData $true criptografa o tráfego SMB. Clientes Windows 8/Server 2012 ou mais novos suportam.

4. Liberar o acesso só para a rede interna

Restrinja as regras de compartilhamento de arquivos à sua rede interna ou à faixa da VPN:

Get-NetFirewallRule -Group "@FirewallAPI.dll,-28502" | Set-NetFirewallRule -RemoteAddress 10.10.10.0/24,10.8.0.0/24
Get-NetFirewallRule -Group "@FirewallAPI.dll,-28502" | Enable-NetFirewallRule

5. Confirmar que o SMBv1 está desligado

Get-SmbServerConfiguration | Select-Object EnableSMB1Protocol, EnableSMB2Protocol

O resultado esperado é False para SMB1. Se aparecer True, desative com Set-SmbServerConfiguration -EnableSMB1Protocol $false.

Como saber se funcionou

Get-SmbShare -Name Financeiro
Get-SmbShareAccess -Name Financeiro
icacls "D:\Dados\Financeiro"

De outra máquina da rede, mapeie a pasta com um usuário de cada grupo:

net use F: \\10.10.10.20\Financeiro /user:SERVIDOR\joao

O "joao" deve abrir os arquivos, mas receber "Acesso negado" ao tentar salvar. A "maria" deve conseguir criar e alterar.

Para ver quem está com arquivos abertos agora: Get-SmbOpenFile e Get-SmbSession.

Problemas comuns

  • "Acesso negado" mesmo com a permissão dada: lembre que vale a mais restritiva entre compartilhamento e NTFS. Além disso, o usuário precisa fazer logoff e logon (ou reconectar o mapeamento) para que a mudança de grupo tenha efeito.
  • Usuário apagou o que não devia: troque M por permissões mais específicas e ative as Cópias de Sombra (Shadow Copies) no volume para recuperar versões anteriores pela aba "Versões anteriores". As cópias de sombra não substituem o backup.
  • Não acha o servidor pelo nome: use o IP ou garanta que o DNS (ou o AD) resolva o nome.
  • Muito lento por VPN: SMB sofre com latência alta. Para quem está longe, considere acessar os arquivos por dentro de uma sessão RDS.
  • Erro ao usar credenciais diferentes no mesmo servidor: o Windows não permite duas credenciais para o mesmo host ao mesmo tempo. Desconecte todos os mapeamentos com net use * /delete e tente de novo.

Para aplicar o mesmo princípio a contas de serviço e administradores, veja também o artigo «Privilégio mínimo: como criar contas de serviço e permissões seguras no Linux, Proxmox e Windows».

Perguntas frequentes

Qual a diferença entre permissão de compartilhamento e permissão NTFS?

A de compartilhamento só vale para acessos pela rede; a NTFS vale sempre, inclusive para quem está logado no servidor. Pela rede, prevalece a mais restritiva das duas.

Posso liberar a porta 445 para acessar os arquivos pela internet?

Não. A porta 445 é varrida o tempo todo e é usada em ataques como o do WannaCry. Usuários externos devem acessar por VPN ou por uma sessão RDS.

Como ver quem está com um arquivo aberto no servidor?

Use Get-SmbOpenFile para listar os arquivos abertos e Get-SmbSession para ver as sessões conectadas.

Por que o usuário continua sem acesso depois de entrar no grupo?

A participação em grupos só é atualizada em um novo logon. Peça para o usuário sair e entrar de novo, ou reconectar o mapeamento da unidade.

Leitura complementar

Precisa de ajuda? Abra um ticket na área do cliente ou fale com o suporte pelo WhatsApp.

Esta resposta lhe foi útil? 0 Usuários acharam útil (0 Votos)

Leia também