Índice
Grupo de Trabalho
Domínio
Este capítulo descreve a configuração, utilização, aplicação, integração de redes Windows e Linux através do SAMBA. Entre as explicações de cada opção, são passados detalhes importantes relacionados com seu funcionamento, performance e impactos de segurança sobre o servidor como um todo.
Uma seção foi especialmente separada para os mais paranóicos (como eu) conhecerem, combinar e aplicar as restrições de forma mais adequada a configuração da máquina.
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ênea.
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.
O guia Foca GNU/Linux documentará como instalar e ter as máquinas Windows de diferentes versões (Win3.11, Win95, Win95OSR/2, Win98, XP, WinNT, W2K) acessando e comunicando-se entre si em uma rede NetBEUI. Estas explicações lhe poderão ser indispensáveis para solucionar problemas, até mesmo se você for um técnico especialista em redes Windows e não tem ainda planos de implementar um servidor SAMBA em sua rede.
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 mixtos. 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 o 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.
Para contribuir com o desenvolvimento do samba, veja os detalhes na página: http://us1.samba.org/samba/devel/
Caso encontre um bug no programa, ele poderá ser relatado se inscrevendo na lista de discussão samba-technical-request@lists.samba.org. Após responder a mensagem de confirmação, envie um relato detalhado do problema encontrado no programa.
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. Este código provavelmente estará estável até a versão 3.0.
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.
Entre outras possibilidades.
Pacote
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.
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.
O daemon nmbd salva seus logs em /var/log/daemon.log (dependendo da diretiva de
configuração syslog do arquivo smb.conf) e em
/var/log/samba/log.nmbd
. Os detalhes de acesso a
compartilhamento são gravados no arquivo
/var/log/samba/log.smbd
(que pode ser modificado de acordo
com a diretiva log file no smb.conf
,
“Log de acessos/serviços”).
Digite apt-get install samba smbclient smbfs
para instalar o
conjunto de aplicativos samba. O pacote é o servidor samba e os pacotes e fazem parte dos aplicativos cliente. Caso
deseje apenas mapear compartilhamentos remotos na máquina Linux, instale
somente os 2 últimos pacotes.
O servidor samba pode ser executado tanto via inetd como daemon:
No modo inetd, o servidor de nomes nmbd será carregado
assim que for feita a primeira requisição de pesquisa e ficará residente na
memória. No caso de acesso a um compartilhamento, o smbd
será carregado e lerá a configuração em smb.conf
a cada
acesso do cliente a um compartilhamento. Quando o samba
opera via inetd, ele não usa o controle de acesso dos arquivos
hosts.allow
e hosts.deny
. Veja “Restringindo o acesso por IP/rede” e “Restringindo o acesso por interface de rede” para
detalhes de como fazer o controle de acesso.
Para reiniciar o samba digite killall -HUP nmbd
. Não é
necessário reiniciar o serviço smbd
, conforme foi explicado
acima.
Quando opera no modo daemon, ambos os daemons nmbd e smbd são carregados. No caso de um acesso a compartilhamento, é criado um processo filho do smbd que é finalizado assim que o compartilhamento não for mais usado.
Para iniciar o samba em modo daemon
digite:
/etc/init.d/samba start
, para interromper o samba:
/etc/init.d/samba stop
e para reiniciar:
/etc/init.d/samba restart
.
Se desejar mudar do modo daemon para
inetd ou vice versa, edite o arquivo
/etc/default/samba
e modifique o valor da linha
RUN_MODE=
para daemons
ou
inetd
. Uma forma de fazer isso automaticamente é executando
o dpkg-reconfigure samba
.
OBS: Como praticamente não existe diferença entre os modos de operação inetd e daemon para o SAMBA, é aconselhável que execute sempre que possível via inetd, pois isto garantirá uma disponibilidade maior do serviço caso algo aconteça com um dos processos.
Opções de linha de comando usadas pelo nmbd:
Quando especificado, o servidor samba fará a procura de nomes primeiro neste arquivo e depois usando a rede.
Especifica uma nova localização para o arquivo de configuração do samba. Por
padrão o /etc/samba/smb.conf
é usado.
Especifica o nível de depuração do nmbd, que podem ir de 0 a 10. O valor padrão é 0.
Especifica a localização do diretório onde o nmbd gravará o arquivo de log
log.nmbd
. O valor padrão é
/var/log/samba
Permite utilizar o nome NetBIOS especificado a invés do especificado no arquivo
smb.conf
para identificar o computador na rede.
Copyright © 1999-2020 - Gleydson Mazioli da Silva