FACULDADE CAMPO REAL ESTER DE ARRUDA CAMPOS

Propaganda
FACULDADE CAMPO REAL
ESTER DE ARRUDA CAMPOS
LUCAS PAULO ZUKOVSKI
AUDITORIAS E LIXEIRAS USANDO O SAMBA:
compartilhamento de arquivos com acesso total em redes mistas
GUARAPUAVA
2008
ESTER DE ARRUDA CAMPOS
LUCAS PAULO ZUKOVSKI
AUDITORIAS E LIXEIRAS USANDO O SAMBA:
compartilhamento de arquivos com acesso total em redes mistas
Monografia apresentada à Faculdade Campo Real,
como requisito parcial para obtenção do título de
Especialista em Redes de Computadores – Academia
CISCO na Conclusão do Curso de Especialização .
Orientadores: Hermano Pereira
GUARAPUAVA
2008
Z946a
Campos, Ester de Arruda
Auditoria e lixeiras usando samba: compartilhamento de arquivos
com acesso total em redes mistas / Lucas Paulo Zukovski, Ester de
Arruda Campos. – – Guarapuava: s.n., 2008.
40 f.: il.; 28 cm
Trabalho de Curso (TC) apresentado à Faculdade Campo Real, ao
Programa de Pós-Graduação e Especialização em Redes de
Computadores - ACADEMIA CISCO CCNA, 2008
Orientadores: Hermano Pereira
Bibliografia
1. Informática. 2. Redes de Computadores. 3. Compartilhamento de
dados. 4. Samba – Programa de Computador. 5. Redes de
Computadores – Auditoria. 5. Redes Mistas de Computadores. I. Autor. II.
Título. III. Faculdade Campo Real.
CDD 004.6
Ficha catalográfica elaborada por Regiane de Souza Martins -CRB9/1372, bibliotecária da Faculdade Campo Real.
CAMPOS, Ester de Arruda; ZUKOVSKI, Lucas Paulo. Implementando auditorias e
lixeiras usando o Samba sobre compartilhamento de arquivos com acesso
total em redes mistas. 127 p. Trabalho de Curso (TC) do Curso de Redes de
Computadores Academia CISCO – Faculdade Campo Real, Guarapuava-PR, 2008.
RESUMO
Com a crescente popularização das redes de computadores, a utilização de arquivos
e programas armazenados em diferentes máquinas tornou-se uma tarefa comum
tanto em empresas como em pequenas redes domésticas. Nesse tipo de ambiente,
por muitas vezes é necessário implementar um esquema de auditoria, de modo que
seja possível controlar acessos e alterações realizadas nos arquivos armazenados
em um servidor de rede; e também implementar a utilização de lixeiras, provendo
segurança contra a exclusão acidental de dados importantes. O protocolo de rede
SMB/CIFS implementa o compartilhamento de arquivos em redes locais baseadas
em Windows, e através do aplicativo Samba, este mesmo protocolo está disponível
em redes baseadas em sistemas Unix (Linux, BSD, Solaris). Este trabalho mostra
como é possível implementar auditoria e lixeiras utilizando um servidor Samba
executando em um servidor Linux, de modo que possa ser utilizado tanto para
grandes redes como para uma pequena rede empresarial ou doméstica.
Palavras Chave: Compartilhamento. AUDITORIAS. Redes de Computadores.
CAMPOS, Ester de Arruda; ZUKOVSKI, Lucas Paulo. Deploying audits the dumps
using the Samba to share files with full access in mixed networks. 127 p. Work
of Curso (WC) of the Course of Right – Faculty Campo Real, Guarapuava-PR, 2008.
ABSTRACT
With the increasing popularization of computer networks, the use of files and
programs stored on different machines has become a common task both in
companies and in small home networks. In this type of environment, for many times
is necessary to implement an audit scheme, so that you can control access and
changes made to files stored on a network server, and also implement the use of
dumps, providing security against accidental deletion of important data. The network
protocol SMB / CIFS implements the sharing of files on local area networks based on
Windows, and through the application Samba, the same protocol is available on
networks based on Unix systems (Linux, BSD, Solaris). This work shows how you
can implement auditing and dumps using a Samba server running on a Linux server,
so it can be used both for large networks and for a small business or home network.
Words-Key: Sharing. Audits. Computer Networks.
LISTA DE ILUSTRAÇÕES
Figura 1 – Nome de domínio
24
Figura 2 – Usar as configurações WINS
25
LISTA DE ABREVIATURAS E SIGLAS
LAN
Local Area Network
SMB
Server Message Block
NetBIOS
Network Basic Input Output System
IBM
International Business Machines
CIFS
Common Internet File System
TCP/IP
Transmission Control Protocol/ Internet Protocol
OSI
Open Systems Interconnection
FSMO
Flexible Single Master Operation
FTP
File Transfer Protocol
NCP
NetWare Core Protocol
NetBEUI
NetBIOS Enhanced User Interface
AD
Active Directory
PDC
Primary Domain Controller
BDC
Backup Domain Controller
AFP
Apple Filing Protocol
SAP
Service Advertising Protocol
NFS
Network File System
SUMÁRIO
1 INTRODUÇÃO.....................................................................................................12
1.1 JUSTIFICATIVA................................................................................................13
1.2 OBJETIVOS......................................................................................................13
1.3 ESTRUTURA DA MONOGRAFIA....................................................................13
1.4 METODOLOGIA UTILIZADA............................................................................14
2 SAMBA................................................................................................................15
2. 1 COMPARTILHAMENTO DE ARQUIVOS........................................................15
2. 2 PROTOCOLOS................................................................................................15
2. 3 SMB/CIFS........................................................................................................16
2.3.1 Histórico NetBIOS..........................................................................................18
2.3.2 Controladores de domínio e clientes.............................................................18
2. 4 APLICATIVO SAMBA......................................................................................20
2.4.1 Arquivo de configuração................................................................................23
2.4.1.1 Alguns parâmetros de seções Samba........................................................24
2.4.1.2 Variáveis mais comuns...............................................................................27
2.4.2 Histórico Samba.............................................................................................28
3 PREPARANDO O SISTEMA ..............................................................................30
3.1 SISTEMA OPERACIONAL...............................................................................30
3.1.1 Codinomes das distribuições Debian............................................................30
3.2 INSTALAÇÃO SAMBA......................................................................................32
3.2.1 Inicialização Automática.................................................................................35
3.2.2 Carregamento durante o Boot.......................................................................36
4 CONFIGURAÇÕES.............................................................................................36
4.1 PASTA AUDITORIA..........................................................................................36
4.2 EDITANDO O smb.conf....................................................................................36
4.3 CONFIGURAÇÃO PROPOSTA........................................................................44
4.3 CENÁRIO DE AUDITORIA...............................................................................44
CONCLUSÃO.........................................................................................................46
REFERÊNCIAS.......................................................................................................48
BIBLIOGRAFIA CONSULTADA............................................................................49
APÊNDICE 1: Compartilhamentos Samba em estações com Windows Vista.
50
APÊNDICE 2: Cron e Crontab................................................................................51
APÊNDICE 3: Linux e Estruturas de Diretórios......................................................52
INTRODUÇÃO
Com o aumento da utilização de sistemas informatizados cresceu
também a necessidade de manter todos os sistemas interligados, de forma que as
pessoas possam compartilhar recursos como pastas de arquivos, impressoras e
outros dispositivos de hardware. Atualmente, qualquer computador que esteja em
uma rede local (LAN) tem a capacidade de compartilhar esses recursos com outros
computadores em sua rede ou até mesmo com toda a Internet. Com isso vários
benefícios podem ser disponibilizados, como a agilidade no acesso a dados,
economia de equipamentos como impressoras e discos, que podem ser utilizados
por várias máquinas, mesmo estando conectados fisicamente em apenas uma
delas.
1. 1 JUSTIFICATIVA
No começo da década de 1990, os sistemas operacionais Microsoft
Windows
3.1/3.11
trouxeram
uma
enorme
evolução
com
relação
ao
compartilhamento de arquivos e recursos. Esses sistemas forneceram ao usuário a
possibilidade de indicar quais recursos seriam disponibilizados para os outros
computadores da rede. Utilizando essa ferramenta e com o crescimento dos
acessos a internet os usuários passaram a ter acesso a arquivos sem os seus
respectivos direitos autorais, por exemplo. Para ter um controle sobre essas e outras
atividades as redes corporativas como empresas, universidades e órgãos
governamentais, implementaram políticas de acesso a arquivos e outros recursos e
passaram a normatizar a estrutura e funcionamento de suas redes locais.
A partir de então todo administrador de rede passou a ser orientado
a planejar e manter um ambiente de rede que atenda às necessidades e às
exigências de sua corporação. Garantindo o acesso limitado a informações sigilosas
com segurança. No entanto, devido ao aumento da utilização ocasionado por esta
facilidade de compartilhar recursos, trazida pelos sistemas Windows, começaram a
aumentar também o número de transtornos ocasionados com relação à manipulação
e exclusão dos arquivos. O fato de um computador remoto poder remover
documentos de um servidor de arquivos sem a utilização de uma lixeira pode gerar
um grande problema relativo à confiabilidade e à segurança dos dados em rede.
−1.2
OBJETIVO
A fim de solucionar questões como o problema relativo à
confiabilidade e à segurança dos dados em rede, bem como permitir maior controle
sobre os dados que estão armazenados em determinado servidor, a implementação
de um sistema de auditoria sobre arquivos e pastas compartilhadas torna-se
necessário. E isto é possível - Utilizando recursos de hardware modestos e com um
custo baixo – Configurar um servidor de modo que ele armazene informações a
respeito
de
qual
estação/usuário
colocou,
alterou
ou
removeu
arquivos.
Objetivamos criação da pasta Lixeira para armazenar os arquivos que tenham sido
excluídos ou alterados, de forma que possamos recuperá-los, caso necessário.
Armazenando todo processo de movimentação de arquivos da pasta compartilhada.
−1.3
Estrutura da Monografia
O Capítulo 1 irá definir o que vem a ser um compartilhamento de
arquivos, apresentar o protocolo SMB/CIFS e sua importância ao tratarmos de
assuntos que envolvam a necessidades de compartilhamentos de arquivos.
Apresenta-se o Samba como uma opção ao compartilhamento de arquivos e um
breve histórico sobre o sistema. No Capítulo 2 será apresentado o sistema
operacional necessário e recomendado para que seja possível a implementação dos
recursos de auditoria e compartilhamento de arquivos com acesso total. As
configurações necessárias para instalação do aplicativo Samba, serão apresentadas
bem como alguns procedimentos importantes para realização da instalação. O
Capítulo 3 mostrará a configuração necessária para que possamos ter um
compartilhamento de arquivos funcionando em uma rede formada por computadores
com sistemas operacionais Linux e Windows. Será mostrado como implementar os
serviços de auditoria sobre uma pasta de arquivos, com uma pasta atuando como
lixeira para arquivos que são excluído e ou renomeados na rede, recursos que são
propiciados pelo Samba. Por fim, apresentar-se-á a configuração do arquivo
smb.conf como sugestão para solução da situação proposta. No apêndice 1
apresentaremos uma solução para o compartilhamento Samba seja configurado em
estações com o sistema operacional Windows Vista. No apêndice 2, uma forma de
agendar tarefas em sistemas Linux será apresentada. No apêndice 3, será
apresentadas uma explicação sobre o que vem a ser um estrutura de diretórios e
permissões para sistemas Linux.
−1.4
Metodologia Utilizada
Utilizar-se-á o método de pesquisa aplicada cuja meta é contribuir
para fins práticos buscando soluções para problemas concretos.
−2.
SAMBA
−2.1.
COMPARTILHAMENTO DE ARQUIVOS
[Zwicky, 2000] define dois tipos de trocas de arquivos entre
computadores que podem ocorrer em uma rede local, denominando-os transferência
e compartilhamento de arquivos. Na transferência de arquivos, um usuário copia um
arquivo de ou para um servidor, mantendo uma cópia no servidor e outra cópia no
cliente. Nesse tipo de troca, uma alteração no arquivo do cliente não é replicada no
servidor. Já no compartilhamento, o arquivo permanece no servidor, onde é
acessado e modificado pelo cliente, de modo que apenas uma cópia do arquivo
existe. Este modelo de compartilhamento é bastante útil em situações onde muitas
pessoas precisam trabalhar com um determinado arquivo de modo colaborativo.
−
2.2. PROTOCOLOS
Um protocolo é definido como um conjunto de normas que viabilizam a
comunicação entre computadores. Traçando um paralelo com a comunicação oral
(fala), podemos dizer que o meio de comunicação utilizado (cabos de partrançado/sinais
elétricos,
fibra
ótica/sinais
de
luz,
redes
sem
fio/ondas
eletromagnéticas) equivale à fala, enquanto que o protocolo de rede equivale ao
idioma utilizado. É o idioma que permite que a fala de várias pessoas seja
compreensível entre si.
No caso das redes locais (LAN), existem diversos protocolos capazes
de compartilhar recursos de rede (impressoras, arquivos, pastas), e sua utilização
depende normalmente do sistema operacional utilizado. Redes baseadas em Mac
OS utilizam o AFP (Apple Filing Protocol, também conhecido como AppleShare);
redes Novell NetWare utilizam os protocolos NCP (NetWare Core Protocol) e SAP
(Service Advertising Protocol); redes baseadas em DOS/Windows utilizam o
protocolo SMB (Server Message Block), também conhecido como CIFS (Common
Internet File System); e os sistemas Unix diversos (incluindo Linux) utilizam o NFS
(Network File System) e também o SMB/CIFS. Por fim, para a transferência de
arquivos via Internet o padrão de fato é o protocolo FTP (File Transfer Protocol).
Existe uma grande variedade de formas de utilizar estes protocolos
(por exemplo, máquinas Unix podem se comunicar através do SMB e do NetWare,
máquinas Microsoft e Apple podem se comunicar através do NFS, e servidores
Microsoft podem traduzir Netware e AppleShare em SMB). Isto permite que
plataformas de software diferentes entre si (Windows, Apple e Linux) se
comuniquem. Neste trabalho trataremos apenas do protocolo SMB/CIFS em redes
que possuem computadores executando os sistemas Windows e Linux.
2.3. SMB/CIFS
O Server Message Block/Common Internet File System SMB/CIFS é
um protocolo de redes usualmente utilizado para o compartilhamento de arquivos
em uma LAN. Com esse protocolo os usuários de uma rede podem trabalhar seus
arquivos como se eles estivessem disponíveis em suas estações locais. Isto significa
que operações como leitura, escrita, criação, exclusão e renomeação serão
permitidas com o diferencial de que esses arquivos, que estão sendo manipulados
não estão na estação de trabalho local, mas em uma estação de trabalho remota.
Didaticamente, o protocolo SMB/CIFS envia pacotes do cliente para
servidor. Esses pacotes caracterizam por requisições do tipo abertura ou leitura de
arquivos. O servidor ao receber uma requisição fará uma análise para verificar se a
requisição tem validade, isto é, se o cliente tem permissão de leitura, por exemplo.
Finalmente, após essa verificação o servidor executa a requisição retornando ao
cliente um pacote com a resposta. O cliente então analisará o pacote de resposta
para verificar se a requisição inicial foi completada com sucesso ou não.
O SMB/CIFS está inserido na camada do modelo OSI como um
protocolo de camada de APLICAÇÃO/APRESENTAÇÃO com isso é razoável
concluir que ele utiliza protocolos de camadas inferiores como, por exemplo, o
protocolo NetBEUI para o transporte.
NetBEUI – NetBIOS Enhanced User Interface, protocolo proprietário
da Microsoft, que acompanha todos os seus sistemas operacionais e produtos de
rede, como Windows 9x/ME, Windows NT, LAN Manager, LAN Server, etc. Esse
protocolo atua nas camadas 3 e 4 do modelo de referência OSI.
Apesar de ser um protocolo pequeno e rápido, duas desvantagens
podem ser observadas quando nos referimos a redes com mais de 50 estações de
trabalho:

É um protocolo não roteável, impossibilitando seu uso em redes que
utilizem roteadores para se comunicar com outras redes.

Utiliza mensagens de broadcast1 para comunicar qualquer alteração
realizada o que acaba congestionando a rede. Se uma estação de
1
broadcast – Transmissão - Mensagens enviada a todos integrantes de uma rede local.
trabalho enviar um pedido de impressão todas as máquinas
conectadas na rede receberam uma mensagem com essa solicitação.
−2.3.1.
Histórico NetBIOS
−
Inicialmente o Network Basic Input Output System - NetBIOS foi
desenvolvido pela International Business Machines - IBM no início da década de 80.
É um sistema que realiza troca de mensagens entre máquinas que
estão em rede. Opera na camada 5 do modelo de referência OSI (camada de
sessão) interligando programas com o protocolo NetBEUI. O NetBIOS pode ser
utilizado também com outros protocolos diferentes do NetBEUI, como por exemplo o
protocolo TCP/IP (Transmission Control Protocol, Protocolo de controle da
transmissão / Internet Protocol, Protocolo de Internet) operando, dessa forma, nas
camadas 3 e 4 do modelo OSI e permitindo que programas que utilizam “linguagens”
comuns para acessarem a rede, não dependendo do protocolo instalado na rede.
Com a popularização dos sistemas Microsoft Windows na década de
90, em especial a partir da versão 3.1, tornou-se fácil e usual compartilhar arquivos
em rede. A partir de então cada Ambiente de Trabalho - Desktop começou a ser
encarado como um potencial "servidor de arquivos" na rede. Esse recurso só foi
possível devido à existência de um protocolo que possibilitou a troca de mensagens
na rede. Que em redes Microsoft que ficou conhecido por Server Message Block SMB, sistema esse baseado no NetBIOS criado pela IBM.
−2.3.2.
Controladores de domínio e clientes
Nas redes baseadas em servidores Windows NT, um Controlador de
Domínio (DC) é um servidor que responde a requisições de autenticação de usuário
(login, permissões, etc) dentro de um domínio.
Até a versão 4.0 do sistema Windows NT, para cada domínio é
configurado um Controlador de Domínio Primário (PDC, do inglês Primary Domain
Controller). Quaisquer outros controladores de domínio existentes atuarão como
Backup do Controlador de Domínio (BDC, do inglês Backup Domain Controller). A
função do BDC é restrita a autenticar usuários em um domínio, deixando as tarefas
que envolvam alterações e atualizações da base de dados de usuários - como a
criação de novos usuários, trocas de senhas, configurações de membros de grupos apenas para o PDC. Este, por sua vez, propagará as alterações a todos os BDCs
existentes no domínio.
Caso um PDC esteja indisponível, não podendo se comunicar com o
usuário que requisitou a alteração, ocorrerá uma falha na atualização da base de
dados. Se um PDC ficar indisponível permanentemente, um dos BDCs pode ser
promovido a PDC.
A partir do Windows 2000, foi introduzido o conceito de Active Directory
(AD), o qual acabou por eliminar o conceito de PDC e BDC, permitindo que tanto a
atualização da base de dados como sua replicação ocorra em todos os servidores
AD da rede. Ainda assim há determinadas funções que apenas um dos
controladores de domínio pode realizar, as quais são chamadas "Operações
Mestre", ou simplesmente FSMO (do inglês "Flexible Single Master Operation").
Estas operações mestre possuem algumas funções referentes ao domínio local e
outras que requerem apenas um servidor específico para todo o AD.
Em redes baseadas em Windows que possuam os dois tipos de
servidores (até Windows NT4 e a partir do Windows 2000) é possível eleger um AD
para atuar como um Emulador Principal de PDC, de modo que este atuará como
PDC para as estações baseadas em NT4, mantendo a compatibilidade entre as
duas diferentes estruturas de domínios.
A partir da versão 3, o Samba oferece serviços de compartilhamentos
de arquivos e de impressão para vários clientes Microsoft Windows e pode se
integrar a um domínio de rede baseado em Windows, tanto como um PDC ou como
um membro do domínio. O Samba também pode fazer parte de um domínio
baseado em Active Directory (AD).
−2.4.
APLICATIVO SAMBA
Samba é um programa de computador que implementa o protocolo
SMB sobre a pilha de camadas do modelo TCP. É capaz de oferecer todas as
operacionalidades do compartilhamento de arquivos Microsoft Windows, com o
diferencial de que elimina a necessidade de dispender recursos com licenças de
software, acaba-se com a necessidade de reinicializar o sistema para uma mudança
nas configurações e implementam estabilidade e confiança no sistema.
Ao fazer uso do aplicativo Samba tornamos possível compartilhar
recursos de servidores Linux para estações Windows e vice-versa: através dos
protocolos SMB e CIFS. Toda configuração é feita no arquivo /etc/samba/smb.conf.
Como exemplo, observe a configuração abaixo que irá permitir aos usuários de uma
rede acesso a todas as impressoras e diretórios de usuário na máquina. Neste caso
diretórios pessoais poderão ser acessados apenas por seus donos, mediante
fornecimento de senha.
[global]
#nome do grupo na rede
workgroup = Guarapuava
#nome do computador
netbios name = servidor
server string = server
[homes]
comment = Home Directories
read only = No
browseable = No
[printers]
comment = All Printers
path = /var/spool/samba
printable = Yes
browseable = No
Clientes Windows poderão visualizar o servidor Samba acessando o
ambiente de rede e exibindo assim os compartilhamentos disponíveis, como em um
servidor windows.
Módulos do pacote Samba:
•
Smbclient - Ferramenta para navegação e gerenciamento
de arquivos, diretórios e impressoras compartilhadas por servidores Windows ou samba.
•
smbfs – Pacote que possui ferramentas para o mapea-
mento 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.
•
Samba – servidor samba.
Esses dois módulos são independentes tornando possível instalar o
smbclient em uma máquina e instalar o server somente nas máquinas que irão
compartilhar arquivos.
−2.4.1.
Arquivo de configuração
Toda configuração relacionada a nomes, grupos de trabalho, tipos
de compartilhamentos, tipo de servidor, log de sistema do Samba é colocado no
arquivo de configuração /etc/samba/smb.conf.
O arquivo de configuração do Samba é formado por seções,
parâmetros e variáveis.
Seções – Organizam os parâmetros para que tenham efeito somente
em algumas configurações de compartilhamento do servidor.
Indicam um
compartilhamento específico, com exceção da seção global que é aplicada a todos
os compartilhamentos. As seções são definidas por uma palavra colocada entre
colchetes. Por exemplo: [global], [public], [printers] etc. O nome da seção é igual ao
nome do recurso compartilhado.
Alguns nomes de seções foram reservados para configurações
específicas do samba, eles são os seguintes:
[global] Define configurações que afetam o servidor samba como um todo,
fazendo efeito em todos os compartilhamentos existentes na máquina. Por
exemplo, o grupo de trabalho, nome do servidor, página de código, restrições
de acesso por nome, etc.
[homes] Especifica opções de acesso a diretórios, homes de usuários. O
diretório home é disponibilizado somente para seu dono, após se autenticar
no sistema.
[printers] Define opções gerais para controle das impressoras do sistema.
Este compartilhamento mapeia os nomes de todas as impressoras
encontradas no /etc/printcap.
Configurações especiais podem ser feitas separadamente.
[profile] Define um perfil quando o servidor samba é usado como PDC de
domínio.
Qualquer outro nome de [seção] no arquivo smb.conf que não sejam as
acima, são tratadas como um compartilhamento ou impressora.
Parâmetros – São aqueles que definem os atributos das seções, por exemplo,
encrypt passwd = yes.
Variáveis – São utilizadas para substituir textos predefinidos, por exemplo,
“path = /tmp/%u” pode ser interpretada como “path = /temp/usuario”.
−
2.4.1.1. Alguns parâmetros de seções Samba
Parâmetros que podem ser utilizados apenas para a seção [global]:
•
workgroup: define o nome do domínio.
•
logon script: script que será executado quando o usuário
se logar;
•
domain logons: determina a ativação do login remoto para
o domínio especificado acima;
•
netbios name: define o nome do computador na rede Win-
dows;
•
preferred master: determina se o servidor nmbd deverá ter
prioridade de acesso frente a outros servidores do mesmo grupo;
•
os level: prioridade do servidor. 100 é o número máximo,
garantindo que este será o primeiro servidor solicitado (caso
existam outros servidores na rede);
•
logon path: diretório onde serão armazenadas as configu-
rações do Windows para o usuário (Perfil, Desktop, menu Iniciar, etc);
•
logon drive: determina letra de drive que o Windows usará
para o diretório Home;
•
logon home: determina a localização do diretório Home
quando a estação logar no PDC do Samba;
•
string server: comentários sobre o computador;
•
load printers: diponibiliza o uso de impressoras do arquivo
/etc/printcap.
•
announce as: tipo de servidor de nomes NetBIOS que
será divulgado na rede. Pode ser NT, NT Server, NT Workstation, win95 ou wfw.
•
printcap name: caminho para o arquivo /etc/printcap.
•
printing: tipo do servidor de impressão. Pode ser bsd,
lprng, sysv, aix, hpux e qnx.
•
security: tipo de acesso. Pode ser share, user, server e
domain.
•
share – todos na rede podem acessar os arquivos com-
partilhados.
•
user – somente usuários cadastrados poderam acessar o
compartilhamento.
•
server – o servidor atuará como um proxy de autentica-
ção, repassando as requisições para o servidor de autenticação principal.
•
domain – o servidor Samba participará do domínio como
cliente, autenticando-se em um servidor PDC já existente.
•
log file: caminho do arquivo de log.
•
max log file: tamanho do arquivo de log em KB.
•
log level: nível de log.
•
encrypt passwords: habilita ou não o uso de senhas crip-
tografadas do Samba.
•
smb passwd file: caminho do arquivo de senhas criptoga-
fadas do Samba.
•
local master: transforma o Samba em um local master
browser.
•
domain master: transforma o Samba em um domain mas-
ter browser.
•
wins support: transforma o Samba em um servidor wins.
•
wins server: transforma o Samba em um cliente wins.
Parâmetros para as demais seções:
•
gon.
path: que determina onde se encontram os scripts de lo-
•
browseable: permite ou não a visualização do comparti-
lhamento.
•
writable: permite ou não a gravação no recurso de com-
partilhamento.
•
read only: define o compartilhamento como somente leitu-
ra.
•
public: define se o recursos será publico ou não.
•
available: disponibiliza ou não o recurso compartilhado.
•
comment: comentário sobre o recurso compartilhado.
•
admin users: define quais usuários terão privilégios de ad-
ministração de compartilhamento.
•
guest account: define uma conta de visitante.
•
guest ok: se esse parâmetro for definido como yes, não
será solicitada senha.
•
hosts allow: define quais computadores podem acessar
um recurso compartilhado.
•
hosts deny: define quais computadores não podem aces-
sar um recurso compartilhado.
•
message command: define qual programa irá processar
as mensagens do winpopup.
•
Seção [netlogon] - Responsável por fazer com que as es-
tações Windows identifiquem o servidor PDC.
2.4.1.2. Variáveis mais comuns
Vejamos abaixo alguns exemplos de variáveis comuns. Extraído do livro
RUBEM, E. FERREIRA. Linux Guia do Administrador do Sistema pg 428.
%h
Nome da máquina (host).
%v
Exibe a versão do Samba.
%S
Nome do serviço (compartilhamento) atual.
%u
Nome do usuário.
%g
Nome do grupo.
%H
Nome do diretório pessoal do usuário.
%m
Nome da máquina cliente, fornecida pelo NetBIOS.
%L
Nome do servidor NetBIOS.
%M
Nome da internet da máquina cliente.
%a
Sistema operacional da máquina remota.
%i
Endereço IP da máquina cliente.
%t
Data e horário.
2.4.2 Histórico Samba
O Samba foi criado por Andrew Tridgell. A ideia inicial não tinha
nenhuma ligação com protocolos da Microsoft. O projeto começou em 1991 quando
Tridgell criou um programa servidor de arquivos para sua rede local que suportava
um protocolo DEC da Digital Pathworks. Apesar de não saber na época este
protocolo seria o SMB.
Algum tempo depois de começar a distribuir seu servidor sob o nome
de smbserver que foi utilizado até abril de 2004. Tridgell descobriu que este nome,
smbserver, já pertencia ao produto de outra empresa, foi quando realizou uma
simples busca dentro do dicionário Ispell por palavras que possuíssem as letras S, M
e B, de "Server Message Blocks", posicionadas nessa ordem. Foi quando ao
executar a seguinte linha de código no Unix:
grep -i 's.*m.*b' /usr/dict/words
A busca retornou apenas as palavras "salmonberry", "samba",
"sawtimber" e "scramble", de forma que a escolha do nome acabou sendo óbvia.
3. PREPARANDO O SISTEMA
Neste capítulo, apresentaremos algumas opções para instalação e
configuração dos recursos que serão utilizados.
3.1. SISTEMA OPERACIONAL
Utilizamos a distribuição estável do sistema operacional Debian. Na
ocasião desta escrita, a atual versão da distribuição estável do sistema Debian é a
4.0. Essa versão é recomendada, pois oferece confiabilidade e segurança, visto que
reúne aplicativos que foram testados e analisados para que o sistema não apresente
falhas críticas.
De acordo, com a página oficial do projeto Debian disponível em
www.debian.org: “O Debian é um sistema operacional (SO) livre para seu
computador. O Debian usa o kernel (núcleo de um sistema operacional), Linux, mas
a maior parte das ferramentas do SO vêm do projeto GNU; daí o nome GNU/Linux.
A última versão estável do Debian é 4.0. A última atualização desta versão foi feita
em 23 de Outubro de 2008”.
Na página do projeto Debian podemos obter informações e
instruções para a instalação do sistema.
3.1.1. Codinomes das distribuições Debian
Para manter uma melhor organização no projeto e em alguns casos
evitar downloads desnecessários por parte dos usuários, as distribuições Debian,
conhecidas também como coleção específica de pacotes, recebem codinomes para
fazer referência a cada versão disponibilizada.
Cada distribuição é referenciada a basicamente três tipos:
•
unstable – instável – Caracterizada por ter os pacotes mais atuais do
projeto e é recomendada para desenvolvedores devido a problemas
que podem ser causados devido a falta de testes.
•
testing – em teste – Nessa fase a versão está em fase de testes e
vários erros críticos que a versão unstable apresentava foram corrigidos. Nesse ciclo está versão se tornará candidata à versão stable.
•
stable – estável – Caracterizada por oferecer um conjunto de pacotes que oferecem segurança e confiabilidade ao sistema, pois passou por várias correções de erros e falhas críticas. Algumas alterações e correções ainda podem ser feitas através de um gerenciador
de pacotes.
Cada um desses tipos indicará o ciclo de liberação para a versão.
Utilizamos para esse trabalho a versão Debian Etch que recebe esse
nome pois se trata de uma versão estável. Para que possamos compreender a
utilização dos codinomes para as versões do projeto Debian, propomos o seguinte
exemplo.
Antes do lançamento da versão estável Debian 4.0 – Etch, o
codinome Etch apontava para a versão testing e o codinome Sarge apontava para a
versão stable. Após o lançamento oficial da versão 4.0, a distribuição testing
recebeu o codinome de Lenny, que receberá um número assim que se tornar uma
versão estável.
Além dos codinomes já apresentados podemos listar:
-
Buzz para a versão 1.1,
-
Rex para a versão 1.2,
-
Bo para as versões 1.3.x,
-
Hamm para a versão 2.0,
-
Slink para a versão 2.1,
-
Potato para a versão 2.2,
-
Woody para a versão 3.0,
-
Sarge para a versão 3.1.
3.2. INSTALAÇÃO SAMBA
Utilizaremos o aplicativo Samba 3.0.24 que está disponível nos
repositórios Debian Etch.

Pacotes Debian.

Servidor: samba samba

Cliente: smbclient samba-client

Documentação samba-doc samba-doc
Para instalar o Samba em uma estação do tipo “client” com
documentação:
# apt-get install smbclient samba-doc
Para instalar o Samba em uma estação do tipo “server” com
documentação que compartilhará arquivos:
# apt-get install samba smbclient samba-doc
Utilizaremos o seguinte commando:
#apt-get install samba smbclient samba-doc
A instalação do smbclient em estações que só terão acesso as
pastas compartilhadas ficará como conseqüência do exemplo abaixo:
Ao executar o comando o script de instalação algumas perguntas
podem ser feitas:
Pergunta 01 - O servidor deve rodar em modo "daemons" ou sob o
“inetd”?
Nossa resposta será "daemons" para que o servidor rode
diretamente. Isso garante um melhor desempenho, segurança e evita problemas
diversos de configuração relacionados ao uso do inetd, um tipo de serviço que está
entrando em desuso.
Pergunta
02
–
Gerar
a
base
de
dados
para
senhas
/var/lib/samba/passdb.tdb?
Responderemos que "Sim", pois dessa forma será criado um
arquivo onde serão armazenadas as senhas de acesso.
O script de instalação comentará que: "Caso você não o crie, você
terá que reconfigurar o samba (e provavelmente suas máquinas clientes) para
utilização de senhas em texto puro".
Reconfigurar o Samba para utilização de senhas em texto puro é um
processo trabalhosos e não o objetivamos.
Ao aceitarmos a criação do arquivo que armazenará senhas
estaremos aceitando que o sistema utilize senhas encriptadas que é o padrão para a
configuração.
Pergunta 03 – Solicitará que seja especificado o nome para o grupo
de trabalho.
Figura 1 – Nome de domínio
Pergunta 04 – A pergunta abaixo é para saber se o usuário pretende
fazer uso de um servidor DHCP que possa estar disponível na rede oferecendo
configurações IP. Ao escolher “sim” o arquivo em arquivo smb.conf será alterado e
passará a conter informações do servidor WINS (Servidor de nomes NetBIOS).
Por padrão, a escolha é “não” o nome das máquinas não será utilizado.
Figura 2 – Usar as configurações WINS
A instalação de todos os pacotes será feitas no servidor e nas
máquinas que forem compartilhar arquivos.
Nos clientes que forem apenas acessar compartilhamentos de outras
máquinas, instalaremos apenas o smbclient.
Com os pacotes instalados, use os comandos:
# /etc/init.d/samba start
# /etc/init.d/samba stop
Os comandos acima iniciam e param o serviço, respectivamente.
3.2.1 Inicialização Automática
Por padrão, essa opção já vem habilitada caso desejemos retirá-la
basta utilizarmos o seguinte comando:
# desabilita a inicialização automática
# update-rc.d -f samba remove
#habilita a inicialização automática
# update-rc.d -f samba defaults
3.2.2 Carregamento durante o Boot
# desabilita o carregamento durante o boot
# chkconfig smb off
#habilita o carregamento durante o boot
#chkconfig smb on
4 CONFIGURAÇÕES
4.1. Pasta para auditoria
Criando uma pasta que receberá todos os arquivos excluídos. Essa
pasta servirá como a lixeira para a rede de compartilhamentos Samba. Optamos por
criar uma pasta oculta aos usuários.
Para isso, em um terminal Linux execute a seguinte linha abaixo:
#mkdir /var/spool/samba/.lixeira
$mkdir -p /home/servidor/samba/lixeira/
$mkdir -p /home/servidor/arquivos
4.2. Editando o smb.conf
Para aplicarmos as configurações necessárias para podermos ter
uma rede com compartilhamento.
Como usuário root iremos abrir o arquivo smb.conf que está no
diretório /etc/samba.
#vim /etc/samba/smb.conf
A partir de então começaremos a realizar as configurações:
Dentro da variável global iremos definir nome do grupo da rede, utilizando o
parâmetro workgroup conforme sugestão abaixo:
[global]
workgroup = guarapuava
Nome do computador:
netbios name = servidor
server string = servidor
Nível
de
segurança
no
compartilhamento.
Pelo
fato
do
compartilhamento ser aberto, em uma rede mista (composta de estações de trabalho
Windows e Linux) optaremos pelo tipo share pois iremos disponibilizar o
compartilhamento a todos os usuários da rede.
security = share
Servidor e cliente wins: necessário para que o servidor Samba passe
a trabalhar como um servidor WINS (Windows Internetworking Name Server) na
rede. Esse serviço é o responsável, em redes Microsoft, por fornecer a lista de
compartilhamentos, navegação na rede dentre outros recursos disponíveis,
basicamente esse protocolo atua como um servidor DNS. Utilizaremos essa opção
pois sem um servidor WINS os clientes passariam a usar pacotes broadcast para
navegação, o que acarretaria num aumento no tráfego de rede, tornando assim o
processo mais passíveis de falhas.
wins support = yes
Requisições WINS: Este parâmetro pode ser necessário para alguns
clientes antigos que tenham problemas no envio de suas requisições WINS
wins proxy = no
Tabela de endereços: Especifica o máximo de tempo de vida em
segundos das máquinas na lista de nomes de endereços das máquinas.
max wins ttl = 518400
Pesquisa no DNS: Permite que o servidor WINS pesquise no
DNS a localização de nomes de máquinas, caso essas não estejam no cache.
dns proxy = no
Arquivo de log: Nesse item definiremos onde deverão ser salvos os registros de log
do sistema, assim como o nome do arquivo de log. A opção %m nos disponibilizará
arquivos de log diferentes para cada máquina que logar no servidor Samba.
log file = /var/log/samba/samba-log.%m
Com isso, o Samba vai passar a gerar os eventos referentes aos
acessos. No entanto é necessário configurar o sysklogd, que é o responsável por
logar os eventos, gerando assim o arquivo de log que será usado consultas. Como
usuário de sistema editaremos o seguinte arquivo:
#vim /etc/syslog.conf
e a seguinte linha deverá ser acrescentada:
local5.notice /var/log/samba-full_audit.log
Observemos que o comando local5.notice faz referência aos valores informados nas
opções
full_audit:facility
e
full_audit:priority,
já
o
comando
/var/log/samba-
full_audit.log faz referência ao arquivo de log que será gerado.
Após essas configurações será necessário reiniciarmos os serviços:
# /etc/init.d/samba restart
# /etc/init.d/sysklogd restart
Ao
observarmos
o
arquivo
/var/log/samba/samba-log.%m,
poderemos analisar as entradas para data e hora, usuário da máquina, ip da
máquina, o nome do arquivo ou pasta onde ela foi realizada e a operação realizada
como em:
Nov 30 14:46:31 localhost smbd_audit: nobody/10.1.1.111/arquivos|unlink|
ok|email/cacau_e
Nov 30 14:49:51 localhost smbd_audit: nobody/10.1.1.13/arquivos|rename|
ok|./estudos|./redes
Nov 30 14:49:56 localhost smbd_audit: nobody/10.1.1.6/arquivos|rename|
ok|redess/estudos|redes/tcp.txt
Nov 30 14:49:58 localhost smbd_audit: nobody/10.1.1.8/arquivos|rmdir|ok|
redes/xuva
Nov 30 15:05:14 localhost smbd_audit: nobody/10.1.1.7/arquivos|rename|
ok|./frutas|./caqui
Dec 3 21:40:20 localhost smbd_audit: nobody/10.1.1.7/arquivos|rename|
ok|./Nova Pasta|./fotos
Dec 3 21:40:59 localhost smbd_audit: nobody/10.1.1.6/arquivos|rename|ok|
fotos/Garden.jpg|fotos/jardim.jpg
Dec 3 21:41:07 localhost smbd_audit: nobody/10.1.1.13/arquivos|rename|
ok|fotos/Des.jpg|fotos/desert.jpg
Dec 3 21:41:47 localhost smbd_audit: nobody/10.1.1.111/arquivos|rename|
ok|caqui/Novo Documento de Texto.txt|caqui/coquetel-de-frutas.txt
Depuração: Aumenta o nível de depuração dos daemons do SAMBA de 0 a 9.
Utilizaremos um nível igual a 2, assim teremos a listagem de todos os
compartilhamentos acessados, dos usuários que acessaram, assim como data/hora
e quais as tentativas de acesso.
Dessa forma o administrador poderá ter certeza que o conteúdo não está sendo
acessado indevidamente. O nível de depuração 0 é o padrão.
debug level = 2sad
medida de segurança para que a conta “root” não seja usada para acessar o
servidor.

invalid users = root

arquivos indevíduos
veto files = /*.mp3/*.divx/*.eml/* .wmv/*.wma/*

auditoria e lixeira
O módulo auditoria será habilitado usando o comando abaixo:
vfs objects = full_audit recycle

operações que devem ser logadas
Operações como open, opendir, write, unlink, rename, mkdir, rmdir,
chmod, chown estão disponíveis para que sejam gravadas em log. Utilizaremos
apenas a operação de renomear e remover diretórios bem como operações de
remoção de arquivos, conforme linha abaixo:
full_audit:success = rename rmdir unlink

informações que serão incluídas no log
Conforme variáveis definidas anteriormente, podemos observar que
o comando abaixo irá nos fornecer no arquivo de log: o nome da máquina, o IP e o
nome do compartilhamento onde foi feito o acesso ou a alteração.
full_audit:prefix = %u|%I|%S

mensagens de erros
A seguinte opção irá proibir que arquivos e mensagens de erros não
sejam gravadas no log.
full_audit:failure = none

nível dos alertas
full_audit:facility = LOCAL5
full_audit:priority = NOTICE

configurações da lixeira
O administrador do sistema poderá utilizar o crontab para agendar a
limpeza da lixeira.2
2
Crontab. Ver anexo 2
maxsize=0 indica o tamanho máximo de um arquivo que irá para a lixeira. Para
servidores com pouco espaço em disco isso pode significar um problema.
Adotaremos maxsize=0.
recycle:maxsize = 0

pasta onde ficará a lixeira
Nesse item indicaremos o diretório da pasta lixeira e o nome das
máquinas que renomearam e/ou removeram diretórios bem como efetuaram
operações de remoção de arquivos. As linhas abaixo também definiram as
permissões para cada diretório.
recycle:repository = /home/servidor/samba/lixeira/%m
recycle:directory_mode = 0777
recycle:subdir_mode = 0777

estrutura das pastas
Nesta opção definimos que as estruturas de pastas sejam mantidas
como foram definidas no compartilhamento.
recycle:keeptree = Yes
recycle:touch = True

bloqueio de arquivos de backup e temporários
Definiremos que arquivos de backup e arquivos temporários na
lixeira não serão gravados.
recycle:exclude = *.tmp, *.temp, *.ldb, *.o, *.obj, ~*.*, *.bak
recycle:exclude_dir = tmp, temp, cache

cópia de arquivos
Definiremos que arquivos que são regravados (sobrescritos) irão
armazenar uma cópia do original na lixeira.

recycle:versions = yes
exceções cópia de arquivos
Podemos definir que para arquivos com extensões como .pps ou .ppt
não sejam feitas cópias ao serem reescritos.
recycle:noversions = .exe|.pps|.ppt
Assim o arquivo original não será guardado, caso alguma edição
seja feita.
Dentro da variável arquivos iremos definir:

nome da pasta compartilhada
Podemos definir o nome que aparecera na rede e abaixo das
configurações da pasta compartilhada.
[arquivos]
comment = Compartilhando arquivos do Servidor

local da pasta compartilhada
path = /home/servidor/arquivos

usuários que terão acesso
Será definido como “yes” para que todos os diretórios de usuários
sejam lidos por todos os usuários da rede.
public = Yes

leitura e gravação de arquivos
Neste caso todos os usuários terão acesso a leitura e gravação.
read only = no
writeable = yes

modo criação de arquivos
Serão definidas as permissões que as pastas criadas na share irão
possuir. Neste caso permissão total de leitura, escrita e execução de arquivos.
create mask = 0777

autenticar usuários
3
A linha abaixo é definida para que os usuários não-autenticados
possam acessar os compartilhamentos.
guest ok = yes
3
esse item torna-se necessário pois o compartilhamento propostos é tipo share e não exige autenticação de usuários.
4.3 Configuração Proposta
[global]
workgroup = Guarapuava
netbios name = servidor
server string = servidor
security = share
wins support = yes
wis proxy = no
max wins ttl = 518400
dns proxy = no
log file = /var/log/samba/samba-log.%m
debug level = 2sad
invalid users = root
veto files = /*.mp3/*.divx/*.eml/* .wmv/*.wma/*
vfs objects = full_audit recycle
full_audit:success = rename rmdir unlink
full_audit:prefix = %u/%I/%S
full_audit:failure = none
full_audit:facility = LOCAL5
full_audit:priority = NOTICE
recycle:maxsize = 0
recycle:repository = /home/servidor/samba/lixeira/%m
recycle:directory_mode = 0777
recycle:subdir_mode = 0777
recycle:keeptree = Yes
recycle:touch = True
recycle:exclude = *.tmp, *.temp, *.ldb, *.o, *.obj, ~*.*, *.bak
recycle:exclude_dir = tmp, temp, cache
recycle:versions = yes
recycle:noversions = .exe|.pps|.ppt
[arquivos]
comment = Compartilhando arquivos do Servidor
path = /home/servidor/arquivos
public = Yes
read only = no
writeable = yes
create mask = 0777
guest ok = yes
4.4 Cenário de auditoria
Ao observarmos a pasta onde os registros de auditoria estão
salvos, poderemos analisar as entradas para data e hora, usuário da máquina, ip da
máquina, o nome do arquivo ou pasta onde ela foi realizada e a operação realizada
como em:
Nov 30 14:46:31 localhost smbd_audit: nobody/10.1.1.111/arquivos|unlink|
ok|email/cacau_e
Nov 30 14:49:51 localhost smbd_audit: nobody/10.1.1.13/arquivos|rename|
ok|./estudos|./redes
Nov 30 14:49:56 localhost smbd_audit: nobody/10.1.1.6/arquivos|rename|
ok|redess/estudos|redes/tcp.txt
Nov 30 14:49:58 localhost smbd_audit: nobody/10.1.1.8/arquivos|rmdir|ok|
redes/xuva
Nov 30 15:05:14 localhost smbd_audit: nobody/10.1.1.7/arquivos|rename|
ok|./frutas|./caqui
Dec 3 21:40:20 localhost smbd_audit: nobody/10.1.1.7/arquivos|rename|
ok|./Nova Pasta|./fotos
Dec 3 21:40:59 localhost smbd_audit: nobody/10.1.1.6/arquivos|rename|ok|
fotos/Garden.jpg|fotos/jardim.jpg
Dec 3 21:41:07 localhost smbd_audit: nobody/10.1.1.13/arquivos|rename|
ok|fotos/Des.jpg|fotos/desert.jpg
Dec 3 21:41:47 localhost smbd_audit: nobody/10.1.1.111/arquivos|rename|
ok|caqui/Novo Documento de Texto.txt|caqui/coquetel-de-frutas.txt
Vemos na primeira linha que a estação cujo IP é 10.1.1.111 removeu
o arquivo cacau_e da pasta email. Vemos também, na segunda linha, que a estação
cujo IP é 10.1.1.13, em 30 de novembro às 14:49:56, renomeou a pasta estudos
para o nome redes. Dessa forma, podemos observar que toda e qualquer
movimentação nas pastas auditadas são registradas por meio das configurações
propostas.
CONCLUSÃO
Esse trabalho buscou apresentar uma solução para implementação
de compartilhamento de arquivos com acesso total em uma rede de computadores
disposta com sistemas operacionais Linux e Microsoft Windows, visando oferecer
confiabilidade e segurança dos dados em rede.
A utilização dos recursos de auditoria nos possibilitou um maior
controle sobre quem acessa determinados recursos. Com a obtenção de
informações através de registros de log, criou-se um cenário onde projetamos e
implementamos políticas de acesso mais efetivas para a rede, indo além de apenas
bloquear completamente acessos ou impedir que pastas, impressoras, discos e
outros recursos sejam compartilhados.
Já a implementação de lixeiras, nos possibilitou armazenar arquivos
excluídos por usuários remotos, com isso conseguimos impedir que arquivos
importantes compartilhados sejam excluídos acidental ou indevidamente, permitindo
sua recuperação posterior.
O cenário proposto nos permitiu criar um servidor de arquivos de
forma simples, atribuindo-lhe uma configuração que garantiu um grau adequado de
segurança sem se basear na restrição de acessos a usuários como primeira medida.
Isso tudo foi feito utilizando um protocolo que vem crescendo continuamente em
utilização tanto em ambientes Windows como também Linux/Unix (SMB/CIFS) e um
programa – Samba – que é mantido e melhorado por uma grande comunidade de
desenvolvedores de forma livre. Lembrando também que a utilização de um sistema
livre (Debian GNU-Linux) como base para configuração tornou esta solução
totalmente livre de custos.
REFERÊNCIAS
FOCA Guia Foca GNU/Linux. In: SAMBA. Capítulo 18. 1985. Disponível em:<
http://focalinux.cipsga.org.br/guia/avancado/ch-s-samba.html>. Acesso em: 20 de
Outubro 2008.
Samba, parte 1: Instalação e configuração usando o swat. Disponível em:
<http://www.guiadohardware.net/tutoriais/samba-configuracao-avancada> Acesso
em: 22 de Outubro 2008.
Samba, parte 2: Configuração avançada do Samba. Disponível em:
<http://www.guiadohardware.net/tutoriais/samba-configuracao-avancada> Acesso
em: 22 de Outubro 2008.
Linux Redes e Servidores. Disponível em:
<http://www.gdhpress.com.br/redeseservidores/leia/index.php?p=cap6-1> Acesso
em: 10 de Outubro 2008.
Samba “Opening Windows to a Wider World”. Disponível em: <
http://samba.org/samba/devel/> Acesso em: 5 de Outubro 2008; acesso em: 10 de
Outubro 2008; acesso em: 10 de Novembro 2008.
O que é Samba. Disponível em:
<http://www.gta.ufrj.br/grad/01_2/samba/oqehsamba.htm> Acesso em: 5 de Outubro
2008.
Protocolo (ciência da computação). Disponível em:
<http://pt.wikipedia.org/wiki/Protocolo_(ciência_da_computação) Acesso em: 29 de
novembro 2008.
Shared Resource. Disponível em: < http://en.wikipedia.org/wiki/Shared_access >
Acesso em: 25 de novembro 2008.
O que é o Debian?. Disponível em: <http://www.debian.org/> Acesso em: 01 de
Outubro 2008.
BIBLIOGRAFIA CONSULTADA
RUBEM, E. FERREIRA. Linux Guia do Administrador do Sistema. Novatec Editora
Ltda ISBN: 85-7522-038-17
TSUJI, HIDE.; WATANABE, TAKASHI. Configurando um servidor Linux. MAKRON
Books, São Paulo, c. 6, p. 99-113, 2000. ISBN: 85-205-04-4-3
MORIMOTO, CARLOS E. Redes e servidores Linux: guia prático. Porto Alegre: Sul
Editores., 2005.
Elizabeth D. Zwicky, Simon Cooper & D. Brent Chapman. Building Internet Firewalls.
Second Edition, June 2000. ISBN: 1-56592-871-7, 890 pages
Chapter 17. File Transfer, File Sharing, and Printing (Página 287)
DANTON, GIAN. Metodologia Científica. Virtual Books Online M&M Editores Ltda.,
2002.
APÊNDICE 1
Compartilhamentos Samba em estações com Windows Vista
Esse apêndice fez-se necessário, pois em uma rede mista, onde
estão sendo disponibilizados serviços Windows e Linux, podem existir estações de
trabalho com o sistema Microsoft Windows Vista. Para casos como esse poderemos
optar por fazer uso da versão 3.0.22, ou superior, para o aplicativo Samba ou ainda
configurar nas estações com o Windows Vista o uso do sistema NTLM.
Para configurar o uso do sistema NTLM, utilizamos o utilitário
"secpol.msc" a partir do menu Diretivas locais em Opções de segurança seguido de
Segurança de rede. Escolheremos em nível de autenticação Lan Manager a opção
"Enviar LM e NTLM - use a segurança da sessão NTLMv2, se negociado".
Dessa forma passaremos a utilizar os serviços de compartilhamento disponibilizados
pelo Samba.
APÊNDICE 2
CRON E CRONTAB
O cron é um serviço no sistema operacional Linux que é carregado
durante o boot do sistema. Com essa ferramenta podemos programar e agendar a
execução de comandos e processos para que sejam executados de maneira
repetiva ou apenas uma vez.
Para executar as tarefas o cron utiliza uma tabela chamada crontab.
Esse arquivo, crontab, geralmente fica armazenado no diretório /etc/ mas também
pode estar no diretório /var/spool/cron, diretório de cada usuário do sistema.
Para podermos demonstrar como utilizar o serviço crontab, iremos
propor a seguinte situação: suponhamos que seja necessário notificar o
administrador de rede que uma auditoria na pasta de compartilhamento seja feita
nos dias 10 e 20 de cada mês.
Formato crontab
[minutos] [horas][dias do mês][mês][dias da semana][usuário][comando]
Etapa 1 – No terminal digitar o comando crontab –e.
$crontab –e
Etapa 2 – Agendando a tarefa
#Lembrete Administrador
30 09 10,20 ** echo “Realizar auditoria na pasta lixeira”
Dessa forma, o lembrete “Realizar auditoria na pasta lixeira” será
exibido em todos os meses nos dias 10 e 20 de cada mês às 09:30 da manhã.
APÊNDICE 3
Linux e Estruturas de Diretórios
Durante o trabalho procuramos subentender que alguns conceitos
básicos tais como estrutura de diretórios, pastas e permissões de arquivos em
sistemas Linux já eram conhecidas. No entanto, esse apêndice se justifica para que
possamos apresentar de maneira sucinta esse assunto, que é pré-requisito para
compreensão das atividades propostas.
Arquivo – Conjunto de informações é qualquer tipo de informação
sejam textos, imagem, som, etc, desde que armazenadas em um disco ou fita
magnética (dispositivos eletrônicos). Um arquivo possui várias propriedades dentre
elas: nome, tamanho e tipo.
Por exemplo:
casa.txt
Casa.txt
musica_1.mp3
arquivo1001.tar.gz
Os sistemas Linux, diferem letras maiúsculas de letras minúsculas.
Dessa forma os arquivos casa.txt e Casa.txt representaram arquivos diferentes.
Extensão de arquivo – A sequência de caracteres após o ponto indica a extensão do
arquivo. Existe para indicar a natureza do conteúdo, mas não é obrigatória a
presença da mesma. É usualmente utilizada por convenção feita entre usuários e
desenvolvedores de aplicativos, pois facilita a identificação do conteúdo do arquivo.
Exemplo de extensões mais conhecidas:
txt
Indica que o arquivo contém apenas texto (ASCII).
jpg
Indica que o arquivo contém uma imagem em formato jpeg.
html
Arquivo contendo hipertexto, usualmente encontrado na internet
Diretório – Conhecido como “pasta” é muito semelhante a uma pasta de escritório,
pois é utilizada para armazenar vários arquivos e também vários outros diretórios.
Quando um diretório é formado por vários outros diretórios, temos uma árvore de
diretórios onde chamamos o diretório que contém todos os demais de diretório raiz
representado pelo símbolo “/”. Exemplos:
/
/etc/samba
/usr/local/src/
Para representar um arquivo informamos a hierarquia de diretórios que o contém,
seguido do nome desse arquivo. Por exemplo: /etc/samba/smb.conf
Permissões
Em sistemas Linux além de cada arquivo possuir um nome e um
conjunto de informações os mesmo são compostos por atributos. Entre esses
atributos estão o tipo de arquivo e as permissões de acesso a esse arquivo. Essas
permissões são necessárias, pois fornecem segurança ao sistema, visto que
existem vários podem utilizar o sistema ao mesmo tempo. (O sistema é oferecido a
vários usuários).
É com base nessas informações que cada usuário pode ler,
escrever ou executar cada arquivo ou diretório.
Dizemos que um usuário tem permissão para executar um
determinado diretório quando ele é capaz de acessar o diretório fazendo buscas
dentro dele, diferente de executá-lo com programa.
Download