LOGIN:

iMasters | Por uma internet mais criativa e dinâmica

Feeds

Linux

Feed da seção Linux

Newsletter de Linux


Quinta-feira, 30/10/2008 - 11:20 - Por Leandro Cassorielo de Andrade
Seções relacionadas:

Shorewall, uma excelente opção para firewall Linux

Instalação e configuração

Vamos ao que interessa!

Instalar os pacotes:

# apt-get install shorewall shorewall-doc

Copiar os arquivos de exemplo para o diretório de configuração do shorewall:

# cp /usr/share/doc/shorewall/examples/two-interfaces/* /etc/shorewall/

Uma rápida explicação de cada arquivo de configuração, para uma implementação simples de firewall.

Zones

Neste arquivo são definidos os tipos de zonas de sua rede. Os três tipos de zonas mais utilizados são:

  • loc - Define a zona local. Será utilizado para definir regras para a rede local;
  • net - Define a zona de Internet. Será utilizado para definir regras para o link de dados;
  • dmz - Define a zona delimitada.

A variável FW já é uma zona declarada implicitamente. Essa zona corresponde ao firewall e é utilizada para definir regras para o mesmo.

Editar o arquivo /etc/shorewall/zones e inserir a seguinte configuração:

###########################
#ZONE TYPE OPTIONS IN OUT
###########################
net ipv4
loc ipv4

# NUNCA REMOVER ESTA LINHA

Obs.: A zona FW não precisa ser definida, pois, como já disse, é implicitamente definida.

Interfaces

Neste arquivo são atribuídas zonas às interfaces de rede. Antes de tudo deverá existir uma estrutura de rede. Neste artigo estou utilizando eth0 para Internet (DHCP) e eth1 para rede local (IP STATIC).

Editar o arquivo /etc/shorewall/interfaces e inserir:


###################################
#ZONE INTERFACE BROADCAST OPTIONS
###################################
net eth0 detect dhcp,tcpflags
loc eth1 detect tcpflags,detectnets,nosmurfs

# NUNCA REMOVA ESTA LINHA

Masq

Mais conhecido como masquerade (mascaramento de rede), o masq define as máscaras de rede e a ordem em que elas serão apresentadas. Usado por servidores que servem como gateway para rede local.

Editar o arquivo /etc/shorewall/masq e inserir:

##############################################
#INTERFACE SUBNET ADDRESS PROTO PORT(S) IPSEC
##############################################
eth0 eth1

# NUNCA REMOVER ESTA LINHA

Policy

Toda política da rede é definida nesta zona. Antes de executar qualquer regra de exceção definida na zona rules (próximo tópico), o Shorewall utiliza as regras globais definidas nesta zona para só então dar prosseguimento às exceções.

Editar o arquivo /etc/shorewall/policy e inserir:

#
# Policies for traffic originating from the firewall ($FW)
#
# If you want open access to the Internet from your firewall, change the
# $FW to net policy to ACCEPT and remove the ´info´ LOG LEVEL.
# This may be useful if you run a proxy server on the firewall.
$FW net ACCEPT # LINHA 1
$FW loc ACCEPT # LINHA 2
$FW all REJECT info # LINHA 3

# Policies for traffic originating from the local LAN (loc)
#
# If you want to force clients to access the Internet via a proxy server
# on your firewall, change the loc to net policy to REJECT info.
loc net REJECT info
loc $FW REJECT info
loc ipsec ACCEPT
loc all DROP info

#
# Policies for traffic originating from the Internet zone (net)
#
net $FW DROP info
net loc DROP info
net all DROP info

# THE FOLLOWING POLICY MUST BE LAST
all all REJECT info


# ULTIMA LINHA - NUNCA REMOVA

Uma breve explicação de algumas linhas do conf policy:

  • LINHA 1 - Todas as requisições do firewall para a internet serão aceitas;
  • LINHA 2 - Todas as requisições do firewall para a rede local serão aceitas;
  • LINHA 3 - Todas as requisições do firewall para todos os outros lugares serão rejeitados e devidamente catalogados em log. Por isso o "info" ao final da linha.

As opções de ações usadas nas zonas policy e rules são:

  • ACCEPT - Aceita pacotes/requisições;
  • REJECT - Rejeita pacotes/requisições e retorna mensagem de rejeição;
  • DROP - Elimina pacotes/requisições e não retorna mensagem alguma.

Rules

Nesta zona são definidas as regras finais para o destino e origem de cada pacote/requisição. Após ter passado pelas regras da zona policy, o firewall trata os pacotes com essas exceções e direciona-os para o seu destino/origem finais.

Editar o arquivo /etc/shorewall/rules e inserir:

##########################################
#AÇÃO ORIGEM DESTINO PROTO DESTINO ORIGEM
#SOLICITANTE TAXA USUÁRIO
# ZONA ZONA PORTA PORTA(S)
##########################################

# Aceita conexões DNS vindas do firewall para a rede
#
DNS/ACCEPT $FW net

# Permite Ping vindos da "zone loc" para rede
#
Ping/ACCEPT loc $FW
Ping/ACCEPT loc loc

# Rejeita ping vindo da "zone net" batizados como "maus"...
#
Ping/ACCEPT net:200.200.200.00 $FW
Ping/DROP net $FW

ACCEPT $FW loc icmp
ACCEPT $FW net icmp

# Abrindo portas
#
ACCEPT net $FW tcp 22 # SSH
ACCEPT net $FW tcp 9000 # SSH
ACCEPT net $FW tcp 8080 # Tomcat6
ACCEPT net $FW tcp 9100 # Apache2
ACCEPT net $FW tcp 80 # Apache2
ACCEPT net $FW tcp 1521 # Oracle_Listener
ACCEPT net $FW tcp 10000 # Webmin
ACCEPT net $FW tcp 1158 # OEM

# Redirecionando conexões
# Neste exemplo estou direcionando uma requisição vinda da internet
# e direcionando-a para a rede local no IP 192.168.27.2 na porta 4899
#
DNAT $FW loc:192.168.27.2:4899 tcp 1158

# ULTIMA LINHA - NUNCA REMOVA

Esta foi uma breve explicação de como utilizar o Shorewall como firewall. Para quem deseja aprofundar-se neste software e implementar as outras diversas funcionalidades dele, visite o site oficial do Shorewall.

Este artigo foi originalmente publicado em meu blog, o blog do Leandro Andrade - Oracle e Linux.

Todos os artigos de Leandro Cassorielo de Andrade

0 comentários publicados

Poste um comentário


Os textos publicados neste espaço são de responsabilidade única de seus autores (colunistas e leitores) e podem não expressar necessariamente a opinião do iMasters.

Sobre o autor

Leandro Cassorielo de Andrade é DBA Oracle, Adm. de Redes Linux e candidato às provas de certificação OCA/OCP E LPI-1/LPI-2. Atualmente, gerencia o CPD da rede de Supermercados Veran.


Indique para um amigo

captcha

TI SHOP Produtos iMasters

  • Lançamento: CD-ROM Treinamento Aplicado de SQL - Lançamento! Treinamento Aplicado de SQL - Aprenda a trabalhar com SQL com bancos de dados Oracle e SQL Server. São mais de 100 tópicos explicados por Mauro Pichilliani, um articulistas mais lidos do iMasters. Aproveite! Apenas R$ 69,90 no TI SHOP.
  • Lançamento: Livro iMasters "O Encontro de 2 Mundos"- Este livro conta com 56 crônicas de profissionais mais admirados e influentes do mercado brasileiro de Internet. Aproveite o preço especial para leitores do iMasters. Apenas R$ 40,00 e envio imediato!
  • DVD Curso Completo de Photoshop - Do conceito à finalização Lançamento! Curso Completo de Photoshop, em DVD, com mais de 230 aulas dividas em 4 módulos: conceito, básico, avançado e finalização. Apenas R$ 69,50 no TI SHOP - Frete com 50% de desconto
  • DVD Javascript Starter - Curso Completo Com mais de 9 horas de vídeo-aulas, é um curso completo sobre Javascript. Ideal para quem deseja aprender a linguagem. Apenas R$ 64,90 no TI SHOP - Frete com 50% de desconto!

2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.