Para máquinas se comunicarem em rede e trocarem recursos, como compartilhamento de arquivos, impressoras, autenticação, mapeamento de usuários etc, temos o samba (SMB - Server Message Block) que implementa o protocolo NetBEUI do Windows, servindo como um poderoso recurso para interligar redes heterogêneas. O Samba foi criado pelo australiano Andrew Tridgell com o objetivo de resolver seus problemas de integração com um servidor Unix e uma máquina rodando DOS. Na época, o protocolo SMB não tinha sua especificação aberta pela Microsoft o que obrigava a utilizar a engenharia reversa para resolver o problema, utilizando para isso Packet Sniffer. Em pouco tempo, após decifrar o modo de operação do protocolo, Andrew conseguiu fazer com que seu servidor Unix aparecesse na rede NetBIOS como um servidor de arquivos. A partir de 1992 Adrew continuou a trabalhar no código e para conectar seu computador rodando Linux com o computador da sua esposa rodando Windows, utilizou seu próprio código, tendo como surpresa sucesso. Neste ínterim, a Microsoft tornou publica a especificação do SMB e da arquitetura NetBIOS. Desde então o Samba cresce como uma excelente alternativa de servidor. O nome Samba se deu devido o SMB já ser um nome comercial registrado, então, Samba foi escolhido por ser uma palavra que contém as letras SMB.
Apesar de o Samba poder ser usado como um grupo de trabalho (workgroups) Sysadmins exigentes, ou experientes preferem sempre o modo de PDC , onde o acesso ao domínio não é livre e necessita de ajustes no Sampa para que as máquinas clientes sejam adicionadas ao domínio. Com isto, apesar do trabalho extra inicialmente, ganha-se em segurança pois cada equipamento na rede tem uma função bem definida no controlador de domínio e as permissões para acesso aos recursos. No modo grupo de trabalho, as permissões precisam ser setadas por ip de máquina e estas não tem uma relação de confiança estabelecida o que enfraquece a política de segurança.
Uma outra vantagem da utilização de um Domínio de Rede através do Samba, é a redução de tráfego indesejado de máquinas Windows se anunciando em rede. O Samba trabalha muito bem com isso e uma vez bem configurado, recebe as listas de recursos de outras máquinas através de broadcasting e indexa localmente todos os recursos disponíveis. Assim, permite um barramento de rede mais limpo a medida que o Samba se torne um Local Master Browser. Reforçando, uma rede sem um Local Master Browser, sempre terá suas estações Windows brigando para vencerem eleições na rede, elevando o tráfego de dados e gerando "ruídos" no barramento. Estas "eleições", acontecem a cada 36 minutos ou a cada vez que o LMB seja removido ou desligado.
O Samba também pode ser configurado para ser um servidor Wins e assim reduzir tráfego de broadcast para aplicações que utilizam resolução de nomes NetBIOS. Esta função do samba é ativada ao utilizá-lo como um DMB (Domain Master Browser) que se encarrega de propagar uma lista de recursos para computadores envolvidos em um Domínio.
Estruturas maiores, podem requerer além do PDC (Primary Domain Controller), um BDC (Backup Domain Controller) o que aumenta a disponibilidade em caso de falhas no servidor principal.
Este pequeno artigo NÃO é um tutorial, no entanto, vou disponibilizar minha versão do smb.conf e indico o Guia Foca Linux para estudo aprofundado, comparando as opções e sua indicação no Guia. Para saber sobre o Samba, utilize a versão avançada do manual. Perguntas nos comentários são sempre bem vindas.
#======================= Global Settings =======================
[global] workgroup = NOMEDOWORKGROUP netbios name = SERVER hosts allow = 192.168.0.0/24 admin users = cpd domain master = yes preferred master = yes local master = yes time server = yes server string = %h server wins support = yes wins proxy = no dns proxy = no max wins ttl = 518400 min wins ttl = 21600 name resolve order = lmhosts host wins bcast interfaces = 127.0.0.0/8 eth0 bind interfaces only = yes log file = /var/log/samba/log.%m follow symlinks = yes debug level = 0 debug timestamp = yes max log size = 1000 syslog only = no syslog = 0 os level = 120 panic action = /usr/share/samba/panic-action %d security = user smb passwd file = /etc/samba/smbpasswd encrypt passwords = yes obey pam restrictions = yes unix password sync = yes passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . pam password change = yes domain logons = yes logon path = \\%N\%U\profile logon drive = U: logon script = logon.bat unix charset = iso8859-1 display charset = cp850 logon home = \\%L\%U\.profiles logon path = \\%L\profiles\%U add machine script = /usr/sbin/useradd -g pdc -c "Maquina de dominio" -s /bin/false -d /dev/null %u
preserve case = no short preserve case = no case sensitive = no default case = lower#======================= desempenho, misc ======================= socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 read raw = yes write raw = yes oplocks = yes max xmit = 65536 getwd cache = yes message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' & idmap uid = 10000-20000 idmap gid = 10000-20000 template shell = /bin/bash
preexec = /bin/mount /cdrom postexec = /bin/umount /cdrom#======================= Share Definitions =======================[homes] comment = Pasta %U browseable = no writable = yes valid users = %S
[netlogon] comment = Network Logon Service path = /var/samba/netlogon writable = no browseable = no
[profiles] path = /var/profiles browseable = no writable = yes create mask = 0600 directory mask = 0700
[printers] comment = All Printers browseable = no path = /var/spool/samba printable = yes guest ok = no read only = yes create mask = 0700
#======================= Impressao ======================= load printers = yes printing = cups printcap name = cups
[print$] comment = Printer Drivers path = /var/lib/samba/printers browseable = yes read only = yes guest ok = no; write list = root, @lpadmin
#======================= impressora pdf =======================[pdf] comment = gerador de pdf no home do usuario path = /var/tmp guest ok = no printable = yes printing = bsd printcap name = cups use client driver = yes print command = /etc/samba/pdf_printer \ "%s" "%H" "//%L/%u" "%m" "%I" "%J" & lpq command = /bin/true
[cdrom] comment = Samba server's CD-ROM read only = yes locking = no path = /cdrom guest ok = yes
[aplic] comment = Outros tipos de compartilhamentos path = /aplic available = yes browseable = yes public = yes guest only = no writable = yes force user = suporte force group = flex guest account = root create mode = 0664 directory mode = 0775 veto files = /*.mp3/*.wma/*.wmv/*.avi/*.mpg/*.wav/*.mpeg/ delete veto files = yes
Referências:




0sem comentários ainda
Por favor digite as duas palavras abaixo