Exemplo de smb.conf
[global]
# Grupo de trabalho/ Domínio
Workgroup = ORION
# Nome da maquina do ambiente de rede
Netbios name = ORION
# Comentário no ambiente de rede
Server string = Servidor de Arquivos Samba
#Verifica de tempo em tempo se as estações Windows estão respondendo
Keepalive = 20
# Para evitar que senhas sejam descobertas através de análise de pacotes circulando na rede
Encrypt passwords = Yes
# Tamanho mínimo da senha
min passwd length = 4
# Problemas com a sincronização em maquinas Windows 2000
Unix password sync = Yes
# Local do arquivo de log
Log file = /samba/log/%U.%m
# Tamanho Máximo de arquivos de log
Max log size = 450
# Melhor Desempenho
Socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
# Arquivo de lote que será executado no logon
Logon script = netlogon.bat
# Segurança por usuário, vai permitir que o usuário logue-se em qualquer estação configurada.
Security = user
# Domain logon vai permitir que sejam feitos logons no samba
Domain logons = Yes
# SO level é um valor que é usado na disputa pelo PDC, servidores Windows usam o valor 32.
OS level = 100
Preferred master = Yes
# Mestre do domínio
Domain master = Yes
# IPs de conexão ao samba
Hosts allow = 192.168. 127.0.0.1
Interfaces = 192.168.1.1
# Carregar ou não impressoras
Load printers = no
# Para que os arquivos criados fiquem em minúsculo
Preserve case = no
Short preserve case = no
Default case = lower
# Diretório onde ficara o arquivo de lote definido acima
Logon path = /samba/netlogon
[Netlogon]
Comment = Network Logon Service
Path = /samba/netlogon
Guest ok = Yes
Browseable = No
# Diretório /usuario, somente o dono do mesmo pode acessar.
[Homes]
Comment = Homes Directories
Path = /samba/home/%U
Valid users = %U
Guest ok = Yes
Force create mode = 0755
Force directory mode = 0755
Browseable = No
Depois de configurar o arquivo, verifique se a conta root do sistema foi cadastrada no Samba e se as senhas estão iguais. Caso necessário, use o comando "smbpasswd -a root" para cadastrar o root.
Aproveite para criar a pasta "/samba/netlogon" e configurar corretamente as permissões:
# Mkdir -p /samba/netlogon
# Chmod 775 /samba/netlogon
Com o "775" estamos permitindo que além do root, outros usuários que você adicionar no grupo possam alterar o conteúdo da pasta. Isso pode ser útil caso existam outros administradores de rede além de você.
Cadastre agora os logins dos usuários, com as senhas que eles utilizarão para se logar a partir das máquinas Windows. Neste caso não é preciso se preocupar em manter as senhas em sincronismo entre o servidor e as estações. Na verdade, as contas que criamos aqui não precisam sequer existirem nas estações, pois o login será feito no servidor. Para adicionar um usuário de teste "halfling", use os comandos:
# adduser halfling
# smbpasswd -a halfling
Por último, é necessário criar o arquivo "/samba/netlogon/netlogon.bat", um script que é lido e executado pelos clientes ao fazer logon. Você pode fazer muitas coisas através dele, mas um exemplo de arquivo funcional é:
Net use H: \\fileserver\homes
Net use P: \\fileserver\publico
Net time \\fileserver /set /y
Este script faz com que a pasta home de cada usuário (compartilhada pelo Samba através da seção "homes") seja automaticamente mapeada como a unidade "H:" no cliente, o que pode ser bastante útil para backups, por exemplo. Naturalmente, cada usuário tem acesso apenas a seu próprio home.
A segunda linha é um exemplo de como fazer com que determinados compartilhamentos do servidor sejam mapeados no cliente. O "net use x: \\192.168.10.1\publico" faz com que o compartilhamento "arquivos" (que precisaria ser configurado no smb.conf) seja mapeado como o drive "P:" nos clientes. A terceira linha sincroniza o relógio do cliente com o do servidor.
Lembre-se que o "fileserver" dentro do netlogon.bat deve ser substituído pelo nome do seu servidor Samba, configurado na opção "netbios name =" do smb.conf.
Mais uma configuração útil (porém opcional) é fazer com que o servidor armazene os arquivos e configurações do usuário (recurso chamado Roaming Profiles), fornecendo-os à estação no momento em que o usuário faz logon. Isto permite que o usuário possa trabalhar em outras máquinas da rede e faz com que seus arquivos de trabalho sejam armazenados no servidor, diminuindo a possibilidade de perda de dados.
Por outro lado, isto faz com que seja consumido mais espaço de armazenamento do servidor e aumenta o tráfego da rede, já que os arquivos precisam ser transferidos para a estação a cada logon. Isto pode tornar-se um problema caso os usuários da rede tenham o hábito de salhome muitos arquivos grandes na área de trabalho.
Note que o servidor não armazena todos os arquivos do usuário, apenas as configurações, entradas do menu iniciar, cookies, bookmarks e arquivos temporários do IE e o conteúdo das pastas Desktop, Modelos e Meus Documentos.
[publico]
comment = Diretorio Publico
path = /samba/publico
available = yes
public = yes
browseable = yes
writable = yes
guest ok = yes
force create mode = 777
force directory mode = 777
[aplicativos]
comment = Diretorio de Aplicativos
path = /samba/aplicativos
available = yes
public = yes
browseable = yes
writable = no
guest ok = yes
force create mode = 775
force directory mode = 775
# Compartilhamentos da empresa
[almoxarifado]
comment = Diretorio de Almoxarifado
path = /samba/almoxarifado
valid users = @almoxarifado
writeable = Yes
write list = @almoxarifado
force user = almoxarifado
force group = almoxarifado
browseable = no
[assistencia]
comment = Diretorio de Assitencia
path = /samba/assistencia
valid users = @assistencia
writeable = Yes
write list = @assistencia
force user = assistencia
force group = assistencia
browseable = no
[compras]
comment = Diretorio de Compras
path = /samba/compras
valid users = @compras
writeable = Yes
write list = @compras
force user = compras
force group = compras
browseable = no
[diretoria]
comment = Diretorio de Diretoria
path = /samba/diretoria
valid users = @diretoria
writeable = Yes
write list = @diretoria
force group = diretoria
force user = diretoria
browseable = no
[financeiro]
comment = Diretorio de Financeiro
path = /samba/financeiro
valid users = @financeiro
writeable = Yes
write list = @financeiro
force group = financeiro
force user = financeiro
browseable = no
[pessoal]
comment = Diretorio de Departamento Pessoal
path = /samba/pessoal
browseable = no
valid users = @pessoal
writeable = Yes
write list = pessoal
force group = pessoal
[producao]
comment = Diretorio de Producao
path = /samba/producao
valid users = @producao
writeable = Yes
write list = @producao
force user = producao
force group = producao
browseable = no
[vendas]
comment = Diretorio de Vendas
path = /samba/vendas
valid users = @vendas
writeable = Yes
write list = @vendas
force user = vendas
force group = vendas
browseable = no
# Comment - Comentário da Pasta.
# Valid Users - Usuários válidos.
# Path - Local onde estará localizada a pasta.
# Avaliable - Habilita o Compartilhamento .
# Public - Qualquer usuário pode conectar-se a este compartilhamento.
# Browseable - Visualização Publica.
# Writable - Permissão de gravação.
# Guest ok - Permissão para convidados.
# Force Create mode - É a máscara de criação de direitos para arquivos.
# Force Directory mode - É a máscara de criação de direitos para pastas.
# Valid users - Usuários com permissão de acesso à pasta.
# Force user - Força que determinado usuário seja o manipulador da sessão.
# Force group – Força que determinado grupo seja o manipulador da sessão.
# Write list – Lista dos usuários com permissão de gravação.