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 --> esta instalao serve apenas para pacotes RPM Aps a instalao o Samba, disponibiliza os seguintes componentes: smbd - O servidor Samba. nmbd - O servidor de Nomes NetBios. smbclient - Cliente SMB para sistemas Unix. smbpasswd - Permite alterar senhas (encriptadas) de usurios smb. smbprint - Cliente para envio de impresso para sistemas Linux. smbstatus - Apresenta a situao atual das conexes SMB no Host. testparm - Verifica as configuraes do arquivo smb.conf. testprns - Verifica a comunicao via rede com as impressoras.
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 ).
max disk size especifica qual o limite de espao em disco que ser utilizado. O valor deve ser informado em Megabytes. Para especificar, por exemplo, um determinado valor para a sesso home (vista logo abaixo), voc deve trabalhar com as quotas do Linux. Seo [homes] Nesta seo, define-se os parmetros para as pastas pessoais dos usurios. comment parmetro de comentrio para este compartilhamento. public
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".
Em alguns parmetros usa-se variveis, abaixo, encontra-se algumas variveis mais utilizadas. %S - Nome do Servio (compartilhamento) atual;
%u - Nome do usurio;
%g - Nome do grupo;
%L - Nome do Servidor NetBios, permitindo que a configurao desejada seja alterada de acordo com o cliente que vai acessar o sistema; %M - Nome Internet da mquina cliente;
%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
para acessar uma pasta compartilhada, especifique o caminho da rede, conforme o exemplo abaixo: smbclient //maquina/pasta senha
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