Você está na página 1de 5

Lição 1 - Introdução

O Samba
O SAMBA é um servidor e conjunto de ferramentas que permite que máquinas Linux e
Windows se comuniquem entre si, compartilhando serviços (arquivos, diretório,
impressão) através do protocolo SMB (Server Message Block)/CIFS (Common Internet
File System), equivalentes a implementação NetBEUI no Windows. O SAMBA é uma
das soluções em ambiente UNIX capaz de interligar redes heterogêneas.

Na lógica da rede Windows o NetBEUI é o protocolo e o NETBIOS define a forma com


que os dados são transportados. Não é correto dizer que o NetBIOS é o protocolo, como
muitos fazem.

Com o SAMBA, é possível construir domínios completos, fazer controle de acesso a


nível de usuário, compartilhamento, montar um servidor WINS, servidor de domínio,
impressão, etc. Na maioria dos casos o controle de acesso e exibição de diretórios no
samba é mais minucioso e personalizável que no próprio Windows.

História
Andrew Tridgell - Desenvolveu o samba porque precisava montar um volume Unix em
sua máquina DOS. Inicialmente ele utilizava o NFS, mas um aplicativo precisava de
suporte NetBIOS. Andrew então utilizou um método muito avançado usado por
administradores para detectar problemas: escreveu um sniffer de pacotes que atendesse
aos requerimentos para ter uma única função: analisar e auxilia-lo a interpretar todo o
tráfego NetBIOS da rede.

Ele escreveu o primeiro código que fez o servidor Unix aparecer como um servidor de
arquivos Windows para sua máquina DOS que foi publicado mais ou menos em meados
de 1992 quando também começou a receber patches. Satisfeito com o funcionamento de
seu trabalho, deixou seu trabalho de lado por quase 2 anos. Um dia, ele resolveu testar a
máquina Windows de sua esposa com sua máquina Linux, e ficou maravilhado com o
funcionamento do programa que criou e veio a descobrir que o protocolo era
documentado e resolveu levar este trabalho a fundo melhorando e implementando novas
funções.

O SAMBA atualmente é um servidor fundamental para a migração de pequenos grupos


de trabalho à grandes domínios com clientes mistos. Nenhum servidor de rede NetBEUI
conhecido proporciona tanta flexibilidade de acesso a clientes como o SAMBA para
compartilhamento de arquivos/impressão em rede. As funções de segurança que foram
adicionadas ao SAMBA hoje garantem um controle mais rigoroso que a própria
implementação usada no Windows NT, incluindo os serviços de diretórios, mapeamento
entre IDs de usuários Windows com Linux, PDC, perfis móveis e uma coisa que
inclusive apresenta problemas no Windows: compatibilidade total entre as diferentes
implementações de versões do Windows.

Sua configuração pode receber ajustes finos pelo administrador nos soquetes TCP de
transmissão, recepção, cache por compartilhamento, configurações físicas que afetam a
performance de rede. Seu código vem sendo melhorado constantemente por hackers,
obtendo excelente performance com hardwares mais obsoletos. O guia tem por objetivo
abordar estes temas e permitir que você configure seu sistema com uma performance
batendo a mesma alcançada em um servidor NT dedicado.

Porque usar o Samba


Com o SAMBA é possível compartilhar diretórios, impressoras, acessar arquivos na
rede exatamente como em redes Microsoft. Mas neste caso, seu servidor é um Linux
rodando uma aplicação específica. O Windows NT e o 2000 (assim como o NetWare 5 e
outros presentes no mercado) sao reconhecidos mundialmente por sua segurança e
escalabilidade, mas o SAMBA possui muitas vantagens que podem se transformar em
soluções e economia para sua empresa. Confira:

Permite compatibilidade com estações Windows (de WfW a 2000) e servidores WinNT
4.0 e 2000. Entre servidores e estações Linux (com Interface Gráfica por exemplo) a
compatibilidade é total.

O SAMBA é 100% configurável, com a grande vantagem de centralizar esta


configuração em um único arquivo, o smb.conf. Sem dúvida é muito interessante ter a
possibilidade de restaurar toda a configuração que disponibiliza seu Servidor de
Arquivos (inclusive as permissões de acesso) através do backup de apenas 1 arquivo,
em casos de desastre. Porém isso não quer dizer que não seja necessário o backup de
outros arquivos de configuração.

Todo o SAMBA pode ser configurado remotamente através de acesso seguro, além do
recebimento por email de informações do estado do servidor (bastando utilizar um
script específico que busca informações nos arquivos de log e cria um arquivo que pode
ser enviado por email).

Em se falando de economia não há o que discutir: o Linux e o SAMBA estão


disponíveis para download na Internet sem ônus algum para qualquer usuário comum
ou empresa que se interesse em utilizá-lo, sem custos com licenças ou atualizações.

O suporte está disponível 24h por dia, o ano todo: além do próprio site do SAMBA
existem milhares de sites e listas de discussão dedicadas ao assunto, entre outras
documentações e artigos em sites de renome por Administradores e Engenheiros de
Redes Linux. Muita coisa já está em nosso idioma facilitando os iniciantes e
interessados em leitura. Muitos sites nacionais sao especializados em Linux e Segurança
para Linux.

Características
Segue abaixo algumas funcionalidades importantes de aplicações do samba e seu
conjunto de ferramentas:

• Compartilhamento de arquivos entre máquinas Windows e Linux ou de


máquinas Linux (sendo o servidor SAMBA) com outro SO que tenha um cliente
NetBEUI (Macintosh, OS/2, LanManager, etc);
• Montar um servidor de compartilhamento de impressão no Linux que receberá a
impressão de outras máquinas Windows da rede;
• Controle de acesso aos recursos compartilhados no servidor através de diversos
métodos (compartilhamento, usuário, domínio, servidor);
• Controle de acesso leitura/gravação por compartilhamento;
• Controle de acesso de leitura/gravação por usuário autenticado;
• Possibilidade de definir contas de "Convidados", que podem se conectar sem
fornecer senha;
• Possibilidade de uso do banco de dados de senha do sistema (/etc/passwd),
autenticação usando o arquivo de dados criptografados do samba, LDAP, PAM,
etc;
• Controle de cache e opções de tunning por compartilhamento;
• Permite ocultar o conteúdo de determinados diretórios que não quer que sejam
exibidos ao usuário de forma fácil;
• Possui configuração bastante flexível com relação ao mapeamento de nomes
DOS => UNIX e vice versa, página de código, acentuação, etc;
• Permite o uso de aliases na rede para identificar uma máquina com outro nome e
simular uma rede NetBIOS virtual;
• O samba possibilita ajuste fino nas configurações de transmissão e recepção dos
pacotes TCP/IP, como forma de garantir a melhor performance possível de
acordo com suas instalações;
• Permite o uso do gerenciador de mensagem do Linux (Linpopup) para a troca de
mensagens com estações Windows via NetBios. Com a flexibilidade do samba é
possível até redirecionar a mensagem recebida via e-mail ou pager;
• Possui suporte completo a servidor WINS (também chamado de NBNS -
NetBios Name Service) de rede. A configuração é bastante fácil;
• Faz auditoria tanto dos acessos a pesquisa de nomes na rede como acesso a
compartilhamentos. Entre os detalhes salvos estão a data de acesso, IP de
origem, etc;
• Suporte completo a controlador de domínio Windows (PDC);
• Suporte quase completo a backup do controlador de domínio (BDC). Até a
versão 2.2 do samba, o suporte a BDC é parcial;
• Permite montar unidades mapeadas de sistemas Windows ou outros servidores
Linux como um diretório no Linux;
• Permite a configuração de recursos simples através de programas de
configuração gráficos, tanto via sistema, como via web;
• Permite executar comandos no acesso ao compartilhamento ou quando o acesso
ao compartilhamento é finalizado;
• Com um pouco de conhecimento e habilidade de administração de sistemas
Linux, é possível criar ambientes de auditoria e monitoração até monitoração de
acesso a compartilhamento em tempo real.

Requerimentos de Hardware
Processador 386 ou superior, 15 MB de espaço em disco (não levando em conta os logs
gerados e espaço para arquivos de usuários, aplicativos, etc.), 8 MB de memória RAM.

Outros utilitários importantes


Outros utilitários importantes para a operação do clientes samba:

• smbclient - Ferramenta para navegação e gerenciamento de arquivos, diretórios


e impressoras compartilhados por servidores Windows ou samba;
• smbfs - Pacote que possui ferramentas para o mapeamento de arquivos e
diretórios compartilhados por servidores Windows ou samba em um diretório
local;
• winbind - Daemon que resolve nomes de usuários e grupo através de um
servidor NT/SAMBA e mapeia os UIDs/GIDs deste servidor como usuários
locais.

Lição 2 - Instalação
Obtendo e Instalando o Samba
Pacotes binários do Samba são incluídos em quase todas as distribuições Linux. Há
também alguns pacotes disponíveis no site, www.samba.org . Na home page também
haverá instruções caso você deseje compilar os fontes do Samba.

Configurando o APT
Neste curso optamos por instalar a versão Samba disponível no repositório Stable do
Debian. Utilizaremos a ferramenta APT para a instalação do Samba. O APT é uma
ferramenta desenvolvida pela comunidade Linux Debian, mas que é utilizada pela maior
parte das distribuições Linux.

O APT inseriu o conceito de repositório, ou seja, um local na net de onde são baixados
os softwares para instalação. Esse princípio facilita para o usuário, pois, você escolhe os
seus programas, seus repositórios e deixa o APT gerenciar a instalação.
Para tanto, precisamos observar se o arquivo de configuração do APT está correto. Com
o terminal aberto, siga as seguintes instruções:

• shell > vi /etc/apt/sources.list

Este comando abre o arquivo souces.list, arquivo que guarda as “fontes” dos arquivos
que serão obtidos, para edição através do editor “vi”. Algo semelhante ao texto abaixo
apareçerá:

#deb file:///cdrom/ sarge main


deb http://ftp.br.debian.org/debian/ stable main
deb-src http://ftp.br.debian.org/debian/ stable main
deb http://security.debian.org/ stable/updates main

O caracter “#” significa que a linha está comentada, ou seja, não será considerada.
A primeira palavra em cada linha, deb ou deb-src, indica o tipo de arquivo. Seguido
pelo endereço do servidor.
Não precisamos necessariamente obter os arquivos dessas “fontes”. Podem ser
utilizados outros repositórios.

Depois de modificado o source.list, precisamos sempre atualizar a lista de softwares


disponíveis.

• shell > apt-get update