Escolar Documentos
Profissional Documentos
Cultura Documentos
2
1. INTRODUÇÃO
SQUIDGUARD
Palloma Glaiene de Macedo Vale1 A Internet é praticamente o oxigênio da sociedade digital contemporânea. Todavia,
esse mesmo oxigênio que a ajuda a respirar, pode acabar engendrando o fogo que
irá consumi-la. A falta de segurança computacional existente na maioria dos
Este artigo aborda o firewall como temática principal. Este trabalho aborda a É como resposta a esta problemática que o firewall exerce um papel de suma
construção de um firewall, o qual irá controlar e monitorar o acesso dos importância. Firewall é o nome dado ao dispositivo de rede que, regulando o
funcionários da empresa Engineer LTDA à World Wide Web. Como restrições da tráfego entre redes distintas, busca impedir a transmissão de dados nocivos ou não
nova política de acesso à Internet, podem-se citar: a proibição de acesso a chats e autorizados de uma rede a outra.
PALAVRAS-CHAVES: Firewall, Iptables, Squid, SquidGuard. A escolha desse tema se deu devido à grande importância que o quesito segurança
assumiu na sociedade digital contemporânea. Possuir um firewall bem configurado
é vital para aquele que deseja se proteger contra indivíduos mal intencionados que
This article has firewall as main thematic. This work accosts a firewall building, São várias as ferramentas de filtro e firewall disponíveis. As utilizadas nesse artigo
which will control and monitory the access of Engineer’s employees to World são o Iptables, o Squid e o SquidGuard. Mas, como construir um firewall usando
Wide Web. As restrictions of new access politic are included: chats, social nets, tais programas, de modo a bloquear tráfegos nocivos, controlar o uso da banda e
downloads, bandwidth control and authentication. Iptables, as well as Squid and monitorar o acesso dos usuários? Este artigo enfoca os seguintes objetivos:
KEYWORDS: Firewall, Iptables, Squid, SquidGuard. Controlar o uso da banda com o Squid por meio de delay pools;
Fazer um filtro de conteúdo com o SquidGuard usando blacklists;
1
Graduando em Tecnologia de redes de computadores na FAJESU. Email: glaelav@gmail.com. Usar a autenticação ncsa_auth do Squid;
Professor Orientador: Janilson Nascimento, Co-orientador: Marco Antonio Martins.
3 4
Usar Iptables para limitar respostas a pings e bloquear source routing. se saber qual o melhor, pois cada um trabalha para um determinado fim, fazendo
com que a comparação não seja aplicável.
Para melhor elucidar o problema, será utilizado um estudo de caso, ilustrado por
meio de máquinas virtuais criadas pelo VirtualBox. O firewall que trabalha na filtragem de pacotes é muito utilizado em redes
pequenas ou de porte médio. Este tipo se restringe a trabalhar nas camadas TCP/IP,
tomando as decisões baseado no endereço IP, porta TCP usada, dentre outros
3. FIREWALL fatores. Quando devidamente configurado, esse tipo de firewall permite que
somente computadores conhecidos troquem determinadas informações entre si e
Um firewall é um filtro que controla todos os dados que passam de uma rede a tenham acesso a determinados recursos. Ele também é capaz de analisar
outra por meio de regras pré-estabelecidas. “O Firewall trabalha como um fiscal de informações sobre a conexão e perceber alterações suspeitas.
alfândega, que analisa todos os pacotes que chegam, decidindo o que deve passar
e o que deve ficar retido.” (MORIMOTO, 2008.p.185). A seguir, são citadas três Firewalls de controle de aplicação são instalados geralmente em computadores
razões para se usar um firewall: servidores e são conhecidos como proxy. Este tipo não permite a comunicação
direta entre a rede e a Internet, efetuando a comunicação entre os lados. Este tipo de
O firewall pode ser usado para ajudar a impedir que a rede ou o computador firewall é mais complexo, porém mais seguro. O firewall de aplicação permite um
seja acessado sem autorização. Assim, é possível evitar que informações sejam acompanhamento mais preciso do tráfego entre a rede e a Internet (ou entre a rede e
capturadas ou que sistemas tenham seu funcionamento prejudicado pela ação de outra rede). É possível, inclusive, contar com recursos de log e ferramentas de
black hats; auditoria. Tais características deixam claro que este tipo de firewall é voltado a
redes de porte médio ou grande.
O firewall é capaz de bloquear portas que eventualmente sejam usadas pelas
"pragas digitais" ou então bloquear acesso a programas não autorizados;
4. ESCOPO DO PROBLEMA
Em redes corporativas, é possível evitar que os usuários acessem serviços ou
sistemas indevidos, além de ter o controle sobre as ações realizadas na rede, A empresa Engineer LTDA presta serviços de engenharia aos clientes, participando
sendo possível até mesmo descobrir quais usuários as efetuaram. também de licitações na modalidade Pregão Eletrônico. A empresa possui um link
de 3Mbps.
Existem dois tipos básicos de firewalls: o que é baseado em filtragem de pacotes e
o que é baseado em controle de aplicações. Ambos não devem ser comparados para O acesso à Internet na firma costumava ser totalmente liberado. Todavia, nos
últimos meses, percebeu-se que os funcionários estavam gastando muito tempo em
5 6
sites de relacionamento e bate-papo, relegando o trabalho a um segundo plano.
Comprovou-se também que os downloads de música e vídeos, bem como o acesso
a rádios e TVs online estavam sobrecarregando a rede.
Devido a tais acontecimentos, a Engineer LTDA resolveu adotar uma nova política
de acesso a Internet, a qual passará a ter um caráter mais restritivo. Decidiu-se por
bloquear o acesso a chats, jogos, rádios e TVs online, bem como à pornografia
durante o expediente. O Google Talk via Gmail será bloqueado.
Internet;
A Intranet só poderá acessar os servidores sob o protocolo responsável pelos
serviços que eles disponibilizam, objetivando diminuir o número de portas abertas
Uma DMZ, a qual terá os servidores WEB, Email e DNS;
desnecessariamente no servidor. Os servidores podem acessar a Internet pela porta
80 para a atualização. Haverá três grupos pertencentes à Intranet, são eles:
Intranet, que será composta pelas máquinas dos funcionários e pelos servidores
DHCP e de Arquivo.
Presidência
7 8
Funcionários da informática o Squid, sendo este último combinado com o SquidGuard, devido a uma maior
Funcionários velocidade de processamento. O firewall intermediará o tráfego entre DMZ,
Intranet e Internet. O proxy ficará na máquina firewall.
As duas máquinas da presidência terão acesso ilimitado, possuindo os seguintes IPs
estáticos:
5.1 Iptables
Presidência_1: 192.168.1.3
Presidência_2: 192.168.1.4 O Iptables é um firewall em nível de pacote criado Rusty Russel e licenciado sob
os termos da GPL. Esta ferramenta está presente a partir da versão 2.4 do kernel do
As três máquinas da informática poderão realizar downloads devido ao fato de Linux e veio como substituto ao Ipchains. Suas principais características são:
terem que baixar programas e aplicativos para instalar nas máquinas. Os hosts que
pertencem à equipe de T.I terão os seguintes endereços IP estáticos: Especificação de portas/endereços de origem/destino;
Suporte aos protocolos TCP, UDP e ICMP e a interfaces;
Máquina 01: 192.168.1.5 Possui mecanismos para rejeitar pacotes mal formados;
Máquina 02: 192.168.1.6 Suporte a módulos externos para a expansão das funcionalidades do firewall;
Máquina 03: 192.168.1.7 Suporte a priorização de serviços;
Redirecionamento de portas e Masquerading;
Haverá controle de banda por usuário com o intuito de evitar que alguns usuários
sobrecarreguem a rede e garantir que cada funcionário tenha banda disponível O funcionamento do Iptables é dividido basicamente em tabelas, chains e regras.
quando necessário. Pode-se imaginar uma tabela como sendo um local para armazenar chains com
uma determinada característica em comum. O Iptables possui quatro tabelas. São
elas:
5. SOLUÇÃO ADOTADA
Filter: Utilizada para a tomada de decisões quanto à passagem ou não de um
No intuito de melhor atender às exigências da nova política da empresa para acesso pacote através do filtro. Essa é a tabela padrão.
à Internet, será utilizada uma combinação entre os firewalls de pacote e de
aplicação. Decidiu-se pela adoção de soluções baseadas em software livre devido a Mangle: Realiza alterações especiais, tais como TOS, de forma a auxiliar os
maior confiabilidade e liberdade de uso apresentadas por tal filosofia, bem como mecanismos de filtro de pacotes.
por causa das reduções no custo da solução. Sob esta luz, será utilizado o Iptables e
9 10
Nat: É usada para compartilhar a conexão e/ou rotear os pacotes. As regras podem ser entendidas como comandos passados ao Iptables para que
ele realize uma determinada ação. As regras de filtragem, geralmente, são
Raw: Utilizada principalmente para configurar exceções no mecanismo de compostas assim:
conection tracking do kernel (ativado através do módulo ip_contract).
iptables [-t tabela] [opção] [chain] [dados] –j [ação]
A ordem de avaliação das tabelas é a seguinte:
Para Urubatan Neto (2004), o Iptables é uma ferramenta que permite manipular as
Raw mangle nat filter tabelas do Netfilter, embora o mesmo seja constantemente confundido como um
firewall por si só. Na realidade, o Iptables é uma espécie de front-end para
As chains podem ser definidas como as subdivisões de uma tabela, nas quais as manipular as tabelas do Netfilter, o qual é um software acoplado ao sistema Linux
regras serão armazenadas. Existem dois tipos de chains: as embutidas e as criadas cuja função e controlar a entrada e a saída de pacotes, sendo ele o firewall
pelos usuários. Os nomes das chains embutidas devem ser escritos em maiúsculo, propriamente dito.
pois são case-sensitive. Existem cinco chains principais (embutidas). São elas:
INPUT (mangle, filter): Verifica pacotes destinados à máquina filtro. 5.2 Squid e Squidguard
OUTPUT (raw, mangle, nat e filter): Verifica pacotes originados na máquina O Squid é um firewall livre e de código aberto em nível de aplicação que atua como
filtro que são destinados a outra máquina. um intermediário entre os microcomputadores e a Internet. O proxy Squid analisa
todo o tráfego de dados, separando o que pode ou não passar e guardando
FORWARD (mangle, filter): Utilizada para verificar os pacotes que informações para o uso posterior. Usar proxy tem várias vantagens, as principais
atravessam a máquina filtro, ou seja, pacotes gerados por uma máquina A são:
destinados a uma máquina B e que passam pelo filtro.
Possibilidade de impor restrições de acesso com base no horário, login e
PREROUTING (raw, mangle e nat): Utilizada para tomada de decisões de endereço IP, bem como bloquear páginas com conteúdo indesejado.
roteamento, tais como redirecionamento de pacotes. Usada antes do roteamento.
O proxy funciona como cache de páginas e arquivos, armazenando informações
POSTROUTING (mangle e nat): Usada quando um cliente da rede local tenta já acessadas. Isso economiza banda, tornando o acesso mais rápido.
acessar o conteúdo da Internet através da máquina filtro de pacotes (gateway).
Log dos acessos realizados através dele.
11 12
O Squid trabalha com dois tipos de cache: cache rápido, feito usando parte da Presidência poderá utilizar os 2Mbps de forma ilimitada. A informática usará até
memória RAM do servidor, e um cache um pouco mais lento, porém maior, feito 100kbps e os demais funcionários até o máximo de 80kbps. Nesse contexto,
no HD. O cache na RAM é ideal para armazenar arquivos pequenos, tais como estima-se que poderá se ter uma média de 25 usuários conectados a 80kbps. Acima
páginas HTML e imagens. O cache no HD é usado para armazenar arquivos deste número, a velocidade será reduzida, haja vista que a soma da banda
maiores, tais como downloads. consumida pelos funcionários excederia o valor do agregado.
Bloquear endereços IP e domínios funciona bem para bloquear páginas específicas, O bloqueio ao GTALK será realizado pelo Squid. A autenticação dos usuários será
mas não para bloquear páginas pornográficas, por exemplo, pois existem muitas realizada por meio do módulo “ncsa_auth”, o qual faz parte do pacote principal do
delas, de forma que tentar bloqueá-las manualmente seria praticamente impossível. Squid. A escolha deste método deu-se devido ao pequeno porte da rede (cerca de 50
máquinas) e à sua facilidade de implementação. Nesse método, deverá ser criado
Como solução a este problema, será utilizada nesse artigo uma lista chamada um arquivo de senhas.
Shalla’s blacklists, a qual contém mais de 1.500.000 de URLs. Esta lista nada mais
é do que diretórios com longos arquivos de links, com um por linha. Na lista, cada Antes de colocar o firewall em funcionamento, deve-se lembrar de fazer com que o
diretório relaciona-se a um assunto. SquidGuard atualize as listas, bem como reiniciar o Squid para que as alterações
entrem em vigor.
A Shalla’s blacklist pode ser utilizada diretamente no Squid através da opção
“url_regex”, mas por ser um arquivo muito grande, o desempenho seria ruim, já
que o Squid processa cada linha dos arquivos a cada acesso, o que consome muito 6. CONCLUSÃO
processamento.
A Internet é o alicerce da atual sociedade tecnocêntrica2. Todavia, a “grande
É nesse contexto que surge o SquidGuard, o qual permite usar longas listas de teia mundial” não proporciona adequada segurança aos indivíduos que dela
URLs com milhões de links sem uma grande perda de desempenho. O SquidGuard fazem uso. Fato: a World Wide Web é o principal ponto de invasão aos servidores,
é um plugin redirecionador, controlador de acesso e filtro para o Squid e, além de causando grandes prejuízos às empresas.
Para fazer o controle de banda serão utilizadas três delay pools, uma para cada de pacote e o de aplicação, sendo o Iptables e o Squid seus respectivos
grupo de usuários. Dos 3Mbps disponíveis pelo link serão utilizados 2Mbps para o
Squid, sendo o restante reservado para outros serviços, como email, DNS, etc. A 2
Ciro Marcondes Filho, em seu livro “Sociedade Tecnológica”, usa esse termo para se referir a uma
sociedade onde a máquina passa a ocupar o lugar que anteriormente era preenchido pelo ser humano.
13 14
representantes. Juntos, eles configuram uma boa opção no que diz respeito à
CARNEIRO, Leonardo Ferreira & JÚNIOR, Nilton Alves. Roteadores e
construção da conhecida “muralha de fogo”.
Segurança em Redes. Disponível em:
<http://www.rederio.br/downloads/pdf/roteador.pdf>. Acesso em: 09 de outubro de
Todos os bloqueios pretendidos foram realizados com sucesso, bem como a
2009.
autenticação dos usuários. Caso haja necessidade, a restrição de acesso pode ser
feita por usuário ao invés de IPs. Cada uma dessas alternativas possui prós e
contras. O bloqueio por IP é vulnerável à medida que se pode alterar o valor de um CONECTIVA LINUX. Como configurar um firewall usando o Iptables.
IP para outro com menos restrições. Todavia, o IP duplicado na rede impediria a Disponível em: <http://virtual01.incc.br/~licht/linux/servidores.firewall.iptables.
navegação. Já o bloqueio por usuário também tem “falhas”, haja vista que se pode html> Acesso em 20 de julho de 2009.
descobrir a senha de outros indivíduos sem grades dificuldades. Somam-se ainda
aqueles que salvam a senha no computador. Aliás, vale ressaltar que o fator
CONECTIVA S.A. Configurando um firewall utilizando o Iptables. Disponível
humano é a maior vulnerabilidade num sistema computacional.
em: <http://www.dimap.ufrn.br/~aguiar/Manuais/Servidor/ip-tables.html>. Acesso
em 20 de julho de 2009.
Por ser o único diretamente conectado à Internet, o Firewall proporciona uma
forma mais segura de levar serviços à rede local. Sem ele, cada host seria o
MARCONDES FILHO, Ciro. Sociedade Tecnológica. 1.ed.; Editora Scipione: São
responsável por sua própria segurança, o que definitivamente não é uma opção,
Paulo, 2004.
haja vista que a maioria dos usuários não tem o conhecimento necessário para tal.
7. BIBLIOGRAFIA MORIMOTO, Carlos Eduardo. Servidores Linux: Guia Prático. s.ed.; Sul
Editores: Porto Alegre, 2008.
CAMPELO, Alisson Chrystian. O básico de Iptables. Disponível em:
<http://ctiti.com.br/?p=116>. Acesso em: 24 de julho de 2009.
NETO, Urubatan. Dominando o Linux Firewall Iptables. s.ed.; Ciência Moderna
LTDA: Rio de Janeiro, 2004.
15 16
SILVA, Gleydson Mazioli da. Guia Foca Gnu/Linux. Disponível em: conectada à Intranet e a DMZ à rede interna DMZ. O Iptables, o Squid e o
<http://focalinux.cipsga.org.br>. Acesso em: 29 de julho de 2009. SquidGuard serão instalados na máquina firewall.
Por default, as páginas de erro do Squid são em inglês. Se quiser que elas apareçam O comando acima, cria um arquivo de senhas chamado squid_passwd com o
em português, basta acrescentar a seguinte linha ao arquivo /etc/squid/squid.conf: usuário presidente1. Será solicitada senha e confirmação. Repita esse comando,
sem a opção “-c”, para todos os usuários cuja senha deseja cadastrar.
Error_directory /usr/share/squid/errors/Portuguese
Segue agora o arquivo SquidGuard.conf :
Não se pode esquecer de criar os arquivos “bloqueados” e “bate-papo”. Para isso,
bastam os comandos: #ARQUIVO DE CONFIGURAÇÃO DO SQUIDGUARD: