Sie sind auf Seite 1von 13

Linux Network Servers

Samba como compartilhador de arquivos & impressora


O Samba surgiu da necessidade de integrar redes mistas (Windows com Linux). No Linux, h duas maneiras de se fazer isso, que pelo uso do NFS e Samba. O Samba a soluo mais completa, pois possui vrias opes de configurao. E o melhor que permite que os compartilhamentos sejam vistos tanto pelo Linux quanto pelo Windows. A funo do Samba compartilhar recursos, como arquivos, diretrios, impressoras, fazer autenticao de usurios etc. O nome Samba no tem nada a ver com o ritmo musical aqui do Brasil. Esse nome surgiu por causa do protocolo SMB Server Message Blocks. A evoluo do SMB se chama hoje CIFS. O Samba dividido em 2 mdulos: O servidor propriamente dito e cliente, que permite acessar compartilhamentos em outras mquinas (Linux e Windows). OBS: Os 2 mdulos so independentes, ou seja, voc pode instalar s o servidor onde voc pretenda compartilhar arquivos, e o cliente somente para desktop. Pacotes: Vamos focar no Debian (pacotes). Servidor: Cliente: samba smbclient

Documentos: samba-doc Filesystem: smbfs Instalando: # aptitude install samba # aptitude install smbclient # aptitude install samba-doc # aptitude install smbfs

Linux Network Servers


No CentOS/Fedora: # yum install samba # yum install samba-client # yum install samba-doc

Para descobrir a verso do Samba que voc instalou: # smbd -V

Version 3.2.5 O arquivo principal do Samba o /etc/samba/smb.conf. Faa um backup do original e depois escreva um novo arquivo do zero. # cp /etc/samba/smb.conf /etc/samba/smb.conf.original

O arquivo que iremos usar o smb.conf. O ideal na primeira configurao partir do zero. Isso fora voc a escrever as diretivas do arquivo e voc vai familiarizando com a estrutura do arquivo. importante lembrar que o comentrio usado nas linhas responsveis pelo funcionamento do Samba representado por ponto e vrgula ; importante manter esse padro. Aps esses ajustes iniciais, edite o arquivo smb.conf: # vi /etc/samba/smb.conf

Linux Network Servers


/etc/samba/smb.conf organizado por sees. A principal : [global] Esta seo responsvel pelas diretivas gerais, como nome da mquina servidora Samba, grupo de trabalho ou domnio, se vai agir como PDC ou no etc. Outras sees que usaremos: [homes] a mais importante quando falamos em compartilhamento, nela ficaro os homes dos usurios. Aqui definimos permisses de como ser esse compartilhamento, o caminho de onde ficaro esses diretrios etc. [printers] Seo responsvel por definir o compartilhamento da impressora. [netlogon] Essa seo ser usada se o Samba atuar como PDC da rede. Conter o arquivo de script de login que ser executado pelas estaes. [profiles] Essa seo ser usada se o Samba atuar como PDC da rede. Ela responsvel por indicar onde ficar o caminho do diretrio que conter os perfis dos usurios. Alm dessas sees, voc pode criar outras a fim de fazer outros compartilhamentos. Nesse exemplo que vou mostrar agora, vou usar as sees [global], [homes], [printers] e vou criar uma seo extra chamada [publico]. Vai funcionar assim, primeiro mostrada toda a seo e explicada linha por linha de cada uma.

Linux Network Servers


[global] workgroup = 4Linux netbios name = spartacus server string = Servidor Samba printcap name = /etc/printcap load printers = yes printing = cups log file = /var/log/samba/log.%m max log size = 1000 encrypt passwords = true 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* . smb passwd file = /etc/samba/smbpasswd security = user veto files = /*.mp3/ interfaces = eth0 bind interfaces only = yes preserve case = no default case = lower

Linux Network Servers


Explicando linha por linha. [global] Define a seo em que os parmetros vo ser definidos. workgroup Define o grupo de trabalho dentro da rede Microsoft netbios name Define o nome da mquina em que o servidor Samba est. server string Comentrio sobre o computador. Fica a seu critrio. printcap name Define o nome do arquivo que contm o nome da impressora. load printers Define se a lista de impressoras em /etc/printcap ser compartilhada automagicamente. Obs: A impressora j dever estar instalada! O Samba no instala, nem configura a impressora, apenas compartilha. printing Define o tipo do servidor de impressora. Pode ser cups, lprng, bsd, hpux etc. log file Define a localizao de onde ficaro os logs; %m indica o log da mquina em questo. Se tenho uma mquina chamada leo e outra maria, terei o log para cada mquina Windows nesse diretrio.

Linux Network Servers


max log size Define o tamanho mximo do log em KB. encrypt passwords = true Faz com que as senhas sejam criptografadas. Deixe como true. unix password sync Para manter as senhas dos usurios sincronizadas em relao s senhas deles no sistema passwd program & passwd chat Diretivas necessrias para que o passwd funcione corretamente. smb passwd file = /etc/samba/smbpasswd smbpasswd um tipo de backend. Backends permitem armazenar senhas encriptadas e outras informaes referentes aos usurios. O smbpasswd o backend mais simples. Nele, as senhas so salvas no arquivo /etc/samba/smbpasswd e so transmitidas de forma encriptada atravs da rede. A vantagem do smbpasswd que ele um sistema bastante simples, pois as senhas so armazenadas em um arquivo de texto. Se voc quer apenas configurar um servidor Samba para compartilhar arquivos e impressoras, sem us-lo como PDC, ento o smbpasswd funciona bem. A outra opo mostrada na apostila de Samba como PDC.

Linux Network Servers


security Define se a segurana ser baseada no login do usurio ou com base no compartilhamento. Opes: user Usa login e senha. o mais recomendvel, para que isso realmente funcione voc ter que criar usurios no Linux e no Samba (veremos como fazer, logo adiante) share (modo obsoleto) Compartilhamento. usada mais em pequenas redes que no necessrio preocupar-se tanto com segurana. ATENO! O Samba exige que voc crie um usurio no sistema e depois no prprio Samba. Funciona assim: Usurios Samba: usados para autenticao; Usurios de sistema: usados para trabalharmos com permisses, home etc. Preciso primeiro ter o usurio no sistema, depois o crio no Samba. Para criar um usurio no Samba: # smbpasswd -a leo

Onde -a de add(adicionar) Mais detalhes sobre isso mais na frente. :-)

Linux Network Servers


veto files = /*.mp3/ Dessa maneira eu veto a gravao de certos tipos de arquivos no compartilhamento. Vamos para a outra linha: interfaces = eth0 bind interfaces only = yes Caso o servidor tenha mais de uma placa de rede,voc pode colocar para escutar apenas na interface eth0 por exemplo. importante falar que o Samba escuta em todas as interfaces por padro. Dica de segurana: Se no existir um firewall ativo, os compartilhamentos podem ficar expostos para a internet. O Linux case sensitive, mas o que significa isso mesmo? Que ele diferencia maisculas de minsculas, isto : SAMBA diferente de samba. J o Windows case insensitive. Para amenizar esse problema voc pode fazer com que todos os nomes de arquivos salvos no compartilhamento sejam forados a ser minsculos. preserve case = no default case = lower

Linux Network Servers


[homes] valid users = %S comment = Diretorio pessoal browseable = no writable = yes create mask = 0600 directory mask = 0700 Para deixar um Samba realmente funcional, voc precisar usar seus conhecimentos sobre administrao de usurios e permisses. [homes] Define o nome da seo. valid users = %S Indica que apenas o prprio usurio pode ter acesso ao seu diretrio home. comment Define um comentrio. Fica a seu critrio. browseable no Define se o compartilhamento ficar visvel no Windows Explorer (Ambiente de rede). Nesse caso est como no e com isso o usurio v apenas seu diretrio. writable Define se o compartilhamento poder ser escrito. muito importante deixar habilitado como yes! Afinal, o usurio vai querer usar gravar sem seu home. create mask Define permisso para criao de arquivos.
9

Linux Network Servers


directory mask Define permisso para criao de diretrios. Agora, ser criada uma seo por minha conta. em diretrios assim, principalmente, que devemos aplicar nossos conhecimentos de administrao de usurios e permisses! [publico] path = /mnt/publico available = yes writable = yes write list = @amigos guest ok = yes [publico] Define o nome da seo. path Define o caminho do diretrio que ser compartilhado. Obs: O diretrio deve ser criado antes de iniciar o servidor Samba. Definindo permisses: # mkdir -p /mnt/publico # groupadd amigos # adduser maria # adduser joao # gpasswd -a maria amigos # gpasswd -a joao amigos # chmod -R 3770 /mnt/publico # chown -R root.amigos /mnt/publico

10

Linux Network Servers


available Define se o compartilhamento estar ativo ou no. writable Define se o compartilhamento poder ser usado para escrita. Agora, quero deixar outras opes que vocs podero usar no lugar das opes j apresentadas. Vejam: valid users = maria,joao Define que apenas os usurios maria e joao tero poder no diretrio (leitura e escrita). Outra opo: write list = maria,joao Aqui voc cria uma lista de escrita. Se quiser definir para um grupo, faa assim: write list = @amigos Posso usar a diretiva: guest ok = yes Para permitir quem no faz parte da lista o poder de ao menos ler o compartilhamento. Outra opo: hosts allow = 192.168.0.3, 192.168.0.7 Define que s os usurios com esses ips tenham permisses.

11

Linux Network Servers


[printers] comment = HP692C path = /var/spool/samba browseable = yes writable = no printable = yes J se sabe a maioria das diretivas, ento um comentrio a fazer muito importante: A opo writable deve ficar como no mesmo, pois a gravao ser permitida por meio do spool de impresso, que quem controla a impresso, somente. Para compartilhamento de diretrios e impressora isso. J pode salvar o arquivo. Adicione os usurios no Samba: # smbpasswd -a joao # smbpasswd -a maria E para remover como faramos? # smbpasswd -x joao

Antes de colocarmos o Samba para funcionar podemos ver se o arquivo est correto. Para isso, usamos: # testparm

Ele indica erros no arquivo.

12

Linux Network Servers


Se estiver tudo certo, podemos iniciar o servidor Samba! /etc/init.d/samba start Voc j pode ir em um cliente Windows e testar para ver o compartilhamento. Para complementar! As portas usadas pelo Samba so: 137 que usada pelo daemon nmbd, responsvel pela navegao nos compartilhamentos de rede; 138 usada pelo nmbd para a resoluo dos nomes das mquinas da rede; 139 usada pelo daemon smbd, o componente principal do Samba, responsvel pelo compartilhamento de arquivos e impressoras. 445: usada pelos clientes Windows 2000, XP e Vista para navegao na rede.

13

Das könnte Ihnen auch gefallen