TCC - Carlos Eduardo Silva

Propaganda
UNIVERSIDADE DO PLANALTO CATARINENSE
DEPARTAMENTO DE CIÊNCIAS EXATAS E TECNOLÓGICAS
CURSO DE SISTEMAS DE INFORMAÇÃO
(BACHARELADO)
CARLOS EDUARDO SILVA
MONITORAMENTO DE REDES WINDOWS COM SERVIDOR LINUX
UTILIZANDO O SAMBA
LAGES (SC)
2010
CARLOS EDUARDO SILVA
MONITORAMENTO DE REDES WINDOWS COM SERVIDOR LINUX
UTILIZANDO O SAMBA
Trabalho de Conclusão de Curso
submetido à Universidade do Planalto
Catarinense para obtenção dos créditos
de disciplina com nome equivalente no
curso de Sistemas de Informação Bacharelado.
Orientação: Prof. Rafael Gattino Furtado,
Esp.
LAGES (SC)
2010
MONITORAMENTO DE REDES WINDOWS COM SERVIDOR LINUX
UTILIZANDO O SAMBA
CARLOS EDUARDO SILVA
ESTE RELATÓRIO, DO TRABALHO DE CONCLUSÃO DE CURSO, FOI
JULGADO ADEQUADO PARA OBTENÇÃO DOS CRÉDITOS DA
DISCIPLINA DE TRABALHO DE CONCLUSÃO DE CURSO DO VIII
SEMESTRE, OBRIGATÓRIA PARA OBTENÇÃO DO TÍTULO DE:
BACHAREL EM SISTEMAS DE INFORMAÇÃO
Prof. Rafael Gattino Furtado, Esp
Orientador
BANCA EXAMINADORA:
Prof. Sabrina Bet Koerich, Msc.
UNIPLAC
Prof. Claiton Camargo de Souza, Esp.
UNIPLAC
Prof. Alexandre Perin de Souza, M. Sc.
Professor de TCC
Prof. Sabrina Bet Koerich, Msc.
Coordenador de Curso
Lages, 08 de dezembro de 2010.
Dedico este trabalho a meus pais, pelo
exemplo de vida e família e por sempre me
auxiliarem e incentivarem a concretizar
meus sonhos. E a minha namorada Luana
Comin, pelo carinho, compreensão e
companheirismo durante toda esta jornada.
Agradeço
a
minha
família
por
absolutamente tudo que sempre fizeram e
fazem por mim, e todo apoio durante esta
caminhada, fazendo ser a pessoa que sou
hoje.
Agradeço a minha namorada por esses
anos de carinho, apoio, companheirismo e
felicidade juntos.
Agradeço a meu orientador, prof. Rafael
Gattino, por todo suporte, dedicação e
paciência durante a execução deste projeto.
Por fim, agradeço aquele que permitiu tudo
isso ao longo de toda minha vida, obrigado
Deus!
LISTA DE ILUSTRAÇÕES
FIGURA 1 FIGURA 2 FIGURA 3 FIGURA 4 FIGURA 5 FIGURA 6 FIGURA 7 FIGURA 8 FIGURA 9 FIGURA 10 FIGURA 11 FIGURA 12 FIGURA 13 FIGURA 14 -
Ilustração da interação Linux/Windows ...............................................26
Etapa de teste do sistema. .....................................................................30
Tela de particionamento. .......................................................................30
Tela de seleção dos programas disponíveis. .........................................31
Área de trabalho do sistema. .................................................................31
Gerenciador YaST.................................................................................32
Gerenciador de pacotes de software do YaST. .....................................33
Arquivo de configuração smb.conf. ......................................................35
Tela do terminal apresentando as permissões. ......................................36
Parâmetros de configuração do arquivo smb.conf. .............................39
Estruturação dos diretórios no Samba. ...............................................41
Exemplo de Relatório gerado pelo SARG. .........................................43
Exemplo de acesso negado. ................................................................44
Resultado da execução do comando smbstatus. .................................44
QUADRO 1 QUADRO 2 QUADRO 3 QUADRO 4 QUADRO 5 QUADRO 6 -
Exemplos de sintaxes. .........................................................................33
Significado das siglas ..........................................................................36
Exemplo de sintaxe CHOWN. ............................................................36
Alguns dos principais parâmetros de configuração do Samba ...........40
Exemplo de configuração de acesso a um diretório. ..........................41
Parâmetros de execução do comando smbstatus. ...............................42
TABELA 1 - Tamanho máximo da partição e dos arquivos ......................................22
LISTA DE SIGLAS
CIFS
EXT
FAT
FTP
HD
HPFS
HTTP
NBNS
NBT
NETBEUI
NETBIOS
NTFS
SMB
SSL
WINS
- Common Internet File System
- Extend File System
- File Allocation Table
- File Transfer Protocol
- Hard Disk
- High Performance File System
- Hyper Text Transfer Protocol
- NetBios Name Service
- NetBIOS over TCP/IP
- NetBIOS Extended User Interface
- Network Basic Input Output System
- Technology File System
- Server Message Block
- Secure Socket Layer
- Windows Internet Name Service
RESUMO
A presença de um ambiente de monitoramento de rede é algo fundamental em
pequenas, médias e grandes empresas, porém, é algo que em boa parte das vezes não
recebem a devida atenção, e infelizmente, só é pensado em uma solução de
monitoramento após o ambiente sofrer com algum grande problema. Pensando em
evitar problemas desse tipo, se dá a utilização de servidores que realizam o
monitoramento e controle desses ambientes, onde uma das opções é a utilização de um
servidor de arquivos Samba, que neste trabalho, foi projetado para prover um sistema
de arquivos em rede em um ambiente com sistemas Linux e Windows, pelo fato de
serem os mais utilizados atualmente. A fim de mostrar os benefícios da utilização
deste serviço, foram realizados estudos e diversos testes que simularam o
funcionamento de um ambiente real de trabalho, apresentando resultados
consideráveis, que interferiram de forma positiva no funcionamento e desempenho da
rede, tornando-a muito mais segura e confiável, requisitos fundamentais dentro de uma
corporação. O trabalho que se apresenta, relata de forma detalhada as etapas para
implantação deste ambiente.
Palavras-chave: Monitoramento; Rede; Samba; Linux; Servidor de Arquivos.
ABSTRACT
The presence of an environmental monitoring network is fundamental in small,
medium and large companies, however, is something that in most of often do not
receive adequate attention, and unfortunately, only thought of one monitoring solution
after suffering with a great environment problem. Thinking about such issues, takes
the use of servers that perform the monitoring and control of these environments,
where one of the options is to use a Samba file server, which in this work was
designed to provide a network file system in a environment with Linux and Windows,
because they are the most used today. In order to show the benefits of using this
service, studies and several tests that simulated the operation of a real working
environment, presenting results considerable, which interfered positively in operation
and network performance, making it much safer and more reliable, requirements core
within a corporation. The work presented, recounts in detail the steps for
implementation of this environment.
Keywords: Monitoring; Network; Samba; Linux; File server;
SUMÁRIO
1 INTRODUÇÃO ........................................................................................................14
1.1 Apresentação ...........................................................................................................14
1.2 Descrição do problema ............................................................................................15
1.3 Justificativa ..............................................................................................................15
1.4 Objetivo geral ..........................................................................................................16
1.5 Objetivos específicos ...............................................................................................16
1.6 Metodologia .............................................................................................................16
2 GERENCIAMENTO DE REDES...........................................................................18
2.1 Conceito ...................................................................................................................18
2.2 Sistemas de Arquivos ..............................................................................................19
2.2.1 Sistema FAT..................................................................................................................... 19
2.2.2 Sistema NTFS .................................................................................................................. 21
2.2.3 Sistema EXT..................................................................................................................... 21
2.3 Sistema Operacional OpenSuse ...............................................................................23
2.4 Servidor Samba .......................................................................................................24
2.4.1 História ............................................................................................................................ 24
2.4.2 Principais funções e benefícios ....................................................................................... 25
2.4.3 Funcionamento e Administração ..................................................................................... 26
2.4 Conclusão ................................................................................................................28
3 PROJETO DE SERVIDOR DE DADOS EM REDE ...........................................29
3.1 Sistema Operacional OpenSuse ...............................................................................29
3.1.1 Instalação e configuração ............................................................................................... 29
3.1.2 YaST ................................................................................................................................. 32
3.1.3 Zypper .............................................................................................................................. 33
3.2 Samba ......................................................................................................................34
3.2.1 Instalação ........................................................................................................................ 34
3.2.2 Configuração do samba .................................................................................................. 34
3.3 Controle de acessos .................................................................................................35
3.3.1 Permissões de arquivos e diretórios................................................................................ 35
3.3.2 Controle de usuários ....................................................................................................... 36
3.4 Apache .....................................................................................................................37
3.5 Conclusão ................................................................................................................37
4 IMPLANTAÇÃO E MONITORAMENTO DO SERVIDOR SAMBA ..............39
4.1 Implantação .............................................................................................................39
4.1.1 Configurações.................................................................................................................. 39
4.1.2 Estruturação dos controles de acesso ............................................................................. 40
4.2 Monitoramento ........................................................................................................41
4.2.1 Ferramentas de monitoramento ...................................................................................... 41
4.2.2 Testes de desempenho e segurança e resultados ............................................................. 43
4.3 Conclusão ................................................................................................................45
5 CONSIDERAÇÕES FINAIS ...................................................................................46
REFERÊNCIAS BIBLIOGRÁFICAS ......................................................................48
BIBLIOGRAFIA COMPLEMENTAR .....................................................................50
APÊNDICE - IMPLANTAÇÃO DE UM SERVIDOR DE ARQUIVOS SAMBA
EM UM AMBIENTE WINDOWS.............................................................................51
1 INTRODUÇÃO
1.1 Apresentação
A Tecnologia da Informação está cada vez mais presente dentro de empresas
dos mais diversos ramos de atuação, o que a torna hoje algo indispensável em qualquer
tipo de negócio por motivos como a economia de tempo em diversas atividades,
confiabilidade, facilidade de armazenamento de informações importantes de uma
organização, e ao mesmo tempo, a comodidade de acesso as mesmas.
Justamente pelo fato de estar tratando de informações importantes, muitas
vezes preciosas para determinadas empresas, torna-se necessário prover uma forma
segura de armazenamento, mantendo a integridade e disponibilidade desses arquivos,
sempre que necessário o acesso a eles. E para que isso seja possível, é necessário um
completo e rígido sistema de gerenciamento da rede e dessas informações.
A informação é um patrimônio, é algo de valor. Não se trata de um monte de
bytes aglomerados, mas sim de um conjunto de dados classificados e
organizados de forma que uma pessoa ou uma empresa possa tirar proveito.
A informação é inclusive um fator que pode determinar a sobrevivência ou a
descontinuidade das atividades de um negócio. E isso não é difícil de ser
entendido. Basta imaginar o que aconteceria se uma instituição financeira
perdesse todas as informações de seus clientes. (ALECRIM, 2008).
A não utilização de soluções para a centralização dos dados corporativos
acaba gerando duplicidade de dados e até mesmo desencontro de informações. Estes
problemas ocorrem, por algumas organizações não conhecerem os reais benefícios da
utilização de servidores de arquivos e monitoramento de redes.
Para solução dos problemas supracitados, grandes empresas têm adotado o
uso de servidores de arquivos, onde as informações ficam centralizadas, facilitando
rotinas de manutenção e backup1. Além disso, uma correta administração da rede de
dados e do tráfego de informações auxilia neste processo de monitoramento de redes.
Dentre as soluções mais utilizadas estão os servidores de arquivos baseados
no sistema operacional Linux, que tem apresentado grande eficácia e confiabilidade na
gerência dos dados que trafegam pela rede de uma corporação.
1.2 Descrição do problema
Tanto pequenas quanto grandes empresas sofrem sérios problemas devido à
lentidão de suas redes de computadores, gerados pela descentralização das
informações, falta de segurança e confiabilidade, e a ausência de um ambiente de
monitoramento de dados.
1.3 Justificativa
É cada vez mais comum as empresas utilizarem servidores para armazenar as
informações que trafegam por sua rede local, com o intuito de centralizá-las, trazendo
assim diversos benefícios para a organização, tornando seus arquivos mais
organizados e facilitando o acesso de seus usuários, diminuindo significativamente o
tráfego da rede.
Empresas que, por exemplo, trabalham com manutenção de computadores,
tem o trabalho facilitado e mais eficiente, centralizando os softwares e arquivos
necessários, assim como backups de clientes, em um único servidor, além de tornar
ainda mais seguras e íntegras tais informações.
Como solução para estes problemas, propõe-se a implantação de um servidor
de arquivos gerenciado pelo serviço Samba, com o sistema operacional Open Suse de
plataforma Unix/Linux, com a proposta de aumentar ainda mais o aproveitamento e
eficiência dos servidores e serviços de uma rede, além de proporcionar maior
segurança aos dados que trafegam pela mesma, seja relacionado a malwares (softwares
1
Backup: cópia de segurança dos dados.
mal intencionados), falha humana ou problemas físicos em estações de trabalho.
Segundo Alecrim (2005), com o servidor Samba, é possível compartilhar
arquivos, compartilhar impressoras e controlar o acesso a determinados recursos de
rede com igual ou maior eficiência que servidores baseados em sistemas operacionais
da Microsoft. Mas, neste caso, o sistema operacional utilizado é o Linux.
1.4 Objetivo geral
O objetivo principal deste trabalho é a implantação de um servidor de
arquivos Samba em um ambiente Linux, como solução para problemas de desempenho
e segurança dos dados que trafegam pela rede.
1.5 Objetivos específicos
a) Realizar estudos sobre os serviços a serem disponibilizados no sistema;
b) Elaborar e implantar o projeto para implementação de um servidor de
dados para redes corporativas;
c) Efetuar testes a fim de verificar o desempenho e a segurança dos dados
que trafegam pela rede.
1.6 Metodologia
Inicialmente, foi realizada uma pesquisa bibliográfica acerca da ferramenta
que foi utilizada para a elaboração do trabalho proposto, a partir de sua documentação
e também artigos e livros sobre o assunto, além da busca de informações em
servidores que já utilizam um sistema semelhante.
Após a conclusão dos estudos sobre a ferramenta, foi dado início ao
desenvolvimento do projeto, seguindo na ordem as seguintes etapas: problema,
objetivo, justificativa, metodologia e cronograma.
Na sequência, foi definida a melhor forma de como implantar o sistema e
quais serão as reais funções do servidor, realizando testes que simulam o
funcionamento em um caso real, colhendo as informações necessárias e fazendo as
alterações para que possam ser realizados os testes em uma situação real.
Após todas as definições obtidas nas simulações, o sistema foi implantado
em um ambiente real de trabalho, então foram gerados logs2 de desempenho, que logo
após foram analisados, para que fossem feitas as mudanças ainda necessárias no
sistema.
Finalizadas as demais etapas e a implantação do sistema, foram feitas as
considerações finais do projeto, apresentando os resultados, pontos positivos e
negativos de tal implantação, além de sugestões para trabalhos futuros.
2
Logs: registro de atividades gerado por programas de um computador.
2 GERENCIAMENTO DE REDES
Este capítulo aborda conceitos básicos de rede e gerenciamento de redes, e a
importância do monitoramento do tráfego de dados na rede.
Além disso, também são abordados os principais sistemas de arquivos
utilizados, bem como suas características mais importantes.
2.1 Conceito
As redes foram criadas, inicialmente, como um meio de compartilhar
dispositivos periféricos mais caros como impressoras, modems de alta velocidade, etc.
Porém, à medida que as redes crescem e tornam-se integradas às organizações, o
compartilhamento dos dispositivos toma aspecto secundário em comparação às outras
vantagens oferecidas (SZTAJNBERG, 1996). Conforme o autor, as redes passaram a
fazer parte do cotidiano dos usuários como uma ferramenta que oferece recursos e
serviços que permitem a interação e o aumento de produtividade, tornando-se cada vez
mais necessárias para manter os ambientes funcionando de maneira eficiente.
A gerência em redes de computadores se torna uma tarefa complexa em
grande parte dos casos, por conseqüência do crescimento acelerado das mesmas e
tanto em desempenho e suporte a um grande conjunto de serviços.
As informações que circulam em uma rede de computadores devem ser
transportadas de modo confiável e rápido. Para que isso aconteça é
importante que os dados sejam monitorados de maneira que os problemas
que porventura possam existir sejam resolvidos na medida do possível. Uma
rede sem mecanismos de gerência pode apresentar problemas como
congestionamento do tráfego, recursos mal utilizados, recursos
sobrecarregados, problemas com segurança e outros (SZTAJNBERG, 1996).
Esta gerência está diretamente associada ao controle de atividades e ao
monitoramento do uso de recursos da rede. As tarefas mais básicas da gerência em
redes, de forma simplificada, são obter informações da rede, tratar estas informações,
possibilitando um diagnóstico, e encaminhar as soluções dos problemas. Para cumprir
estes objetivos, funções de gerência devem ser acopladas nos diversos componentes de
uma rede, possibilitando descobrir, prever e reagir a problemas.
2.2 Sistemas de Arquivos
Sistema de arquivos é um conjunto de estruturas lógicas e de rotinas, que
permitem ao sistema operacional controlar o acesso aos arquivos do disco rígido.
Diferentes sistemas operacionais usam diferentes sistemas de arquivos (MORINOTO,
2007).
Conforme cresce a capacidade dos discos e aumenta o volume de arquivos e
acessos, esta tarefa torna-se mais e mais complicada, exigindo o uso de
sistemas de arquivos cada vez mais complexos e robustos.
Existem diversos sistemas de arquivos diferentes, que vão desde sistemas
simples como o FAT16, que utilizamos em cartões de memória, até sistemas
como o NTFS, EXT3 e ReiserFS, que incorporam recursos muito mais
avançados (MORINOTO, 2002).
No Windows, existem apenas três sistemas de arquivos: FAT16, FAT32 e
NTFS. O FAT16 é o mais antigo dentre os citados, usado desde os tempos do MSDOS, enquanto o NTFS é o mais complexo e utilizado atualmente. Apesar disso, se
tem uma grande variedade de sistemas de arquivos diferentes no Linux (e outros
sistemas Unix), que incluem o EXT2, EXT3, ReiserFS, XFS, JFS e vários outros. Para
quem utiliza somente o Windows, estes sistemas podem parecer exóticos, mas eles são
bastante conhecidos por quem trabalha com servidores, já que nestes o Linux é o
sistema mais utilizado.
2.2.1 Sistema FAT
FAT é a sigla para File Allocation Table (tabela de alocação de arquivos). A
primeira versão do FAT (FAT 16) surgiu em 1977, para funcionar com a primeira
versão do DOS. De acordo com ALECRIM (2003), trata-se de um sistema que
funciona através de uma espécie de tabela que contém indicações para onde estão as
informações de cada arquivo. Quando um arquivo é salvo num disquete por exemplo,
o FAT divide a área do disco em pequenos blocos. Assim, um arquivo pode (e ocupa)
vários blocos, mas eles não precisam estar numa seqüência. Os blocos de determinados
arquivos podem estar em várias posições diferentes. Daí a necessidade de uma tabela
para indicar cada bloco.
Com o surgimento de dispositivos de armazenamento com mais capacidade e
mais sofisticados, o sistema FAT foi ganhando alterações (identificadas pelos nomes
FAT12 e FAT16). Isso foi necessário porque o FAT era limitado a determinada
capacidade de armazenamento. Por exemplo, ele só operava com tamanho máximo de
2 GB. Assim, num disco de 5 GB, seria necessário dividi-lo em 3 partições. Fora o fato
de que o FAT apresentava problemas com informações acima de 512 MB. Diante de
tantos problemas, em 1996, a Microsoft lançou um novo FAT: o FAT32, que é
compatível com os Windows 9x/Me/2000 e XP (apesar destes dois últimos terem um
sistema de arquivos mais avançado, o NTFS).
O sistema de arquivos FAT não trabalha diretamente com cada setor, mas
sim com um grupo de setores. Esse grupo é chamado de cluster 3(ou unidade
de alocação). Se por exemplo, um disco com setor de 512 bytes, tiver 5 KB
de tamanho, ele terá 10 setores e 5 clusters, se cada cluster ocupar dois
setores. Sendo assim, quando o FAT precisar acessar um determinado setor,
primeiro ele descobre em qual cluster ele se encontra. É válido citar que
tanto o FAT quanto o FAT32 trabalham de acordo com este princípio
(ALECRIM, 2003).
Já no caso do sistema FAT32, o tamanho dos clusters é determinado com
base na relação entre os comandos FDISK e FORMAT, apesar de que é possível
determinar o tamanho do cluster do FAT32 também por programas de terceiros. O
tamanho máximo da partição em FAT32 é de 2TB. O FAT32 também é considerado
mais confiável do que as demais versões, por conseguir posicionar o diretório principal
do sistema, em qualquer lugar do disco. Além do fato de que este tipo de partição pode
3
Cluster: é a menor parte do HD que pode ser acessada pelo sistema operacional.
ter seu tamanho alterado sem a perda dos dados contidos no disco.
2.2.2 Sistema NTFS
NTFS é a sigla para New Technology File System. Desde os tempos do DOS,
a Microsoft utilizava o sistema de arquivos FAT, que teve diversas variações e
mudanças ao longo dos anos, porém, já apresentava várias limitações, principalmente
em relação a segurança. Então, viu-se a necessidade de criar um novo sistema, este, o
NTFS, que inicialmente foi utilizado em versões do Windows destinadas para
servidores. Apesar de desenvolvido pela Microsoft, boa parte do NTFS foi herdada do
sistema HPFS (High Performance File System).
O NTFS possui características importantes, que o fez ser considerado um
bom sistema de arquivos. Entre essas qualidades estão: confiança, pois
permite que o sistema operacional se recupere de problemas sem perder
informações, fazendo-o ser tolerante a falhas; segurança, onde é possível ter
um controle de acesso preciso e ter aplicações que rodem em rede, fazendo
com que seja possível o gerenciamento de usuários, incluindo suas
permissões de acesso e escrita de dados; armazenamento, onde é possível
trabalhar com uma grande quantidade de dados, permitindo inclusive o uso
de arrays RAID; rede, fazendo do sistema plenamente funcional para o
trabalho e o fluxo de dados em rede (ALECRIM, 2003).
Segundo o autor, o NTFS mantém um log de todas operações realizadas pelo
sistema, então, por exemplo, mesmo que o sistema seja desligado durante uma
atualização, na próxima vez que for ligado esse log é analisado pelo sistema e recupera
do ponto onde parou, corrigindo automaticamente eventuais falhas, tornando o sistema
mais tolerante a falhas do que seus antecessores.
2.2.3 Sistema EXT
O sistema de arquivos EXT, sigla para Extend File System, foi lançado em
Abril de 1992, a fim de substituir o já defasado sistema utilizado pela plataforma Unix,
o MinixFS.
Em sua primeira versão, o EXT permitia a criação de partições de até 2Gb e
dava suporte a nomes de arquivos de até 255 caracteres. Sem dúvidas este sistema foi
um grande avanço, se comparado ao seu antecessor, porém, ainda estava longe do
ideal, pois seu desempenho era muito baixo, e era tão suscetível a fragmentação dados
quanto o FAT. Diante desses problemas e do surgimento de discos rígidos de mais de
2Gb, a primeira grande atualização do sistema já ocorreu em 1993, com o então
chamado EXT2.
A grande evolução do EXT2 em relação ao EXT, foi o suporte a partições
com até 32Tb.
O maior problema do EXT2 é que ele não inclui nenhum sistema de
tolerância a falhas. Sempre que o sistema é desligado incorretamente, é
necessário utilizar o fsck, um utilitário similar ao scandisk do Windows, que
verifica todos os blocos do sistema de arquivos, procurando por
inconsistências entre as estruturas e descrições e os dados efetivamente
armazenados. O teste do fsck demora bastante (bem mais que o scandisk) e o
tempo cresce proporcionalmente de acordo com o tamanho da partição. Em
um HD atual, o teste pode, literalmente, demorar horas (MORINOTO,
2007).
Estes e outros problemas foram corrigidos no EXT3, lançado em 1999, que
trouxe como principal característica o recurso journaling, similar ao LFS do sistema
NTFS, que mantém um diário das alterações realizadas no sistema.
O EXT3, sistema que será utilizado neste trabalho, trabalha com endereços
de 32 bits e blocos de até 8Kb, que determina tanto o tamanho máximo da partição,
quanto o tamanho máximo dos arquivos, que são determinados durante a formatação
da unidade de armazenamento, que pode ter até 32Tb de capacidade.
TABELA 1 Tamanho dos blocos
1 KB
2 KB
4 KB
8 KB
Tamanho máximo da partição e dos arquivos
Tamanho máximo da partição
2 TB
8TB
16 TB
32 TB
Tamanho máximo dos arquivos
16 GB
256 GB
2TB
2TB
(FONTE: CARLOS E. MORINOTO, 2007)
Por padrão, o tamanho dos blocos é determinado de forma automática com
base no tamanho da partição, porém, este pode ser customizado utilizando parâmetros
do comando que gerencia a criação de partições EXT3 no Linux.
Nos dias de hoje o limite de 32Tb para partições ainda não é um problema,
mas já prevendo o rápido crescimento de capacidade dos Discos Rígidos (Hard Disks
– HDs), o EXT3 já tem seu sucessor, o sistema EXT4, que utiliza endereços de 48 bits,
o que permite criar partições de até 1024 petabytes4, além de não limitar mais o
tamanho dos arquivos em 2Tb, contribuindo para o armazenamento de bases de dados
gigantescas e arquivos que ultrapassem este número.
Apesar de existirem vários outros sistemas de arquivos disponíveis para
plataformas Linux, o EXT3 é hoje o mais utilizado e já vem sendo substituído pelo
EXT4.
2.3 Sistema Operacional OpenSuse
O sistema operacional OpenSUSE é uma distribuição Linux, desenvolvida
pela OpenSUSE, que teve sua primeira versão lançada em março de 1994. Em 2004 a
SUSE foi adquirida pela empresa norte-americana Novell, que logo lançou a versão
SUSE Linux 10.0, e que atualmente, desde novembro de 2009, tem como versão a
openSUSE 11.2, um sistema open source5 que pode ser baixado diretamente de seu
site oficial, e traz junto dele diversos aplicativos de código aberto. O sistema utiliza a
última versão do kernel6 Linux, e já utiliza como sistema de arquivos padrão o EXT4.
De acordo com Monqueiro (2009), apesar de não ser muito comum sua
utilização no Brasil, o OpenSuse é largamente utilizado no exterior, possuindo uma
vasta documentação em diversas línguas. No seu site oficial é possível encontrar todos
repositórios disponíveis, além de diversos textos e arquivos de ajuda sobre o sistema,
que auxiliam o usuário na instalação e configuração do sistema.
Uma das características do OpenSUSE é o Yast, um aplicativo de
gerenciamento que traz a possibilidade de configurar de forma gráfica vários
elementos do sistema operacional, o que torna o manuseio do sistema muito mais
simples e amigável, tanto para o uso comum quanto para o uso mais avançado do
4
Petabytes: é uma unidade de medida de armazenamento, equivalente a 1024 Terabytes.
Open source: termo para “código aberto”, que faz referência a software livre.
6
Kernel: série de arquivos que constituem um sistema operacional.
5
sistema, suas configurações e gerenciamento.
O sistema se destaca pela facilidade e eficiência em tarefas como
gerenciamento e bloqueio de pacotes e gerenciamento de repositórios, através de
ferramentas como o Zypper que já é integrada ao sistema.
Por ser um sistema que apresenta diversas vantagens, como algumas citadas
acima, apresentar um bom desempenho e ter muitas outras características a serem
exploradas, já que ainda não é um sistema com grande popularidade, o OpenSUSE foi
o sistema optado para se trabalhar junto ao Samba neste trabalho.
2.4 Servidor Samba
O Samba é um servidor com um conjunto de ferramentas que auxiliam a
comunicação entre máquinas Linux e Windows, fazendo o compartilhamento de vários
serviços, como arquivos e impressoras em uma rede.
As soluções disponíveis no Samba são as mais utilizadas para interligar redes
com diferentes sistemas, de forma heterogênea, facilitando a administração e
centralização do ambiente, com a grande vantagem de seu custo ser praticamente zero.
2.4.1 História
O Samba tem como seu criador, Andrew Tridgell, que criou o sistema a
partir da sua necessidade de montar um volume Unix em uma máquina que utilizava
DOS, escrevendo um código que auxiliasse a interpretar o tráfego Network Basic Input
Output System (NetBIOS) da rede.
Tridgell 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
patches7. 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
7
Patch: atualização que corrige pequenos problemas ou falhas no sistema.
implementando novas funções (SILVA, 2007).
A partir daí, o projeto se desenvolveu rapidamente. Surgiu o nome Samba e
novos integrantes se juntaram a equipe de desenvolvimento do sistema, lançando a
primeira versão do sistema, a 1.6.05. O software foi desenvolvido a ponto de executar
com qualidade e estabilidade todas as funções de gerenciamento propostas, ganhando
bastante destaque sobre as demais alternativas disponíveis.
Segundo Morinoto (2008), o projeto começou a se tornar popular a partir da
versão 1.6.09 (lançada pouco depois), que foi a primeira a trazer suporte ao controle de
acesso com base nos logins8 de usuário (assim como o Windows NT), enquanto as
versões anteriores suportavam apenas o controle de acesso com base no
compartilhamento (assim como no Windows 3.11 e 95), onde a única opção de
segurança era usar uma senha de acesso para os compartilhamentos.
Desde então, o serviço tem atraído cada vez mais usuários e
desenvolvedores, consagrando o eficiente sistema.
2.4.2 Principais funções e benefícios
O Samba tem como base dois programas chave, o smbd que é o próprio
servidor, e o nmbd, que é o servidor de nomes NetBIOS. Ambos têm como função
fornecer de forma eficiente os serviços básicos do Samba, que segundo Décio (2000),
são:
• Compartilhamento de arquivos e impressão;
• Autenticação e autorização de acesso;
• Resolução de nomes;
• Anúncio de tráfego e browsing (visualização dos recursos disponíveis na
rede).
Há suporte para a utilização de arquivos com nomes longos; as contas de
usuários ou grupos, arquivos e impressoras podem ser visualizados como se fossem
8
Login: conjunto de caracteres utilizado pelo usuário para acessar um sistema.
pastas e arquivos no Windows Explorer (Décio, 2000).
Assim, o Samba tem o comportamento como de qualquer outro servidor
desenvolvido para redes com sistemas Microsoft, porém, agregando todas as vantagens
de um servidor Linux.
2.4.3 Funcionamento e Administração
O Samba consiste em dois daemons9, diversos programas e um arquivo de
configuração (smb.conf). Os daemons são acessados pelos clientes utilizando os
protocolos TCP/UDP (Décio, 2000).
A figura 1 apresenta um esquema de um servidor Samba realizando a
integração de redes Windows e Linux, juntamente com periféricos compartilhados na
rede.
FIGURA 1 - Ilustração da interação Linux/Windows
(FONTE: DÉCIO JR., 2000)
2.4.3.1 SMBD: servidor Samba
Serviços de compartilhamento de arquivos e impressão fazem parte do
conjunto CIFS (Common Internet File System) e são fornecidos pelo daemon SMB
smbd. O smbd também controla o sistema de autenticação e autorização de acesso de
usuários por meio dos modos: modo compartilhado e modo usuário (Décio, 2000).
O modo compartilhado é o mais simples, nele uma senha pode ser atribuída a
9
Daemon: processo que roda num sistema operacional em nível não perceptível pelo usuário.
um diretório ou impressora compartilhada na rede, e uma única senha é fornecida aos
diversos usuários autorizados, o que torna este modo o menos recomendado.
Já no modo usuário, cada usuário terá seu próprio login e senha para
autenticação, assim, o administrador da rede pode liberar ou negar acessos
individualmente aos usuários.
2.4.3.2 NMBD: servidor de resolução de nomes NetBIOS
Os serviços de resolução de nomes e browsing, que também fazem parte do
CIFS, são controlados pelo daemon nmbd e envolvem basicamente o gerenciamento e
a distribuição da lista de nomes NetBIOS. A resolução de nomes pode ser realizada de
duas formas: por meio de broadcast10 ou ponto-a-ponto (JÚNIOR, 2000).
Dependendo da configuração utilizada, uma máquina pode utilizar ambas as
formas. A resolução por broadcast é a mais próxima do sistema NetBIOS original.
Quando um cliente procurar por um serviço na rede, irá solicitar se determinado
recurso está disponível no momento e irá aguardar até que a máquina referente ao
nome solicitado e o serviço responda com o endereço IP. Isso pode gerar um pouco de
tráfego na rede (broadcast), mas será restrito a rede local e não causará maiores
problemas.
No modo ponto-a-ponto é utilizado o servidor NBNS (NetBios Name
Service), mais conhecido no Windows como WINS (Windows Internet Name Service).
Diferentemente da forma anterior, são disponibilizados na rede o nome e o endereço IP
das máquinas, para que possam ser consultadas por outras.
Segundo DÉCIO (2000), quando um cliente quiser se comunicar com outro
cliente, apenas envia o nome para o servidor NBNS. Caso o nome conste na lista, o
NBNS retorna o endereço IP.
2.4.3.3 Protocolos envolvidos
A interface NetBIOS inicialmente era utilizada apenas para redes locais, ela
10
Broadcast: processo pelo qual se transmite determinada informação.
permite que aplicações se comuniquem com o hardware de rede.
NetBIOS
Extended
User
Interface
(NetBEUI)
é
utilizada
para
compartilhamento de arquivos em redes locais, porém, o Samba não utiliza mais esta
interface.
Um protocolo de grande importância para a criação do Samba foi a NBT
(NetBIOS over TCP/IP), que é capaz de emular redes locais (NetBIOS) sobre redes
TCP/IP roteadas.
A interface NBNS, conhecida como resolução WINS, atua como uma lista
ordenada de endereços. Os clientes NetBIOS enviam seus nomes e endereços para
encontrarem outros endereços na rede, então, é feita uma busca pelo nome na lista do
NBNS. No Samba, essa resolução é controlada pelo daemon nmbd.
Por fim, o protocolo utilizado em plataformas Windows para fazer a
comunicação e compartilhamento de arquivos e impressoras em servidores Linux por
meio de uma rede TCP/IP, é o SMB, chamado também de CIFS (Common Internet
File System).
2.4 Conclusão
Nesse capítulo foram abordados aspectos do gerenciamento de rede, bem
como a importância deste processo para o desempenho das redes.
Também foram vistos os principais sistemas de arquivos, com ênfase nos que
serão utilizados neste trabalho, além dos sistemas que serão utilizados no decorrer do
trabalho para auxiliar no gerenciamento de redes.
Este capítulo foi importante, pois é o referencial teórico e parte conceitual
que serve de embasamento para os capítulos posteriores.
3 PROJETO DE SERVIDOR DE DADOS EM REDE
Este capítulo aborda os principais componentes necessários para a execução
do projeto em questão, explicando sobre o sistema operacional utilizado e o sistema
Samba, desde a instalação, até a sua configuração e de seus demais componentes que
foram importantes neste projeto.
3.1 Sistema Operacional OpenSuse
O OpenSUSE é o sistema utilizado neste trabalho para auxiliar nas tarefas de
gerenciamento de rede, devido ao fato de ser um sistema de fácil controle e por dispor
diversas ferramentas a serem exploradas, que irão contribuir no desenvolvimento do
projeto.
3.1.1 Instalação e configuração
O OpenSUSE está disponível para download11 de forma livre e íntegra em
seu site oficial, nas versões de 32 e 64 bits, em formato de imagem para ser gravada
em um DVD que irá fazer o boot12 no computador para iniciar a instalação.
Todo processo de instalação é executado através de uma prática e completa
interface gráfica, na linguagem escolhida pelo usuário no início da instalação, como
pode ser visualizado na figura 2, em que são realizados os testes de requisitos do
sistema:
11
12
Download: transferência de dados de um computador remoto para um computador local.
Boot: processo de inicialização do computador.
FIGURA 2 - Etapa de teste do sistema.
Após, o usuário escolhe o método de instalação e tem opção de cinco layouts
para área de trabalho diferentes, sendo a KDE a padrão.
Na etapa de particionamento (figura 3), automaticamente o sistema sugere os
tamanhos das partições que serão por ele utilizadas de acordo com o tamanho do disco
rígido, mas que podem ser livremente editadas pelo usuário.
FIGURA 3 - Tela de particionamento.
Após esta etapa, inicia-se a configuração do sistema, definindo os logins e
senhas dos usuários do sistema, e em seguida é possível selecionar os programas que
deverão ser ou não instalados junto ao sistema, conforme mostra a figura 4.
FIGURA 4 - Tela de seleção dos programas disponíveis.
Então, após serem definidas todas as configurações básicas do sistema, é
finalizada a instalação do mesmo, e no próximo boot o sistema operacional já
inicializará a partir do disco rígido.
Na figura 5 é apresentada a tela da área de trabalho do sistema.
FIGURA 5 - Área de trabalho do sistema.
3.1.2 YaST
Segundo Martins (2009), YaST é a ferramenta de instalação e configuração
para OpenSUSE, SUSE Linux Enterprise e o antigo SuSE Linux. Possui uma atraente
interface gráfica capaz de personalizar o seu sistema rapidamente durante e após a
instalação, podendo também ser utilizada em modo texto.
O YaST é uma interface gráfica, que tem como finalidade facilitar o uso do
zypper, permitindo atualizar o sistema, instalar e remover programas, configurar
periféricos, ver detalhes sobre cada pacote entre outras funções, tudo dentro de uma
interface gráfica relativamente simples de se utilizar. O YaST tem funcionalidades
semelhantes ao Synaptic, utilizado em sistemas como o Ubuntu e o Mandriva.
O YaST é um projeto open source patrocinado pela Novell, que teve no ano
de 1995 o início de seu desenvolvimento, e é todo escrito na linguagem C++.
Ao abrir a tela do YaST, o usuário se depara com uma uma interface toda
dividida em categorias, o que torna ainda mais simples seu uso, como exemplo da
figura 6.
FIGURA 6 - Gerenciador YaST.
O YaST oferece também um mecanismo de busca para o usuário encontrar
determinado pacote que esteja procurando, seja pelo nome do pacote, versão ou
dependências do mesmo. Também podem ser alteradas as fontes de busca dos pacotes,
alterando, excluindo ou incluindo o endereço de um repositório de informações, como
mostra a figura 7.
FIGURA 7 - Gerenciador de pacotes de software do YaST.
3.1.3 Zypper
O Zypper é um gerenciador de pacotes em linha de comando que foi
introduzido no OpenSUSE 10.2 Beta 1, ele é relativamente fácil de usar e não deixa a
desejar se comparado a outros gerenciadores comuns em sistemas Linux, como por
exemplo, apt-get, realizando as principais funções como instalação, configuração,
desinstalação e procura de novas atualizações. No quadro 1, pode-se ver alguns
exemplos de sintaxes.
1
QUADRO 1 zypper in <nome do pacote>
Instala o pacote.
Exemplos de sintaxes.
2
zypper rm <nome do pacote>
Remove o pacote.
3
zypper lu
Verifica se há atualizações nos repositórios.
(Fonte: GOMES, 2010)
3.2 Samba
O Samba é o aplicativo responsável por tornar possível o compartilhamento
de recursos entre máquinas Linux e Windows, e será o servidor de dados utilizado
neste projeto para auxiliar nas tarefas referentes ao gerenciamento da rede, sendo
responsável pelas principais configurações de monitoramento e compartilhamento dos
recursos da rede.
3.2.1 Instalação
Dentre as várias formas de instalação possíveis, são citadas apenas as mais
relevantes, a instalação pelo YaST e através do comando zypper, respeitando as
dependências.
No modo de instalação pelo YaST, todo processo é realizado por interface
gráfica, por isso é considerado o modo mais simples.
Acessando o YaST, já é apresentada uma lista com todos pacotes de
programas disponíveis, localizado o Samba, autoriza o sistema a iniciar a instalação
que é feita de forma praticamente automática, sem a necessidade de intervenção do
usuário, finalizado o processo, o programa já pode ser utilizado.
A segunda forma de instalação é realizada por meio do comando zypper,
esta, um pouco mais complexa, pois é toda feita através do terminal.
Acessando o terminal, o usuário deve fazer o login no sistema como root
(administrador do sistema), feito isso, é executado o comando para instalação do
Samba, que basicamente é “zypper samba”, então o sistema irá baixar o pacote
referente a solicitação, e iniciará a instalação do mesmo.
3.2.2 Configuração do samba
Depois de finalizada a instalação do Samba, é necessário realizar a
configuração do arquivo smb.conf, onde são configurados parâmetros básicos da rede,
como o IP, grupo de trabalho, localização do arquivo de log, entre outros, como
apresentado na figura 8.
FIGURA 8 - Arquivo de configuração smb.conf.
3.3 Controle de acessos
As permissões para controle de acesso são um dos aspectos de maior
importância em sistemas Linux, elas servem para diversas finalidades, mas a principal
é proteger o sistema e os arquivos dos usuários.
Como na maioria dos sistemas, apenas o usuário administrador (root) tem
acesso a estes recursos de controle de acesso, cabe a ele determinar o que cada usuário
pode acessar, modificar, criar e executar, o que é um dos pontos fortes do sistema, pois
o mesmo é bastante flexível para tal controle, que pode ser feito tanto para arquivos e
diretórios quanto para usuários ou grupos.
3.3.1 Permissões de arquivos e diretórios
A alteração de permissões de arquivos e diretórios no Linux é feita através
do comando chmod, que pode ser utilizado de duas formas, com letras ou no modo
numérico.
A figura 9 mostra um exemplo de tela do terminal Linux, após o comando
“ls –la” que apresenta as permissões de alguns arquivos, onde se tem informações
como nome, data, usuário, e na primeira coluna as configurações de permissões.
FIGURA 9 - Tela do terminal apresentando as permissões.
Os caracteres da primeira coluna de permissões, são divididos da seguinte
forma, como mostra o quadro 2.
QUADRO 2 -
Significado das siglas
3.3.2 Controle de usuários
O controle de usuários no Samba é realizado através do comando executado
pelo root, o chown, que permite alterar o dono ou grupo de um arquivo ou diretório,
que é apresentado da forma que mostra o quadro 3.
1
QUADRO 3 - Exemplo de sintaxe CHOWN.
# ls –l
Comando que mostra quem é o usuário proprietário dos diretórios.
2
# chown <usuário> /diretório
Comando que altera o proprietário de determinado diretório.
3
# chown –c –R <usuário> /diretório
Comando que altera o proprietário de um diretório e seus subdiretórios.
4
# chown <usuário>:<grupo> /diretório
Comando que altera o grupo que pertence o diretório
3.4 Apache
O Apache é um servidor web que processa solicitações Hyper Text Transfer
Protocol (HTTP), que é o protocolo padrão da web. Além de processar outros
protocolos como Secure Socket Layer (SSL), e File Transfer Protocol (FTP).
O servidor Apache (ou Apache Server) surgiu no National Center of
Supercomputing Applications (NCSA) através do trabalho de Rob McCool.
Ao sair da NCSA, McCool parou de trabalhar no software (que nessa época
recebia justamente a denominação NCSA) e então várias pessoas e grupos
passaram a adaptar o servidor Web às suas necessidades. No entanto, foram
Brian Behlendorf e Cliff Skolnick os principais responsáveis pela retomada
do projeto, contando logo em seguida com o apoio de Brandon Long e Beth
Frank. Estes últimos tinham a tarefa de continuar com o desenvolvimento do
servidor, mas pela NCSA. Não demorou muito para que eles se juntassem ao
Apache Group (ALECRIM, 2006).
Segundo Tibet (2001), Apache HTTP Server é o servidor web mais
conhecido no mundo se tratando de software livre, usado em 60% dos casos,onde
éresponsável por mais de uma dezena de projetos envolvendo tecnologias de
transmissão via web, processamento de dados e execução de aplicativos distribuídos.
O que leva o Apache a ser o mais utilizado e conhecido servidor web, é o
fato de oferecer um ótimo desempenho, segurança e ser compatível com as mais
diversas plataformas, como Windows, Linux e OS/2.
Neste trabalho, o Apache será o servidor web responsável por apresentar os
relatórios do Sarg.
3.5 Conclusão
Neste capítulo foram abordados quesitos referentes à instalação do sistema
operacional do servidor, nesse caso o sistema OpenSUSE Linux, bem como o servidor
de arquivos a ser utilizado que é o Samba.
Além da instalação e configuração do samba, também foram abordados
assuntos referentes às permissões de acesso aos arquivos e o controle de usuários, que
juntos formam o Controle de Acessos. Nesse ponto verifica-se a importância do
controle de acesso num servidor de arquivos.
Como ferramentas utilizadas no projeto do servidor, o servidor Web Apache
tem grande importância, pois os resultados dos testes podem ser visualizados no
navegador.
Maiores detalhes das configurações de permissões de arquivos e controle de
acesso de usuários do presente servidor de arquivos são abordados no capítulo 4.
4 IMPLANTAÇÃO E MONITORAMENTO DO SERVIDOR SAMBA
4.1 Implantação
Este capítulo aborda de forma detalhada as formas e possibilidades de
configuração do Samba, e apresenta quais as principais funções e parâmetros foram
utilizados na implantação do servidor.
4.1.1 Configurações
Como já descrito anteriormente, toda configuração do Samba está no arquivo
“smb.conf”, localizado no diretório “/etc”, é nele que ficam armazenados todos os
parâmetros utilizados na configuração, onde ficam descritos os compartilhamentos,
permissões de acessos e impressoras, conforme apresentado na figura 10.
FIGURA 10 - Parâmetros de configuração do arquivo smb.conf.
Como há muitos parâmetros de configuração disponíveis no Samba, apenas
alguns são necessários para que o mesmo opere em condições normais. Muitos destes
parâmetros são utilizados apenas em redes com particularidades e peculiaridades.
No quadro 4 são apresentados os principais parâmetros que foram
configurados na implantação do servidor.
QUADRO 4 Workgroup
Netbios name
Server string
Username map
Log file
Max log size
Usershare max shares
Veto file
Null passwords
Valid users
Alguns dos principais parâmetros de configuração do Samba
Grupo de trabalho que as estações devem estar configuradas
Nome do servidor apresentado as máquinas cliente
Nome do servidor
Local onde são gravados os usuários do Samba
Local onde são gravados os arquivos de log do Samba
Tamanho máximo do arquivo de log do Samba
Número máximo de conexões simultâneas ao servidor
Formato de arquivos vetados do servidor
Define permissões para contas de usuário sem senha
Onde são informados os usuários que tem permissão de acessar tal
compartilhamento
4.1.2 Estruturação dos controles de acesso
Etapa em fase de desenvolvimento, pois é estruturada de acordo com as
necessidades da rede em que estão sendo realizados os testes.
Então inicialmente, foi definida a hierarquia dos diretórios e grupos de
usuários oferecidos e monitorados pelo servidor, lembrando que esta é uma estrutura
fictícia de um ambiente de trabalho padrão para empresas, que foi estruturada apenas
para efeitos de testes.
Foram então criados os seguintes diretórios, divididos por setor, como é
mostrado na figura 11:
• Diretoria;
• Administrativo;
• Financeiro;
• Vendas;
• Pós Venda;
• Público (diretório com acesso liberado a todos os grupos para troca de
arquivos entre setores distintos);
FIGURA 11 - Estruturação dos diretórios no Samba.
Sendo assim, os grupos foram divididos na mesma estrutura e nomenclatura
dos diretórios, onde os funcionários possuem permissão de acesso apenas ao diretório
compatível ao seu setor, com exceção dos usuários do grupo diretoria, que possuem
acesso a todos os demais diretórios. No quadro 5 pode ser visto um exemplo de
configuração de acesso a um diretório.
1
QUADRO 5 - Exemplo de configuração de acesso a um diretório.
[financeiro]
path = /home/financeiro
writable = yes
valid users = +financeiro, +diretoria, Carlos
invalid users = Maria
read list = Joao
No exemplo do quadro 5, são definidos os acessos do diretório financeiro,
que ficou da seguinte forma, os grupos financeiro e diretoria e o usuário Carlos,
possuem acesso de escrita, já a usuária Maria não possui acesso liberado, e o usuário
Joao tem permissão de leitura dos arquivos.
4.2 Monitoramento
4.2.1 Ferramentas de monitoramento
Para realizar o monitoramento de todo tráfego da rede no Samba, pode ser
utilizada a ferramenta nativa smbstatus, que apresenta tudo que está trafegando pela
rede naquele momento. Porém, para realizar um monitoramento ainda mais completo,
pode-se utilizar diversas ferramentas extras totalmente compatíveis com o sistema, que
apresentam os resultados de forma ainda mais detalhada, como o SARG, que serão
melhor explicado a seguir.
4.2.1.1 Smbstatus
A ferramenta smbstatus, nativa do Samba, exibe de forma simplificada
diversas situações e estados do sistema, de acordo com o parâmetro junto a ele
executado, como pode ser visto no quadro 6 alguns exemplos.
1
QUADRO 6 - Parâmetros de execução do comando smbstatus.
# smbstatus
Mostra as conexões ativas e alguns dados dos usuários, e também
indica se o Samba está rodando ou não.
2
# smbstatus –u <usuário>
Mostra o que um determinado usuário está utilizando no Samba.
4.2.1.2 SARG
Segundo Morinoto (2009), o Sarg é um interpretador de logs para o Samba,
assim como para o Webalizer e o Apache. Sempre que executado ele cria um conjunto
de páginas, divididas por dia, com uma lista de todas as máquinas que foram acessadas
e a partir de que máquina da rede veio cada acesso. Ele também mostra os usuários,
caso esteja configurado para exigir autenticação.
A partir daí, e possível acompanhar os acessos de cada usuário na web,
mesmo que não exista nenhum filtro de conteúdo e tomar as medidas cabíveis em
casos de abuso por parte dos usuários, como mostra a figura 12.
FIGURA 12 - Exemplo de Relatório gerado pelo SARG.
4.2.2 Testes de desempenho e segurança e resultados
A implementação de um ambiente deste porte envolve diretamente a
estrutura de arquivos de uma empresa, e a instalação e configuração do mesmo pode
gerar problemas para os usuários, como interrupção do serviço de compartilhamento
de rede e funcionamento dos recursos da mesma. Para contornar tais problemas o
ambiente foi instalado e configurado em rede doméstica.
Uma rede doméstica pode possuir uma mesma estrutura física e lógica de
uma rede empresarial, no entanto, o fluxo de informações dificilmente poderá ser
simulado, haja vista que numa rede empresarial, vários recursos oferecidos são
utilizados por vários usuários.
Depois de realizada a implantação da estrutura de rede, não foi possível
instalá-la em um ambiente de rede empresarial por falta de tempo e recursos. Sendo
assim, com base no exposto acima, os testes de desempenho não puderam ser
realizados de forma efetiva.
No quesito segurança, foram implementados controles de acesso, onde
somente usuários de um determinado departamento poderiam acessar os referidos
diretórios.
A figura 13 apresenta um exemplo de acesso negado, onde um usuário de um
departamento tenta acessar o diretório de outro departamento.
FIGURA 13 - Exemplo de acesso negado.
Dessa forma, a mesma estrutura proposta e implementada neste trabalho
pode ser implantada em uma rede empresarial, bastando apenas adaptar à realidade de
departamentos da empresa.
4.2.2.1 Testes com o comando smbstatus
Nos testes realizados com o smbstatus, o sistema apresentou seus resultados
com êxito, como mostra a figura 14, apresentando a versão do Samba utilizado e as
máquinas conectadas a ele no momento, mostrando o usuário utilizado para o acesso e
também o endereço IP da estação.
FIGURA 14 - Resultado da execução do comando smbstatus.
4.3 Conclusão
Neste capítulo foi realizada a etapa mais importante do trabalho, onde foi
efetuada a instalação e configuração do servidor de arquivos, bem como os testes de
funcionamento das principais funções disponíveis no sistema.
Porém, nesta etapa foi encontrada a maior dificuldade do trabalho, pois não
foi possível implantá-lo em um ambiente real de trabalho. Após a finalização da
implantação e dos testes em rede doméstica, já não havia mais tempo hábil para
implantar o mesmo em um ambiente corporativo, visto que tal tarefa afetaria
diretamente o funcionamento dos serviços computacionais da empresa, pois
necessitaria por exemplo, a interrupção de alguns serviços de rede do local.
De qualquer forma, mesmo sem a implantação do servidor em um ambiente
real de trabalho, foi bastante válida a implantação em rede doméstica, pois foi possível
realizar todas as configurações e testes do servidor, simulando como seria seu
funcionamento em um ambiente corporativo, porém com um fluxo de informações
bastante reduzido, mas deixando visível que a implantação em um ambiente real
necessitaria apenas da adaptação das configurações de acordo com a rede onde seria
implantado o servidor para ter seu funcionamento correto efetuando suas principais
tarefas de maneira efetiva.
5 CONSIDERAÇÕES FINAIS
O trabalho apresentado teve como principal objetivo a implantação de um
ambiente de monitoramento dos dados que trafegam pela rede, utilizando um servidor
de arquivos Samba, em um ambiente de trabalho Windows a fim de otimizar o
desempenho, segurança e controle das informações que trafegam pela rede. Este é um
grande problema encontrado em diversas redes corporativas hoje em dia, que pela falta
de um adequado monitoramento de seus dados, acabam sofrendo com lentidão, perda
de dados e até ataques externos de pessoas e softwares mal intencionados.
Em um primeiro momento, foi realizada uma pesquisa sobre as ferramentas
disponíveis para execução deste trabalho, que após definidas quais seriam as
utilizadas, foram estudadas mais profundamente e testadas para ter um maior
conhecimento de suas funções e quais teriam maior valia no desenvolvimento do
trabalho, assim, concluindo o primeiro objetivo proposto, para que então após isso, os
esforços fossem concentrados no objetivo seguinte, de projetar e implantar este
servidor.
Para se alcançar o maior realismo possível de um ambiente de trabalho, a
implantação do sistema foi simulada em laboratório, utilizando máquinas físicas e
virtuais que tiveram suma importância nos testes de implantação. Durante esta fase
foram definidas as configurações e parâmetros principais do sistema, para que se
adequassem da melhor forma ao monitoramento de um ambiente de trabalho real. A
partir daí, foram realizados diversos testes de segurança e desempenho para se ter a
noção exata de como seria o comportamento deste servidor dentro de uma empresa.
Neste ponto foi encontrada dificuldade na simulação da rede, pois mesmo
utilizando algumas máquinas em laboratório, ainda não é possível simular um
ambiente real de rede.
O último e principal objetivo proposto para a conclusão deste trabalho, o
desenvolvimento do ambiente de monitoramento, foi concluído com êxito com a
implantação em rede doméstica, onde foram realizados os testes de funcionamento do
servidor. Dessa forma, fica mais fácil presumir como seria o funcionamento em um
ambiente real de trabalho.
Outra dificuldade foi encontrada durante a fase de testes e simulação de
implantação, pois não houve tempo hábil para implantar o servidor em um ambiente
empresarial, a fim de avaliar de forma ainda mais profunda os benefícios deste
servidor em um meio corporativo ativo, finalidade a qual este trabalho foi proposto.
Como sugestão de trabalhos futuros sugere-se o desenvolvimento de um
ambiente Web mais completo, integrando demais serviços de servidores de rede, como
serviços Web, Email entre outros.
Dentro dessa proposta Web, poderia ser contemplado um controle de acesso
de usuários com autenticação ao próprio ambiente Web, onde diversos funcionários do
departamento de Tecnologia poderiam acessar os recursos do ambiente com perfis
diferenciados.
REFERÊNCIAS BIBLIOGRÁFICAS
ALECRIM, Emerson. Conhecendo o Servidor Apache (HTTP Server Project).
Disponível em: < http://www.infowester.com/servapach.php>. Maio, 2006. Acessado
em: 07 out. 2010.
ALECRIM, Emerson. O que é Tecnologia da Informação? Disponível em:
<http://www.infowester.com/col150804.php>. Agosto, 2008.
ALECRIM, Emerson. Servidor Samba. Disponível em:
<http://www.infowester.com/linuxsamba.php>. Setembro, 2005.
ALECRIM, Emerson. Sistemas de Arquivos NTFS. Disponível em:
<http://www.infowester.com/ntfs.php>. Julho, 2003. Acessado em 20 nov. 2009.
DÉCIO JÚNIOR. Guia de consulta rápida: Samba. São Paulo: Novatec, 2000. 128 p.
FARIAS, Fábio. Instalando o OpenSUSE 11.2. Disponível em:
<http://www.vivaolinux.com.br/artigo/Instalando-o-OpenSuSE-11.2?pagina=3>.
Dezembro, 2009.
GONÇALVES, Bruno. Synaptic. Disponível em:
http://programaslinux.com.br/html/modules/smartsection/print.php?itemid=43.
Janeiro, 2006.
MARTINS, Ronnie Peterson Bacelar. O Centro de Controle YaST. Disponível em: <
http://vivaolinux.com.br/artigo/O-Centro-de-Controle-YaST>. Março, 2009. Acessado
em 07 out. 2010.
MONQUEIRO, Júlio César Bessa. OpenSuse 10.2. Disponível em: <
http://www.guiadohardware.net/analises/opensuse-10>. Junho, 2009.
MORINOTO, Carlos E. Hardware Manual Completo: Manual Completo 5. ed.
2002. Disponível em: <http://www.gdhpress.com.br/hmc/#indice>.
MORINOTO, Carlos E. Hardware, o Guia Definitivo. Disponível em:
<http://www.gdhpress.com.br/hardware>. GDH Press e Sul Editores, 2007. 848 p.
RUSSO, Bruno. Configurando o Samba. Disponível em:
www.brunorusso.eti.br/documentacao/samba_v_1_1.pdf. Acessado em 27/08/2010.
SILVA, Gleydson Mazioli. Guia Foca/GNU Linux. Disponível em:
<http://focalinux.cipsga.org.br/guia/avancado/ch-s-samba.htm>. Novembro, 2007.
Acessado em: 26 nov. 2009.
SZTAJNBERG, Alexandre. Conceitos básicos sobre os protocolos SNMP e CMIP.
Disponível em: <http://www.gta.ufrj.br/~alexszt/ger/snmpcmip.html>. Abril, 1996.
TIBET, Chuck V. Linux : Administração e suporte. São Paulo: Nova Aguilar, 2001.
379 p.
BIBLIOGRAFIA COMPLEMENTAR
DOMINIO PÚBLICO. Entendendo e Dominando o Linux 4 edição. Disponível em:
<http://www.dominiopublico.gov.br/download/texto/hd000002.pdf> 2010. Acessado
em 28 mai. 2010.
Documentação OpenSUSE. In OpenSuse.org. Disponível em:
http://pt.opensuse.org/Documentação. Acessado em: 09 jun. 2010.
OpenSUSE. In Wikipedia. Disponível em: http://pt.wikipedia.org/wiki/OpenSUSE.
Acessado em: 28 mai. 2010.
APÊNDICE - IMPLANTAÇÃO DE UM SERVIDOR DE ARQUIVOS SAMBA
EM UM AMBIENTE WINDOWS
Carlos Eduardo Silva1, Rafael Gattino Furtado1
1
Departamento de Ciências Exatas e Tecnológicas da Universidade do Planalto Catarinense
(UNIPLAC) – Lages – SC – Brasil
[email protected], [email protected]
Abstract. The presence of a file server environment is something essential in a
company, but unfortunately in most cases this only receives attention and is thought
of a solution when you have a large problem. The avoid this problem, takes the use
of servers realize the control of these environments, where one of the options is to
use of a Samba file server, designed to provide a system files on the network in an
environment with Windows and Linux systems, because being the most widely used.
With the aim of presenting the benefits of using this service, studies and tests
simulating the operation in a working environment, and are reported throughout
this article.
Resumo. A presença de um ambiente um servidor de arquivos é algo essencial em
uma empresa, mas infelizmente na maioria dos casos isto só recebe atenção e é
pensado em uma solução quando se tem um problema de grandes dimensões. A fim
de evitar este tipo de problema, se dá a utilização de servidores que realizam o
controle desses ambientes, onde uma das opções é a utilização de um servidor de
arquivos Samba, projetado para prover um sistema de arquivos em rede em um
ambiente com sistemas Linux e Windows, pelo fato de serem os mais utilizados
atualmente. Com o propósito de apresentar os benefícios da utilização deste
serviço, foram realizados estudos e testes que simulam o funcionamento em um
ambiente de trabalho, e são relatados no decorrer deste artigo.
1. Introdução
A presença cada vez mais ativa da Tecnologia da Informação dentro das empresas dos mais
diversos setores, pela comodidade, segurança, organização e facilidade no armazenamento de
informações importantes, exige cada vez mais de estruturas lógicas bem projetadas para
oferecer todos estes benefícios.
A não utilização de soluções para a centralização dos dados corporativos acaba
gerando duplicidade de dados e até mesmo desencontro de informações. Estes problemas
ocorrem, por algumas organizações não conhecerem os reais benefícios da utilização de
servidores de arquivos e monitoramento de redes.
Para solução destes problemas, grandes empresas tem adotado o uso de servidores
de arquivos, que centralizam as informações de forma íntegra e segura, onde uma das
soluções mais utilizadas são os servidores baseados no sistema operacional Linux,
apresentando grande eficácia na gerência dos dados que trafegam por uma rede.
2. Servidor de Arquivos Samba
O Samba é um servidor com um conjunto de ferramentas que auxiliam a comunicação entre
máquinas Linux e Windows, fazendo o compartilhamento de vários serviços, como arquivos e
impressoras em uma rede.
Para Morinoto (2006), o Samba é o servidor que permite compartilhar arquivos e acessar
compartilhamentos em máquinas Windows. Ele é dividido em dois módulos, o servidor
Samba propriamente dito e o "smbclient", o cliente que permite acessar compartilhamentos
em outras máquinas. Usando o Samba, o servidor Linux se comporta exatamente da mesma
forma que uma máquina Windows, compartilhando arquivos e impressoras e executando
outras funções, como autenticação de usuários. Você pode configurar o Samba até mesmo
para tornar-se um controlador de domínio.
Dentre as principais funções do Samba, podemos citar:
•
Compartilhamento de arquivos e impressão;
•
Autenticação e autorização de acesso;
•
Resolução de nomes;
3. Desenvolvimento e Estrutura
Para o desenvolvimento deste projeto, foram utilizados diversos componentes que auxiliaram
e tiveram suma importância na execução do mesmo, que serão melhor descritos a seguir.
3.1. Sistema Operacional OpenSuse
O sistema operacional utilizado neste projeto, foi o OpenSuse, uma distribuição Linux que
teve sua primeira versão lançada em 1994.
O OpenSuse possui um poderoso aplicativo de gerenciamento, o YaST, que foi bastante
utilizado durante o desenvolvimento deste projeto, tornando a instalação de pacotes e
configuração do sistema ainda mais simplificada.
A figura 1 exibe a interface gráfica do OpenSuse, com o aplicativo YaST sendo
executado.
Figura 1. Interface gráfica do OpenSuse
3.2. Configuração do Samba
Praticamente todas as configurações do Samba são feitas dentro do arquivo smb.conf, onde
são configurados desde os parâmetros básicos do sistema, até os mais avançados que auxiliam
no controle do servidor.
3.2.1. Controles de acesso
As permissões e controles de acesso são um dos pontos mais importantes deste projeto, pois
os quesitos segurança e integridade dos dados dependem bastante da forma com que as
permissões são dadas.
Para fazer o controle de acesso a diretórios e arquivos, é utilizado o comando chmod. Já para
realizar o controle de grupos e usuários, utiliza-se o comando chown para configuração dos
parâmetros.
As divisões de acesso foram subdivididas por setores, onde cada setor possui seu diretório
onde ficam armazenados e apenas os usuários ou grupos com permissões de acesso podem ter
acesso, seja apenas para leitura ou para alteração dos arquivos.
3.3. Sarg
Sarg é um utilitário gerador de relatórios sobre os arquivos de log, gera os relatórios em
HTML e qualquer estação da rede ou mesmo via web tem acesso aos relatórios em um
servidor web, são relatórios e gráficos ricos em detalhes.
Com isso, é possível fazer um acompanhamento de tudo que está sendo acessado pelos
usuários da rede, apresentando informações como endereço IP da máquina e quantidade de
dados transferidos.
4. Testes do servidor
No quesito segurança, foram implementados controles de acesso, onde somente usuários de
um determinado departamento poderiam acessar os referidos diretórios.
A figura 2 apresenta um exemplo de acesso negado, onde um usuário de um departamento
tenta acessar o diretório de outro departamento.
Figura 2. Exemplo de acesso negado
Dessa forma, a mesma estrutura proposta e implementada neste trabalho pode ser implantada
em uma rede empresarial, bastando apenas adaptar à realidade de departamentos da empresa.
5. Considerações Finais
O presente artigo teve como principal objetivo a implantação de um ambiente de controle dos
dados que trafegam por uma rede corporativa, utilizando um servidor de arquivos Samba, pelo
fato de hoje em dia a falta de um ambiente de monitoramento adequado, acabar prejudicando
o desempenho e confiabilidade de diversas redes.
Inicialmente foi realizado um estudo acerca das ferramentas disponíveis para fazer tal
implantação, que, após definidas, foram estudadas de forma ainda mais profunda para que
fossem avaliadas quais as principais funções seriam utilizadas neste projeto.
A implantação do sistema foi realizada em laboratório, utilizando tanto máquinas virtuais
quanto máquinas físicas. Durante esta fase foram definidas as configurações e parâmetros do
sistema, a fim de que o sistema se adequasse da melhor maneira possível em um ambiente de
trabalho real. A partir desse momento, foram realizados os teste de desempenho e segurança,
para se ter a máxima noção de como o servidor se comportaria dentro de uma empresa.
A última fase deste artigo encontra-se em fase de finalização, pois a implantação do servidor
foi realizada com êxito, restando apenas coletar todos os resultados necessários para se fazer a
análise de eficiência do servidor implantado.
Durante a fase de testes e simulação foi encontrada a maior dificuldade desta implantação,
pois não houve tempo hábil para implantar o servidor em um real ambiente corporativo, para
que se pudesse avaliar de forma ainda mais profunda os benefícios conseguidos com o
servidor.
6. Referências bibliográficas
Morinoto, Carlos E. Redes e Servidores Linux. 2006. Disponível em:
<http://www.gdhpress.com.br/redeseservidores/leia/index.php?p=cap6-2>. Acessado em:
08 nov. 2010.
Sarg, gerador de relatórios do Squid – tutoriais, dicas e indicações. 2006. Disponível em:
http://www.zago.eti.br/squid/A-menu-squid.html. Acessado em: 08 nov. 2010.
Download