Shorewall - Firewall passo a passo no Linux

Neste artigo estarei mostrando passo-a-passo como instalar e configurar um firewall utilizando o Shorewall (um front-end para o Iptables). O Shorewall, além de ser muito fácil de se configurar, também é muito completo, permitindo configurar quase tudo o que o iptables permite: filter, NAT, SNAT, DNAT, QOS/traffic shapping, nfqueue etc.

[ Hits: 193.532 ]

Por: Eduardo Vieira Mendes em 19/01/2009


O arquivo policy



Será neste arquivo que definiremos quais são as politicas padrões a serem seguidas pelo firewall, ou seja, se um pacote (requisição) passar por toda a regras que vamos definir mais à frente, será aplicado esse conjunto de regras padrões.

# vim /etc/shorewall/policy

## Política de tráfego originado pelo firewall
# Se você quiser deixar que o seu servidor firewall tenha acesso livre a rede externa pode deixar
# essa opção como ACCEPT e retirar a opção de logar "info".
# Pode ser útil se você roda um servido proxy neste firewall

#$FW net REJECT info
# Rejeita tráfego do firewall para a internet

#$FW loc ACCEPT
# Aceita tráfego do firewall para a sua rede interna

# Não aceita todas as outras redes/conexões que não se encaixam nos parâmetros acima
#$FW all REJECT info


## Politica de trafego originado na sua lan (interface loc)
# Se você quer forçar suas estações a se conectarem através de um proxy
# no seu firewall, mude esta opção para REJECT e adicione a opção de log (info)

# Aceita tráfego da sua rede para a internet
#loc net ACCEPT

# Aceita tráfego da sua rede para o firewall
#loc $FW ACCEPT

# Não aceita todas as outras redes/conexões que não se encaixam nos parâmetros acima
#loc all DROP info


## Política de tráfego regado da internet.

# Não aceita nenhuma conexão originada na internet para o seu firewall
#net $FW DROP info

# Não aceita conexões originadas na internet pra a sua rede local
#net loc DROP info

# Não aceita todas as outras redes/conexões que não se encaixam nos parâmetros acima
#net all DROP info

# Esta regra deve ser a última
# Não aceita todas as outras redes/conexões que não se encaixam nos parâmetros acima
all all REJECT info

# ULTIMA LINHA - NUNCA REMOVA

Notem que está quase tudo comentado no meu policy, isto porque bloqueio* tudo e depois venho desbloqueando somente o necessário.

Caso queira pode apenas descomentar as opções que queira usar.

* Suposto bloqueio - na verdade é definido no arquivo rules tudo o que deve passar ou ser bloqueado, somente depois é aplicada as regras do arquivo policy.

Página anterior     Próxima página

Páginas do artigo
   1. Instalação
   2. Configurando o Shorewall
   3. O arquivo zone
   4. O arquivo interfaces
   5. O arquivo masq
   6. O arquivo policy
   7. O arquivo rules - seu fiel escudeiro
   8. Utilizando macros
   9. Conclusão
Outros artigos deste autor

Transforme seu Linux num Neo Geo

Trabalhando com RPM

Utilizando o Protheus em estações Linux

Utilizando o alien para a conversão de pacotes

Redes PLC

Leitura recomendada

Incremente o iptables com patch-o-matic

Migrando do ipchains para o iptables

L7-filter (funcionando) no Slackware 10.2

PFSense Firewall com Squid e SquidGuard

Controlando 2 links de internet (roteados) em um gateway Linux com SQUID

  
Comentários
[1] Comentário enviado por odirneto em 19/01/2009 - 16:06h

O shorewall é até facil, mas ainda prefito o iptables na raça mesmo... sei la, eu tenho um certo problema com alguns front-ends... sempre me parece que num vo entende a logica por tras

mas mto bom o tutorial, gostei.. bem legal =]

[2] Comentário enviado por vodooo em 20/01/2009 - 08:48h

Olá odirneto, bom dia!

Primeiramente, obrigado pelo elogio!

A maioria dos Administradores de rede experientes gostam mesmo de mexer diretamente com o Iptables, o que te dá um controle muito maior do que está ocorrendo no seu firewall, mas ainda assim existem Administradores (experientes ou não) que utilizam alguma ferramenta como o Shorewall, seja por facilidade, ou por gosto mesmo.

PS.: A quem estiver dando nota ao artigo. favor dar a nota e explicar em comentário o porque de não ter gostado do artigo, expondo assim suas críticas, as quais serão muito bem vindas e me ajudarão a criar um artigo ainda melhor da próxima vez.

No mais, abraços a todos e Viva a Liberdade!!!

[3] Comentário enviado por odirneto em 20/01/2009 - 11:11h

É, isso é verdade mesmo vodoo.. eu, apesar de tar longe de ser um administrador experiente e tal, prefiro o iptables mesmo.. é que tem aquele negocio né, quando você tem um front-end, você nunca entende o que o front-end está fazendo para você né.. ?

Enfim, mas o seu tutorial é muito bom mesmo cara, bem completinho e bem explicado. Ta de parabens mesmo.

ps - Po, vamo troca umas figurinhas, me manda um e-mail ae odirneto@petmais.net

[4] Comentário enviado por anarco2002 em 20/01/2009 - 17:32h

Parabéns, filho!!!

[5] Comentário enviado por vodooo em 26/01/2009 - 10:49h

Olá anarco2002.

Obrigado pelo elogio!!!

Abraços

[6] Comentário enviado por alexpfo em 03/08/2009 - 10:53h

COmo faço está regra no Shorewall
Preciso usar o msn-proxy mas não funciona o comando do iptables por causa do firewall.
comando do msn-proxy: iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 1863 -j REDIRECT --to-port 1863

Podem me ajudar.


Obrigado.


[7] Comentário enviado por erikogp em 31/03/2011 - 13:50h

Vi que o tópico está antigo, mas tenho esperança de alguém ver esse comentário e me responder. Não sei mais o que fazer. Não consigo fazer o redirecionamento do TSWeb funcionar.
Recentemente instalei o mandriva server e ele vem nativamente com o Shorewall. Está tudo muito bom, tenho o squid 3.0 rodando 100%, o SARG também e o shorewall funciona tudo, menos o redirecionamento para o servidor Terminal services. Não é problema no servidor, pois aqui temos dois e já testei com os dois e nada. Tenho duas conexões e a outra roda o debian 4.0 e faz o redirecionamento. Só que o script dele não funciona no Mandriva.
Segue abaixo a configuração do arquivo RULES do shorewall, que é onde fica o comando para redirecionamento:


ACCEPT+ fw net tcp http - - - squid
REDIRECT fw 3128 tcp http -
REDIRECT loc 3128 tcp http -
DNAT net loc:192.168.147.12:3389 tcp 3389

Já estou há exatamente uma semana tentando e não consigo. Internamente acesso normalmente o servidor. O serviço de terminal do server 2008 está instalado e funcionando perfeitamente, pois comprei a licença e instalei o serviço de terminal.
Há algum outro arquivo onde devo fazer alguma outra modificação?

[8] Comentário enviado por gideaobf em 07/03/2012 - 17:45h

Eae erikogp, conseguiu? alguma novidade?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts