Escolar Documentos
Profissional Documentos
Cultura Documentos
Samba
Samba
CONFIGURANDO O
SAMBA
escrito por:
Bruno T. Russo
brusso@mackenzie.com.br
http://www.btr.hpg.com.br
Janeiro / 2003
SUMRIO
1. Introduo
2. Instalao
3. Configurao
4. Testando o Samba
5. Inicializando o Samba
6. Acessando o Servidor SAMBA, atravs de estaes Windows9.x
6.1 Exemplo de Script para login para estaes Windows
7. Acessando o Servidor SAMBA, atravs de estaes Linux
8. Acessando o Servidor SAMBA, atravs de estaes NT Workstation
9. Migrando Senhas do WindowsNT para o SAMBA
10. Adicionando o SAMBA a um Domnio WindowsNT
11. Configurando o SAMBA remotamente
12. Adicionando Usurios ao SAMBA
13. Componentes do SAMBA
13.1. smbtar
13.2. smbpasswd
13.3. smbstatus
13.4. testprns
14. Exemplo de Configurao do arquivo SMB.CONF
3
3
3
7
7
8
8
8
9
9
10
11
11
11
11
12
12
12
13
1. INTRODUO
Em uma rede de Computadores, o intuito principal o de compartilhar
informaes/recursos. Entre esses recursos esto: o compartilhamento de
arquivos, compartilhamento de impressoras, etc.
Com o Samba, possvel fazer tudo isso, obtendo o mximo em qualidade
do Sistema/Aplicao, tais como:
compatvel com estaes Windows e servidores WinNT e
Win2000;
compatibilidade total com estaes Linux (contendo interface grfica,
por exemplo);
toda sua configurao se concentra em apenas um nico arquivo
smb.conf, alm de ser totalmente configurvel;
toda a configurao pode ser feita remotamente.
o Samba est disponvel para download, assim como suas
atualizaes em: http://www.samba.org
Neste Tutorial, vou abordar uma das inmeras configuraes que o Samba
pode ter. Pode ser que existam outros arquivos ou parmetros que eu no vou
cobrir. Para maiores informaes sobre outros parmetros, veja a manpage do
Samba.
2. INSTALAO
Atualmente a maioria das distribuies j instalam o Samba por padro, mas
se por algum motivo voc no tiver o pacote instalado, proceda da seguinte forma:
rpm -ivh samba-versao.rpm -->
rpm -Uvh samba-versao.rpm -->
instalao
atualizao
3. CONFIGURAO
Como j foi dito anteriormente, toda a configurao do Samba est no
arquivo smb.conf , que deve estar guardado no diretrio /etc. Neste arquivo
4
descrevemos os compartilhamentos, permisses de acesso, impressoras. Abaixo
esto os parmetros usados na configurao:
Seo [global]
Nesta seo so definidos os parmetros globais do Samba. Veja os
parmetros que podem ser usados nesta seo:
comment
comentrio para o Host na rede.
workgroup
especifica o Domnio ou o Workgroup a que o Host pertence na Rede.
security
(O Samba utiliza segurana a nvel de usurio
security=user , com opes)
security = share - cada recurso compartilhado necessita que uma
senha seja informada, para a utilizao daquele recurso. Geralmente
este parmetro utilizado quando para estaes Linux.
security = user - a permisso dada de acordo com cada usurio, na
hora em que ele efetua o login. Est opo tambm se aplica a grupos
(@grupo).
security = server - o Samba validar a senha enviando os dados do
usurio para outro servidor Samba ou Windows, para isso deve-se
incluir o parmetro password server = IP_SERVIDOR , na seo global.
security = domain - este parmetro deve ser usado, se o Host for
adicionado a um domnio Windows atravs do comando smbpasswd,
ento as informaes so enviadas para o PDC da rede.
os level
este parmetro obrigatrio, caso voc utilize mais servidores Linux ou
Windows. O valor um nmero de 1 a 255, onde 65 a mesma varivel utilizada
pelo Windows, especificando um nmero maior que este, voc garante a escolha do
servidor Samba para a validao do login nas estaes.
announce as
especifica o tipo de servidor NetBios (nmbd) que ser divulgado na sua
rede. As opes vlidas so: NT Server; NT Workstation; Win95; WFW .
domain logons
usado para validar logins na rede. Apenas para estaes Windows.
logon script
define qual arquivo de logon script ser executado para os usurios. Devese criar o compartilhamento de nome
[netlogon] apontando para o diretrio de
scripts.
logon path
o caminho do perfil remoto do usurio. Este parmetro til, quando
5
usurios costumam fazer o login em mais de um host na rede, pois dessa forma seu
perfil trazido com o login.
domain master
informa se o Host ser o Domain Master Browser da rede toda.
local master
informa se o Host ser o Master Browser da rede local.
prefered master
com este parmetro, fora-se o Samba a atuar como Master Browser para o
workgroup. Junto com este parmetro, recomendvel a utilizao do parmetro
domain master = yes . Porm, se sua na sua rede tiver outros servidores (Windows e
at mesmo Samba), e alguns desses outros j forem Domain Master, no utilize esta
opo e deixe o parmetro os level = 65 .
guest account
para que ocorra uma melhor performance em redes Windows,
recomendvel a utilizao de uma conta guest(visitante), por padro, no Samba, a
conta usada nobody.
wins server
aqui deve ser informado qual o servidor Wins da rede. Caso o prprio Host
seja, ento no utilize este parmetro, pois o sistema entrar em loop e
conseqntemente travar.
wins support
permite que o Samba seja o servidor Wins da rede, onde conter uma tabela
com
o ambiente de rede completo. Dessa forma h um certo ganho no
desempenho, quando um determinado host for localizar outra maquina na rede, por
exemplo.
keep alive
verifica o estado dos hosts (ativos ou no), este parmetro deve ser
utilizado quando as estaes forem Windows, e constantemente travam. Com a
utilizao deste parmetro, evita-se o trfego desnecessrio de informaes na
rede. Tambm pode ser usado com estaes Linux.
debug level
este parmetro forneve ao Samba, uma maior flexibilidade para trabalhar
com algumas situaes de erro.
winpopup command
define-se qual o comando ser executado quando o servidor receber
mensagens Winpopup(existem muitas configuraes, que podem ser colocadas
aqui). interessante utilizar essa opo se a sua rede utiliza mensagens desse tipo.
log file
6
especifica o arquivo de log do Samba. Por padro os arquivos de log
gerados pelo Samba, esto em /var/log/samba .
null passwords
define a permisso para contas de usurios sem senha.
1 password sync
caso este parmetro esteja ativado (com valor = yes), permite que estaes
Windows troquem de senha.
socket options
este parmetro permite configuraes extras para o protocolo,
possibilitando uma melhor performance do servidor para trablhar com os pacotes
de rede.
printing
define qual o sistema padro de impresso utilizado pelo Linux.
printcap name
define qual o arquivo que contm informaes das impressoras.
load printers
disponibiliza as impressoras para a rede.
hosts allow
define qual mquina tem acesso a rede. Pode-se utilizar o IP ou o nome da
mquina. Para definir uma rede toda usa-se: "
hosts allow = 192.168.10. " .
hosts deny
define qual mquina n ter acesso a rede. Deve ser utilizado da mesma
forma que o parmetro hosts allow .
admin users
define quais usurios possuem permisso completa (permisso de
root ).
7
este parmetro
compartilhamento.
define
se
outros
usurios
podero
acessar
browseable
define se o compartilhamento ser visvel ou no no Ambiente de Rede.
writeable
define a permisso de escrita para o usurio.
Seo [netlogon]
Nesta seo, define-se os parmetros para os scripts de login dos usurios.
comment
parmetro de comentrio para este compartilhamento.
path
define o local onde esto os scripts de cada usurio.
public
este parmetro
compartilhamento.
define
se
outros
usurios
podero
acessar
browseable
define se o compartilhamento ser visvel ou no no Ambiente de Rede.
writeable
define a permisso de escrita para o usurio.
Demais Sees [NOME_SESSO]
Cada sesso um compartilhamento existente na rede. Abaixo, esto
alguns parmetros que podem ser usados nesta seo.
comment
parmetro de comentrio para este compartilhamento.
path
define o local onde est o compartilhamento.
valid users
aqui deve ser informado o nome dos usurios que tem permisso para
acessar este compartilhamento.
writeable
define se ser ou no permitido criar ou excluir arquivos ou diretrios deste
compartilhamento.
public / guest ok
este parmetro
define
se
outros
usurios
podero
acessar
8
compartilhamento.
browseable
define se o compartilhamento ser visvel ou no no Ambiente de Rede.
write list
define os usurios/grupos que tero acesso de escrita no compartilhamento. Para
utilizar vrios nomes de usurios, deve-se usar virgula(,) entre os nomes de cada usurio.
para grupos deve-se usar @nome_do_grupo.
read list
define os usurios/grupos que tero acesso de leitura no compartilhamento.
force create mode
este parmetro, faz com que o Samba fore o tipo de permisso para cada
arquivo criado dentro do compartilhamento, seria semelhante ao chmod do Linux.
force directory mode
este parmetro, faz com que o Samba fore o tipo de permisso para cada
diretrio criado dentro do compartilhamento, seria semelhante ao chmod do Linux.
copy
copia os parmetros de outra seo. til se voc utiliza compartilhamentos
semelhantes. Para a alterao de algum parmetro, basta voc modific-lo na seo
atual.
max connections
define o nmero mximo de conexes simultneas que o compartilhamento pode
"responder".
%g - Nome do grupo;
%T - Data e Horrio.
4. Testando o SAMBA
Aps a configurao do arquivo smb.conf, voc pode fazer um teste para saber se
a configurao est correta, para isto utiliza-se o comando testparm:
testparm
confira o resultado apresentado na tela. Caso aparea alguma mensagem de erro
edite novamente o arquivo de configurao (smb.conf).
5. Inicializando o SAMBA
Aps a configurao, deve-se iniciar o servio da seguinte forma:
/etc/rc.d/init.d/smb start
para conferir se o Samba est no ar digite:
/etc/rc.d/init.d/smb status
10
@echo off
if %OS%.==Windows_NT.goto WinNT
:Win95
net use X: \\servidor\pasta
net use H: /HOME
goto end
:WinNT
net use X: \\servidor\pasta /persistent:no
net use H: /HOME /persistent:no
:end
Type
Comment
ADMIN$Disk
Public
C$
Print$
Remote
Disk
Disk
Disk
Administration
Public
Default Share
Printer Control
11
aps digitar o comando acima, voc dever entrar em um prompt
smb:\>
12
permisses para 600, faa isso da seguinte forma:
chmod 600 /etc/smbpasswd
Agora, que voc ja possui o arquivo smbpasswd, necessrio que o ID dos
usurios sejam o mesmo do arquivo passwd. Voc pode exportar o o nome do usurio,
ID, etc, porm no conseguir exportar as senhas. Mas para que o Samba rode sem
problemas, no necessrio que o usurio tenha a senha no Unix/Linux. Caso voc
queira exportar as senhas, crie um script conforme o quadro abaixo:
#!/bin/sh
awk 'BEGIN {FS=":"
printf("#\n# Unix password file. \n#\n")
}
{ pintf("%s.:*:%s:103:%s:/home/%s:/bin/bash\n", $1,$2,$5,$1)}
OBS:. No esquea que este script, deve ser salvo com a exteno .sh , e deve
possuir permisso de execuo. Se voc utiliza o shadow, desabilite-o antes de juntar os
arquivos, atravs do comando pwunconv.
Execute o script acima da seguinte forma:
cat /etc/smbpasswd | ./script.sh > passwd-smb
aps a execuo do script, execute o seguinte comando:
cat passwd-smb >> /etc/passwd
13
Em seguida edite o arquivo smb.conf e inclua os seguintes parmetros na seo
[global].
security = domain
workgroup = EMPRESA
encrypt passwords = yes
password server = File_Server Backup1 Backup2
Reinicie o Samba para que as mudanas tenham efeito.
14
como exemplo de utilizao do smbtar, vamos criar um arquivo
chamado backup.tar, no qual ser o backup de //servidor1/pasta1
smbtar -s servi =dor1 -x pasta1 -d * -t backup.tar
para conferir se o arquivo criado est correto, digite:
tar -tvf backup.tar
Para fazer backup em fitas, voc pode especificar /dev/st0 na saida do
comando smbtar.
13.2. smbpasswd
O smbpasswd, permite que as estaes troquem suas senhas de
logon. O seu funcionamento bem parecido ao do passwd. Para que o seu
funcionamento ocorra sem problemas, necessrio que o Samba esteja
configurado para utilizar senhas criptografadas.
Para fazer backup em fitas, voc pode especificar /dev/st0 na saida do
comando smbtar.
13.3. smbstatus
Este comando utilizado para verificar a atual situao das conexes
do Samba. No quadro abaixo est uma lista das opes aceitas pelo
smbstatus.
-b - Fornece uma resposta resumida.
-d - Fornece uma resposta comentada.
-L - Lista somente os recursos em uso.
-p - Lista os processos smbd e finaliza em seguida. til quando utilizado em
programas.
-S - Lista todos os compartilhamentos definidos.
-s - Permite utilizar outro arquivo de configurao que deve ser
especificado aps a opo.
-u - Lista as informaes relevantes sobre o usurio, que deve ser
especificado aps a opo.
13.4. testprns
O testprns verifica o nome da impressora junto ao smbd, verificando
se um nome vlido. Ativa-se da seguinte maneira:
testprns <nome_impressora>
15
16
comment = Compartilhamento de Scripts
path = /etc/scripts
public = no
browseable = no
writeable = no
logon script = %U.bat
logon path = //%L/profiles/%U
domain logons = yes
[RH]
comment = Grupo de Trabalho do RH
path = /home/RH
public = no
browseable = yes
valid users = bruno
writeable = yes
write list = bruno
force create mode = 0777
force directory mode = 0777
guest only = no