Configuração Completa de Compartilhamento no Samba (SMB)

· 3 minutos de leitura
Configuração Completa de Compartilhamento no Samba (SMB)
Photo by Umberto / Unsplash

Neste post, vamos abordar as configurações mais importantes de um compartilhamento SMB no arquivo de configuração smb.conf, detalhando cada opção e seus impactos.

Um arquivo típico de configuração de compartilhamento Samba se parece com isso:

  [documentos]
   path = /srv/samba/documentos
   browseable = yes
   read only = no
   valid users = @grupo_de_usuarios
   force user = nobody
   force group = grupo1
   create mask = 0664
   directory mask = 0775
   hosts allow = 192.168.1.0/24
   veto files = /*.tmp/*.bak/
   max connections = 10

Este exemplo cria um compartilhamento chamado documentos que:

  • É visível na rede.
  • Permite leitura e gravação.
  • É acessível apenas para membros do grupo grupo_de_usuarios.
  • Usa o usuário nobody e o grupo grupo1 para todos os arquivos criados.
  • Define permissões padrão de leitura/escrita para o grupo, mas leitura apenas para outros usuários.
  • Restringe o acesso a máquinas na rede 192.168.1.0/24.
  • Bloqueia arquivos temporários (*.tmp) e backups (*.bak).

Agora, vamos explorar cada um dos parâmetros em detalhes:

1. [documentos]

Este é o nome do compartilhamento. Os usuários vão vê-lo quando navegarem na rede ou montarem o compartilhamento. Você pode personalizar esse nome conforme necessário.

2. path

Este parâmetro define o caminho do diretório no servidor que será compartilhado. Certifique-se de que as permissões de sistema de arquivos (como as do Linux) estejam configuradas corretamente para permitir o acesso aos usuários especificados.

3. browseable

Controla se o compartilhamento será visível na lista de compartilhamentos da rede. Se configurado como no, o compartilhamento não aparecerá na navegação, mas ainda estará acessível se o nome for conhecido.

4. read only

Determina se o compartilhamento será somente leitura ou não. Para permitir gravação, configure-o como no.

5. valid users

Define quais usuários têm permissão para acessar o compartilhamento. Você pode listar usuários locais ou de um domínio AD, separando por vírgulas.

6. force user

Este parâmetro força todos os acessos a um compartilhamento a serem feitos como um determinado usuário, independentemente de quem realmente está se conectando. Isso é útil quando você quer que todos os arquivos criados sejam de propriedade de um usuário específico. No contexto do Samba, o nobody é frequentemente usado para forçar que todos os arquivos criados ou acessados em um compartilhamento sejam de um usuário sem privilégios elevados.

7. force group

Semelhante ao force user, força que os arquivos sejam criados com um grupo específico, independentemente do grupo real do usuário conectado.

8. create mask

Define as permissões padrão para novos arquivos criados no compartilhamento. As permissões são definidas em notação octal. Por exemplo, 0660 permite leitura e escrita para o proprietário e grupo, mas não dá permissões para outros usuários.

9. directory mask

Semelhante ao create mask, mas aplicado a novos diretórios. Um valor comum é 0770, que dá permissão total ao proprietário e grupo, mas bloqueia o acesso para outros.

10. hosts allow

Controla quais endereços IP ou redes podem acessar o compartilhamento. Você pode listar redes inteiras ou IPs específicos. Esse recurso é útil para aumentar a segurança, limitando o acesso a máquinas específicas.

11. hosts deny

O oposto de hosts allow. Você pode usar este parâmetro para bloquear IPs específicos de acessar o compartilhamento.

12. max connections

Define o número máximo de conexões simultâneas que o Samba permitirá a este compartilhamento. Se você deseja limitar a quantidade de usuários conectados a um recurso específico, este é o parâmetro que deve ser usado.

13. veto files

Este parâmetro impede que certos arquivos ou tipos de arquivos sejam vistos ou manipulados no compartilhamento. Isso é útil se você deseja bloquear arquivos temporários, como os criados por editores de texto (*.tmp) ou arquivos de backup (*~).

Conclusão

Cada uma dessas configurações desempenha um papel fundamental em como o Samba se comporta em uma rede. Dependendo das suas necessidades, você pode personalizar o arquivo smb.conf para garantir segurança, desempenho e a experiência do usuário desejada. Se você estiver implementando um servidor de arquivos em um ambiente corporativo, é crucial entender e aplicar essas configurações corretamente.

Se você tiver dúvidas ou sugestões, deixe seu comentário abaixo!