Você está na página 1de 5

Guia: Configurando o Samba

O Samba o servidor que permite compartilhar arquivos e acessar


compartilhamentos em mquinas Windows, um dos servios mais utilizados em servidores Linux
de rede local. Ele dividido em dois mdulos, o servidor Samba propriamente dito e o
"smbclient", o cliente que permite acessar compartilhamentos em outras mquinas. Usando o
Samba, o servidor Linux se comporta exatamente da mesma forma que uma mquina Windows,
compartilhando arquivos e impressoras e executando outras funes, como autenticao de
usurios. Voc pode configurar o Samba at mesmo para tornar-se um controlador de domnio.
Este um guia "mais que completo" sobre o Samba, mostrando todas (ou pelo menos quase
todas :) as opes de configurao.
Uma introduo: Configurando um servidor Samba da forma mais simples possvel
Instalao e configurao usando o swat
o Instalando o Samba
o Cadastrando os usurios
o Usando o Swat
o Permitindo que os usurios compartilhem pastas
Configurao avanada do Samba
o Ajustando as permisses de acesso
o A seo [global]
o A seo [homes]
o A conta guest
o Auditando os acessos
o Backends: smbpasswd ou tdbsam
o Portas e firewall
Usando o Samba como PDC
o Logando Clientes Windows
o Cadastrando as mquinas sem usar a conta de root
o Ajustando as permisses locais
o Logando Clientes Linux
o Usando o PDC para autenticao local
Compartilhando impressoras no Samba
o Disponibilizando drivers de impresso para os clientes
o Compartilhando atravs do Cups
Usando quotas de disco no Samba
Mantendo o horrio sincronizado
Usando o NFS

Introduo
Como vimos no tutorial sobre configurao de redes Windows, compartilhar arquivos no Windows
XP bastante simples. Em resumo, voc precisa ativar o "Cliente para redes Microsoft" e o
"Compartilhamento de arquivos e impressoras para redes Microsoft" nas propriedades da conexo
local e, a partir da, compartilhar as pastas desejadas atravs do Windows Explorer. O XP usa o
simple sharing por padro, o que permite que todos os usurios da rede tenham acesso aos
compartilhamentos, sem que voc precise cadastrar logins de acesso para cada um.
Vamos ver agora como fazer o mesmo usando um pequeno servidor Linux, rodando o Samba. O
objetivo do servidor compartilhar arquivos e impressoras com a rede local de uma forma
simples, funcionando como uma espcie de NAS. Voc pode tanto fazer esta configurao na sua
prpria mquina, ou em outro desktop da rede, quanto usar alguma mquina antiga, dedicada
tarefa. Os passos podem ser seguidos na grande maioria das distribuies.
O primeiro passo instalar o servidor Samba, o que feito instalando o pacote "samba" usando o
gerenciador de pacotes. No Ubuntu ou Debian voc usaria o apt-get (apt-get install samba), no
Fedora usaria o yum (yum install samba), no Mandriva usaria o urpmi (urpmi samba) e assim por
diante.
Muitos preferem configurar o Samba usando o swat, mas com tantas opes ele seria overkill no
nosso caso e s iria atrapalhar. Ao invs dele, vamos a uma lista de passos rpidos para
configurar o servidor via terminal.
Comece logando-se como root no terminal usando o comando "su -". No caso do Ubuntu voc
precisa primeiro definir uma senha para o root, usando o comando "sudo passwd".
$ su -
O primeiro passo para configurar o Samba cadastrar pelo menos uma conta de usurio, usando
o comando "smbpasswd -a". Isso necessrio para que o Samba possa autenticar os usurios
remotos e possa ler os arquivos dentro das pastas compartilhadas. Apesar de rodar como um
servio, o Samba est subordinado s permisses de acesso do sistema.
Voc pode adicionar a sua prpria conta de usurio, como em:
# smbpasswd -a gdh
New SMB password:
Retype new SMB password:
Se preferir, voc pode tambm criar uma nova conta, exclusiva para uso do Samba, como em:
# adduser joao
# smbpasswd -a joao
Normalmente, voc precisaria cadastrar vrias contas de usurio e distribuir as senhas entre todos
que fossem acessar os compartilhamentos. Entretanto, possvel fazer uma configurao mais
simples usando uma conta guest. Esta configurao permite que os usurios da rede local
acessem os compartilhamentos sem precisarem de um login vlido, algo similar ao simple sharing
do Windows XP. No o tipo de configurao que voc usaria em uma grande rede, mas muito
prtico para usar em uma pequena rede, onde voc conhece todo mundo e simplesmente quer
compartilhar os arquivos de uma forma simples.
Depois de cadastrar o usurio, falta configurar o Samba, o que feito editando o arquivo
"/etc/samba/smb.conf". Voc pode edit-lo usando o editor que preferir, como em:
# mcedit /etc/samba/smb.conf
ou
# gedit /etc/samba/smb.conf
Muitas distribuies vem configuradas por padro para no executarem aplicativos grficos
quando voc est logado como root no terminal. Ao tentar rodar o programa, voc recebe um erro
"cannot open display"
Nesses casos, voc tem duas opes:
a) Logar-se como root usando o comando "sux" no lugar do "su -", ele ajusta as permisses
necessrias, eliminando o problema. Ele instalado atravs do pacote de mesmo nome.
b) Usar o sudo para abrir o programa, como em "sudo gedit /etc/samba/smb.conf", nesse caso
executando o comando o comando com seu login de usurio e confirmando a sua senha, quando
solicitado.
Voltando edio do arquivo, apague todo o contedo do arquivo, deixando-o com o seguinte
contedo:
[global]
netbios name = Sparta
server string = Servidor Samba
workgroup = Grupo
local master = yes
os level = 100
preferred master = yes
wins support = yes

printing = cups
load printers = yes

map to guest = bad user
guest account = gdh

[printers]
comment = Impressoras
print ok = yes
guest ok = yes
path = /var/spool/samba

[arquivos]
path = /media/hda3/arquivos
writable = yes
guest ok = yes [videos]
path = /home/gdh/videos
writable = yes
guest ok = yes
As opes a alterar so:
netbios name: Indica o nome do servidor, com o qual ele aparecer no ambiente de rede.
workgroup: O grupo de trabalho, o mesmo especificado na configurao das outras mquinas da
rede.
guest account: Aqui voc especifica a conta que cadastramos anteriormente usando o comando
"smbpasswd -a".
Os compartilhamentos do Samba seguem uma estrutura muito simples, onde voc indica o nome
do compartilhamento (da forma como ele aparecer no ambiente de rede) entre chaves e indica a
pasta a que ele dar acesso na opo "path". A opo "writable = yes" faz com que o
compartilhamento seja para leitura e escrita e a "guest ok = yes" faz com que ele fique disponvel
para qualquer usurio da rede, j que qualquer tentativa de acesso com um login de usurio que
no existe ser mapeada para o usurio "gdh".


Voc pode criar mais compartilhamentos usando este mesmo modelo, mudando apenas o nome e
a pasta a compartilhar. Com esta configurao, o servidor ir tambm compartilhar as
impressoras instaladas automaticamente, voc precisar apenas fornecer os drivers de impresso
ao instal-las nos clientes.
O nico cuidado que o usurio usado na opo "guest account" (o gdh no exemplo) precisa ter
acesso completo ao contedo das pastas compartilhadas, j que todos os acessos sero feitos
atravs dele. Caso necessrio, altere as permisses de acesso s pastas, usando o comando
"chown -R", como em:
# chown -R gdh.gdh /media/hda3/arquivos
O "-R" no comando faz com que as alteraes seja aplicadas de forma recursiva, atingindo todos
os subdiretrios dentro da pasta, enquanto o "gdh.gdh" indica o usurio e o grupo que assumir o
controle.
Uma ltima observao que este arquivo de configurao faz com que seu servidor Samba
assuma a funo de master browser da rede, fornecendo aos clientes a lista dos
compartilhamentos disponveis em toda a rede. Se voc for usar esta configurao em mais de um
servidor na mesma rede, remova a linha "local master = yes", ou use um nmero mais baixo na
opo "os level =" (nos demais servidores), caso contrrio os servidores ficaro continuamente
disputando o cargo, o que prejudicar a navegao dos clientes.
As alteraes feitas no arquivo de configurao do Samba so aplicadas automaticamente aps
alguns minutos, mas se voc quiser verificar rapidamente uma alterao que acabou de fazer,
pode forar o reinicio do servidor usando o comando:
# /etc/init.d/samba restart
(ou /etc/init.d/smb restart, no Fedora e no Mandriva)
Os arquivos dentro dos compartilhamentos podem ser acessados usando o ambiente de redes nos
clientes Windows ou clientes como o Smb4K nos clientes Linux. Mas, se voc pretender manter o
servidor ligado continuamente, o ideal mapear os compartilhamentos, de forma que eles fiquem
acessveis permanentemente e a conexo seja restaurada durante o login.
Nos clientes Windows, voc pode mapear compartilhamentos clicando com o boto direito sobre o
"Meu Computador" e usando a opo "Mapear unidade de rede".
Nos clientes Linux, a melhor opo para criar um mapeamento permanente inserir uma linha
diretamente no arquivo "/etc/fstab", que contm a lista das parties e compartilhamentos de
rede que o sistema deve montar durante o boot.
O arquivo "/etc/fstab" um dos principais arquivos de inicializao do sistema e por isso deve ser
sempre editado com cuidado. Adicione apenas a nova linha, sem alterar as demais, tomando o
cuidado de deixar uma linha em branco no final do arquivo. A linha segue o seguinte modelo:
//servidor/arquivos /mnt/smb smbfs username=gdh,password=1234,uid=joao 0 0
O "//servidor/arquivos" o caminho para o compartilhamento na rede, incluindo o endereo IP ou
nome do servidor e o nome do compartilhamento que ser montado, o "mnt/smb" a pasta local
onde ele ser montado, o "smbfs" indica o sistema de arquivos, o
"username=gdh,password=1234" indica o login e senha que sero usados para acessar o servidor,
o "uid=joao" indica o usurio local (no cliente Linux) que ter acesso completo aos arquivos
dentro da pasta montada, enquanto o "0 0" um "nada a declarar", que indica que no temos
opes adicionais.
Dentro do nosso exemplo, poderamos usar a linha:
//192.168.1.254/videos /media/videos smbfs
username=fulano,password=1234,uid=gdhnet 0 0
Veja que, por segurana, preferi especificar diretamente o endereo IP do servidor, de forma a
evitar qualquer possibilidade de problemas relacionado resoluo do nome. Como nosso servidor
foi configurado para permitir o acesso usando a conta guest, posso colocar qualquer login na
opo "username=" e qualquer senha na "password=". O "gdhnet" indica a conta que uso no
cliente Linux, com a qual vou acessar a pasta onde o compartilhamento ser montado.
Para que a alterao entre em vigor sem precisar reiniciar o micro, use o comando "mount -a" (no
cliente), como root.
Com o compartilhamento montado, voc pode acessar os arquivos da mesma forma que acessaria
uma partio local, inclusive abrindo arquivos e vdeo e audio sem precisar copi-los para a sua
mquina previamente. A nica observao que a banda da rede precisa ser suficiente para
transferir o arquivo na velocidade necessria para exib-lo, de forma que assistir um vdeo em alta
resoluo, atravs de uma rede wireless lenta ou congestionada pode resultar em um vdeo
saltado.

Você também pode gostar