Vous êtes sur la page 1sur 11

CONTROLANDO O ACESSO A INTERNET COM A

UTILIZAÇÃO DE SOFTWARES LIVRES.

Cleber Medeiros Silva*

RESUMO: Este trabalho apresenta os fundamentos e características basilares para o


controle legitimo de acesso a internet em redes locais, tendo como foco a utilização de
softwares livres como alternativa para essa abordagem, mostrando conceitos, métodos e
formas de implementação dessas ferramentas, buscando abordar a criação e organização de
regras de controle de acesso, geração de relatórios e monitoramento de acesso na rede.

Palavras-chave: Controle de Acesso. Squid. Proxy. ACL.

* Analista de Sistemas – Instituto Federal de Educação Tecnológica de Roraima


E-mail: clebermsb@gmail.com
1 INTRODUÇÃO
A crescente facilidade ao acesso a internet, tem possibilitado o aumento expressivo de
instituições conectadas a grande rede. São incontestáveis os beneficio trazido pela internet,
como o acesso a informações em tempo real e uma quantidade incrível de conteúdo
disponível virtualmente.

Estabelecer políticas de acesso, utilizando tecnologia de filtragem de conteúdo é uma


forma evitar o acesso a sites que nada têm haver com as atividades realizadas nas instituições,
como sites de relacionamentos, até mesmo, sites que contenham conteúdos pornográficos e
jogos on-line.

“Pesquisas realizadas nos últimos anos têm demonstrado pelo tipo de site acessado,
que a produtividade dos funcionários com acesso irrestrito à Internet em ambiente de trabalho
é reduzida”(Acesso restrito à internet, 2010).

Proporcional ao acesso a web cresce também o numero de incidentes de segurança


proveniente de redes privativas. O Gráfico da Figura 1 mostra o total de incidentes ocorridos
em redes que foram notificados ao CERT.br (Centro de Estudos, Resposta e Tratamento de
Incidentes de Segurança no Brasil).

Essas informações evidenciam a necessidade de buscas por alternativas e ferramentas


que possibilitem a melhoria da segurança dessas redes, estabelecendo regras de controle de
acesso, possibilitando dessa forma diminuir os riscos associados ao acesso irrestrito à rede
mundial de computadores nas instituições e empresas.

O uso do serviço de proxy permite concentrar todo o fluxo de acesso, possibilitado


também a utilização de formas de controle, como regras de acesso e filtros de conteúdo.

Este artigo aborda os principais fundamentos e características que possibilitem um real


controle de acesso através do serviço proxy e regras de controle implementados juntamente
com a geração de relatórios com a utilização de softwares livres(citar definiçao de software
livre).
Figura 1 – Total de incidentes reportados ao CERT.br

2 Software Livre

Softwares Livres são programas que pode ser usado, copiado, estudado, modificado e
redistribuído sem restrição. A forma usual de um software ser distribuído livremente é sendo
acompanhado por uma licença de software livre, como a GPL (Licença Pública Geral), e com
a disponibilização do seu código-fonte.

As licenças para a maioria dos softwares e outros trabalhos práticos são


projetados para tirar a sua liberdade de compartilhar e modificar as obras. Em
contrapartida, a Licença Pública Geral GNU pretende garantir sua liberdade
de compartilhar e modificar todas as versões de um programa - para se
certificar de que o software continue livre para os seus usuários (Licença
GNU, 2010).
3 Conceito de proxy

Proxy refere-se a um software que atua como gateway de aplicação entre o cliente e o
serviço a ser acessado, interpretando as requisições e repassando-as ao servidor de destino
(RICCI, B. Squid, 2006). O proxy tem como função, agir em nome da máquina cliente mas
sem deixar que o servidor a conheça, ou seja, do ponto de vista do servidor, ele atuará como
se o conteúdo requisitado fosse mesmo para o proxy e não para a máquina cliente.

Com a utilização do proxy é possível criar filtros e regras de acesso para todo o
conteúdo que está sendo transmitido e recebido. Essa funcionalidade aumenta
consideravelmente a segurança da rede, pois, diversos mecanismos podem ser implementados
para controlar as informações que estão sendo enviadas e recebidas da Internet.

4 Software livre squid

Squid é um software de alta performance para clientes web, suportando protocolos


FTP, gopher e HTTP (Squid – Proxy, 2010). Essa ferramenta é largamente utilizada para
compartilhamento de acesso a WEB, possui versões para diferentes distribuições Linux ,
podendo ainda implementar melhorias de performance e controle de acesso, por isso foi
escolhido para mostrar as funcionalidades no controle de acesso a web. A figura 2 mostra
onde o serviço de proxy é situado, realizando o controle de acesso em uma rede.

Figura 2 – Rede utilizando proxy.

5 Controle de Acesso

O Squid possui uma eficiente forma de controle de acesso à Internet. Este controle é
feito através de ACL ś (Access Control Lists) ou listas de controle de acesso. A utilização de
ACL ś é uma das parte mais importantes na implementação do controle de acesso, requerendo
assim uma atenção especial na sua configuração.

As configurações do squid são feitas no aquivo squid.conf, inclusive as


́
diretivas das ACL s.
Para que possamos ilustrar de forma consistente, faz-se necessário entender
as seguintes premissas.
• As diretivas do arquivo squid.conf são interpretadas de cima para
baixo, ou seja, na ordem em que são escritas.
• Sempre defina como ultima diretiva do arquivo squid.conf uma
regra de acesso que bloquei todas as solicitações de acesso.
• Não crie regras de acesso desnecessárias, evite redundância e
diretivas que exijam resolução de nomes dns.

• Caso seu ambiente exija um grande número de diretivas ou maior


flexibilidade do que a já grande flexibilidade oferecida pelo squid, deve-se
utilizar a integração com outros softwares. ( Solução Definitiva, 2006).
5.1 Definição de Regras

As ACL's são definidas da seguinte maneira:

acl nome tipo string | “endereço_arquivo”

• acl é a palavra chave que identifica uma acl;

• nome é o identificador único de cada acl;


• tipo é a funcionalidade da acl;

• string é um conjunto de palavras que farão parte do grupo definido pela acl;

• endereço_arquivo é o endereço de um arquivo que conterá as palavras que farão parte


do grupo definido pela acl.

Exemplo: acl acesso_total src "/etc/squid/acesso_total"

5.2 Tipo de Regras

Existem vários tipos de regras de acesso que podem ser implementadas, a seguir serão
mostradas algumas e suas características:

• scr – Baseia-se no endereço ip de origem da requisição, ou seja, a regra de


acesso se baseia no endereço de ip do cliente que solicite a requisição. ( Solução
Definitiva, 2006).

• time - Usado para especificar dias da semana e horários.

• url_regex - Este tipo percorre a URL a procura da expressão regular especificada.

• port - Realiza o controle pela porta de destino do servidor.

• Ident – Permite classificar o acesso de acordo como o usuário logado no computador cliente.

Exemplo: acl macaddress arp 09:00:2b:23:45:67 (ACL, 2010).

Informações detalhadas sobre acl e configurações do squid podem ser encontradas em:
“http://www.squidcache.org/Doc/config/acl/”

5.3 Organização Hierárquica

O grupo de regras de acesso que utilizam ACL’s têm a hierarquização como ponto
chave o correto controle de acesso.

A seguir será mostrada algumas regras de forma hierarquizadas e organizadas:

5.3.1 Regras de Segurança

São regras que precedem as regras de bloqueio principal.

• http_access allow manager localhost

Essa regra permite acesso do “cache” ao computador local (proxy).

• http_access deny !Safe_ports

Essa regra impede a utilização de portas não seguras.


5.3.2 Regras de bloqueios prioritárias.

São regras que não possuem exceções e devem ser obrigatoriamente definidas antes de
qualquer regra de liberação .

• http_access deny RedePrincipal

Nega o acesso à Internet aos endereços ip ś que não estão definidos na ACL
“RedePricipal”.

• http_access deny excluídos

I Impede o acesso dos usuários que estão definidos na ACL “Excluídos”.

5.3.3 Regras de liberações específicas

Precedem as regras normais de bloqueio, estas regras devem ser obrigatoriamente


definidas após as regras de bloqueio prioritárias.

• http_access allow Liberados Hora_Expediente

Libera o acesso a todos os sites cujos endereços contenham palavras listadas no


arquivo definido na ACL “Liberados” horário definido na ACL “Hora_Expediente” para todos

os usuários.

• http_access allow gerencia

Libera o acesso a todos os sites para o grupo gerencia em qualquer horário.

5.3.4 Regras gerais de bloqueios

São as regras de bloqueio que serão aplicadas em todos os casos que não estejam

definidos anteriormente nas regras de liberação específicas .

• http_access deny !Hora_Expediente

Restringe o horário de acesso à Internet ao horário definido na ACL “Hora_Expediente”.

• http_access deny SitesAdultos

Bloqueia o acesso aos sites cujos endereços contenham palavras listadas no arquivo do grupo

“Adultos” em todos os horários. (Proposta de Controle Eficaz do Acesso à Internet, 2010).

5.3.5 Regra de liberação geral


• http_access allow autentica

Permite o acesso a todos os sites não bloqueados anteriormente a todas as máquinas mediante

autenticação.

5.3.6 Regras de bloqueio total.

• http_access deny all

Bloqueia todos os outros casos não previstos anteriormente. Bloqueia qualquer acesso que não

tenha sido liberado nas regras anteriores.

6 Filtro de Conteúdo

Existem algumas ferramentas softwares livres que podem trabalhar integradas com
outros softwares para obter um eficiente resultado no filtro de conteúdo, como o SquidGuard
e o DansGuardian.

O DansGuardian é outra opção de filtro de conteúdo desenvolvido para


trabalhar com o Squid, filtrando conteúdo indesejado. A grande diferença
entre ele e o SquidGuard é que o SquidGuard se limita a bloquear paginas
contidas nas listas, enquanto o DansGuardian utiliza um filtro adaptativo, que
avalia o conteúdo da página e decide se ela é uma pagina impropria com base
no conteúdo, utilizando um conjunto de regras adaptativas (Servidores Linux,
Guia Prático, 2008).
Segundo Bruno Ricci e Nelson Mendonsa (2010, p.127) “O DansGuardian é uma
premiada ferramenta open-source para filtro de conteúdo web, este permite obter uma grande
flexibilidade pois oferece recursos como comparação de palavras, expressões regulares e
substituição de palavras”.

O principal arquivo de configuração é o dasnguardian.conf, onde serão implementadas


suas funcionalidades. A filtragem de paginas funciona em dois níveis, ao receber a requisição
do cliente, o DansGuardian verifica se o endereço a se acessado está em uma das listas. Caso
esteja, o cliente recebe a mensagem de erro e o acesso não é feito.

7 Autenticação de Usuários

A identificação do usuário referente ao acesso a Internet é uma necessidade comum


em ambientes corporativos. No entender de RICCI e Nelson (2006, p.63) muitos são os
métodos e tecnologias existentes que permitem liberar ou bloquear o acesso a internet
baseando-se nas credenciais apresentadas por um determinado usuário, logo, para habilitar a
integração desses métodos com o proxy squid é preciso utilizar outros programas
responsáveis por validar as credenciais apresentadas e repassar seu resultado para o squid.
A forma mais simples de implementar autenticação no squid é usando o módulo
“ncsa_auth”, que faz parte do pacote principal (Servidores Linux, Guia Prático, 2008). Ele
utiliza um sistema simples, baseado em um arquivo de senhas, onde é possível cadastrar e
bloquear os usuários rapidamente, más é considerada uma forma menos segura para esse
objetivo. Outras aplicações apenas validam a autenticação efetuada anteriormente garantindo
os acessos do usuário.

Várias outras ferramentas livres como OpenLDAP e Winbind integradas com o squid,
implementam soluções eficientes na autenticação de usuários. O winbind por exemplo é uma
solução eficiente para o problema de logon único em redes compostas por sistemas
operacionais diferentes.

8 Monitoramento e Relatórios

Tão importante como controlar é acompanhar e interpretar as informações gerados.


Para esse acompanhamento existem soluções como os softwares livres Sarg, Calamaris e Ntop
amplamente utilizados.

O SARG ( Squid Analysis Report Generator) é uma ferramenta brasileira de código


livre utilizada para auditar o acesso a internet de seus usuários. Dentre suas qualidades
destacam-se sua incrível velocidade, sua licença de software livre e sua nacionalidade
brasileira.( Solução Definitiva, 2006).

Os relatórios gerados pelo SARG são de simples compreensão e bem completos no


que se propõe, além do usuário e do site acessado ele apresenta ainda informações como o
total de conexões, bytes trafegados, se o acesso a determinado site foi negado, data e a hora de
acesso e etc.

Outra solução para monitorar o acesso na rede é a ferramenta Ntop, que mostra todo o
volume de banda consumido por cada maquina de rede e, dentro de cada relatório
informações detalhadas sobre os protocolos utilizados. Através dele é fácil identificar
maquinas que estão consumindo uma grande quantidade de banda.

9 Conclusões

Estar conectado a internet nos dias atuais virou necessidade de todos que querem estar
inseridos no mundo das informação e interatividade. Controlar o acesso é uma tarefa que
exige cuidados e planejamento, afim de possibilitar um melhor uso da rede mundial de
computadores, podendo ajudar na eficiência da realização de trabalhos corporativos,
educacionais e institucionais, além fortalecer a segurança da rede local coibindo o acesso a
sites e aplicativos maliciosos.

Os estudos abordadas nesse artigo passando pela seleção de ferramentas e busca de


soluções integradas possibilitaram uma abordagem focada no controle de acesso seguro à
internet para redes de diversos tamanhos, e com baixos custos devido à utilização exclusiva de
softwares livres. Portanto, espera-se que este trabalho sirva como base para iniciativas nesse
sentido.

REFERÊNCIAS

Acesso restrito à internet. Disponível em: <http://www.brc.com.br/index.php?


option=com_content&task=view&id=1319&Itemid=319&lang=pt_BR>. Acesso em: 23 set.
2010.

ACL. Disponível em: <http://www.squid-cache.org/Doc/config/acl/>. Acesso em 24 set.2010.


Licença GNU – Disponível em: <http://www.gnu.org/licenses/gpl.html>. Acesso em: 26 set
2010.

SQUID. Optimising Web Delivery. Disponivel em: <http://www.squid-cache.org.br>. Acesso


em: 23 set. 2010.

Squid - Proxy. Manual de Configuração do Squid.Disponivel


em:<http://iana.pbworks.com/Squid+-+Proxy>. Acesso em: 24 set. 2010.

CERT. Incidentes Reportados ao CERT.br -- Abril a Junho de 2010. Disponível em: <
http://www.cert.br/stats/incidentes/2010-apr-jun/tipos-ataque-acumulado.html >. Acesso em:
23 set. 2010.

RICCI, B; Nelson, M. Squid – Solução Definitiva. Editora Ciência Moderna, 2006.

Morimoto, C.E. - Servidores Linux, Guia Prático. Editora Sul Editores, 2008.

VISOLVE.COM. Squid Configuration Manual. [S.l.]. Dispon ́


vel em:
<http://squid.visolve.com/squid/squid24s1/squid24s1.pdf>. Acesso em: 25 Mai, 2010.

GUALBERTO, R, P; SILVA, R, B. Proposta de Controle Eficaz do Acesso à Internet,


Disponível em <www.multicast.com.br/.../arquivos/monografia-pos-seguranca-proposta-de-
controle-eficaz-do-acesso-a-internet.pdf>. Acesso em: 20 set. 2010.

Vous aimerez peut-être aussi