quinta-feira, 28 de junho de 2007

O que é um Firewall ?

por Vinícius Serafim


Um firewall pode ser composto por três tecnologias básicas:

  • Filtro de pacotes;
  • NAT (Network Address Translation); e
  • Proxy.

A utilização de qualquer uma dessas tecnologias, seja de forma isolada ou combinada, para a realização de controle de comunicação entre duas redes pode ser chamada de firewall. Portanto, mesmo que somente um proxy seja utilizado, pode-se dizer que esse proxy é o firewall da rede. Nas seções seguintes cada uma das três tecnologias é explanada.

Filtro de pacotes

Pode-se dizer que é a tecnologia básica da maioria dos firewalls. Algumas vezes, quando alguém fala de firewall, está falando apenas de um filtro de pacotes, muito embora essa não seja a única tecnologia que compõe um firewall.

Um filtro de pacotes tem como função básica a aceitação ou o bloqueio de determinado tráfego. A decisão de aceitar ou bloquear um tráfego ou, se você preferir, um pacote é baseada em um conjunto de regras determinadas pelo administrador do filtro de pacotes. Cada regra é composta de uma ou mais condições que descrevem o pacote e uma ação a ser tomada.

NAT (Network Address Translation)

A Tradução de Endereços de Rede, ou simplesmente NAT, surgiu com um propósito bastante interessante e acabou causando um efeito bastante importante na adoção do IPv6. Em meados dos anos 90 falava-se muito que logo acabariam os endereços IP disponíveis na Internet, o que de fato era um problema bastante relevante pois quem não tivesse um endereço IP não poderia "entrar" na Internet. Logo houve uma certa correria em definir o sucessor do IPv4 (que utilizamos até hoje) que era o IPv6. Uma das grandes mudanças é que o IPv6 tem endereços de 128bits contra os endereços de 32bits do IPv4, ou seja, enquanto o IPv4 suporta apenas 4.294.967.296 endereços o IPv6 suporta 3.40282367 x 10^38 endereços.

O NAT tornou possível que diversos computadores com endereços IPs não-roteáveis ou inválidos na Internet pudessem a ele se conectar por intermédio de uma tradução desses endereços para um endereço válido. As faixas de endereços que não-roteáveis na Internet e que, portanto, deve ser a sua escolha na hora de colocar endereços na rede da sua organização são:

  • 10.0.0.0/8 (vai de 10.0.0.0 até 10.255.255.255)
  • 172.16.0.0/12 (vai de 172.16.0.0 até 172.31.255.255)
  • 192.168.0.0/16 (vai de 192.168.0.0 até 192.168.255.255)

Computadores que tenham qualquer um desses endereços não conseguem se comunicar diretamente com a Internet, havendo então a necessidade de um intermediário (NAT ou mesmo Proxy) que tenha ao menos um endereço válido na Internet.

O NAT permite que centenas de computadores com endereços não-roteáveis possam accessar a Internet compartilhando um único endereço inválido. O resultado disso é que um dos elementos que causavam a maior pressão para a rápida adoção do IPv6 foi retirado de cena: o esgotamento dos endereços.

O fato de um computador não ter um endereço válido na Internet impede naturalmente o acesso dele e à ele. Portanto, por padrão, já há uma limitação natural do acesso tanto de uma rede interna à Internet quanto da Internet à rede interna. Qualquer tradução de endereços tem que ser comandada de forma explícita, do contrário a comunicação não será possível.

Um firewall só composto por NAT já é algo útil. Lembre do usuário que tem um link ADSL em casa. Se ele utilizar um modem ADSL que seja também roteador, o modem terá o endereço válido na Internet e distribuirá endereços inválidos na rede interna. Por padrão esses modems já realizam NAT para qualquer pacote enviado pelos computadores internos porém não realizam NAT algum para pacotes que venham da Internet e não sejam em resposta aos pacotes previamete enviados pelos computadores internos. O resultado disso é que mesmo com o uso isolado do NAT as máquinas da rede interna já não podem mais ser acessadas a partir da Internet. Outra situação é a do usuário que ao invés de ter um modem ADSL tem um modem ADSL bridge. Nesse caso o computador é que recebe o endereço válido e não há NAT em uso, portanto qualquer pacote enviado para aquele endereço chegará diretamente ao computador do usuário e caberá a este tomar suas medidas de segurança.

Proxy

O proxy também pode ser chamado de Application Level Gateway. Esse nome destaca a principal característica do proxy: tratar informações do nível de aplicação. Enquanto um filtro de pacotes "vê" como unidade de informação o pacote, o proxy por sua vez "enxerga" como unidade um e-mail ou uma página web, informações da camada de aplicação.

Um e-mail ou mesmo uma página web, quando transmitidos, acabam sendo fragmentados em diversos pacotes o que dificulta bastante o trabalho de um filtro de pacotes quando o que se deseja são filtragens como:

  • filtragem de palavras e termos
  • filtragem de acesso à domínios como "dominioindesejado.com.br"
  • filtragem de remetentes e destinatários de mensagens de e-mail
  • filtragem de arquivos transmitidos/recebidos

Esses e outros tipos de filtragem baseados no conteúdo do nível de aplicação são a especialidade de um proxy. Para cada tipo de aplicação é necessário um proxy específico. Por exemplo, para controlar e-mails é necessário um proxy SMTP, já para controlar a navegação na web é necessário um proxy HTTP.

Diferentemente do filtro de pacotes o proxy não faz o simples encaminhamento dos pacotes recebidos para o destino final, mas sim ao receber uma solicitação de acesso ele inicia uma outra conexão com o destino e solicita as informações. Uma vez recebidas, as mesmas podem ser analisadas, filtradas - até mesmo alteradas - e só então são repassadas ao solicitante.

Além de permitir filtragens mais elaboradas no nível de aplicação, o proxy também possibilita o monitoramento mais detalhado das ações de acesso sendo executadas na rede, já que o mesmo pode interpretar de forma mais específica os protocolos do nível de aplicação.

Fonte: http://blog.serafim.eti.br/2007/06/afinal-o-que-um-firewall.html

0 comentários:

by TemplatesForYou
SoSuechtig,Burajiru