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 grupogrupo1
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!