Firewall profissional

Firewall muito fácil de configurar e extremamente seguro, podendo ser instalado em qualquer distribuição Linux. Batizamos de FWControl.

[ Hits: 59.435 ]

Por: Vinicius de Oliveira Almeida em 06/02/2008


funcoes_no.sh



#!/bin/sh

parse_n_postrouting () {
  grep -v "#" $CONF_DIR/nat/postrouting/* | grep -v "^$" | while read j
  do
    NO_IFACE_SAIDA=`echo $j | awk -F, '{ print $1 }'`
    if [ ! -z $NO_IFACE_SAIDA ]
    then
      NO_IFACE_SAIDA="-o $NO_IFACE_SAIDA"
    fi

    NO_PROTO=`echo $j | awk -F, '{print $2 }'`
    if [ ! -z $NO_PROTO ]
    then
      NO_PROTO="-p $NO_PROTO"
    else
      NO_PROTO="-p tcp"
    fi

    NO_IP_ORIGEM=`echo $j | awk -F, '{ print $3 }'`
    if [ ! -z $NO_IP_ORIGEM ]
    then
      NO_IP_ORIGEM="-s $NO_IP_ORIGEM"
    else
      NO_IP_ORIGEM="-s 0/0"
    fi

    NO_PORTA_ORIGEM=`echo $j | awk -F, '{ print $4 }'`
    if [ ! -z $NO_PORTA_ORIGEM ]
    then
      NO_PORTA_ORIGEM="--sport $NO_PORTA_ORIGEM"
    else
      NO_PORTA_ORIGEM="--sport 1024:"
    fi

    NO_IP_DEST=`echo $j | awk -F, '{ print $5 }'`
    if [ ! -z $NO_IP_DEST ]
    then
      NO_IP_DEST="-d $NO_IP_DEST"
    else
      NO_IP_DEST="-d 0/0"
    fi

    NO_PORTA_DEST=`echo $j | awk -F, '{ print $6 }'`
    if [ ! -z $NO_PORTA_DEST ]
    then
      NO_PORTA_DEST="--dport $NO_PORTA_DEST"
    fi

    NO_ACAO=`echo $j | awk -F, '{ print $7 }'`
    if [ -z $NO_ACAO ]
    then
      NO_ACAO="MASQUERADE"
    fi

    NO_IP_TRAD=`echo $j | awk -F, '{ print $8 }'`
    if [ -z $NO_IP_TRAD ]
    then
      if [ "$NO_ACAO" != "MASQUERADE" ]
      then
        continue
      fi
    else
      NO_ACAO="SNAT --to $NO_IP_TRAD"
    fi

    if [ $DEBUG -eq 0 ]
    then
      $IPT -t nat -A POSTROUTING $NO_IFACE_SAIDA $NO_PROTO $NO_IP_ORIGEM $NO_PORTA_ORIGEM $NO_IP_DEST $NO_PORTA_DEST -j $NO_ACAO
    else
      echo $IPT -t nat -A POSTROUTING $NO_IFACE_SAIDA $NO_PROTO $NO_IP_ORIGEM $NO_PORTA_ORIGEM $NO_IP_DEST $NO_PORTA_DEST -j $NO_ACAO
    fi
  done
}

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Instalando Fwcontrol (parte 2)
   3. funcoes_ff.sh
   4. funcoes_fi.sh
   5. funcoes_fo.sh
   6. funcoes_ne.sh
   7. funcoes_no.sh
   8. Criando regras
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Arno Iptables Firewall (poderoso e simples)

Abrindo e fechando portas com o BlockOutTraffic

Revisão atualizada de instalação do Iptables com Layer7

Firewall e NAT em FreeBSD com controle de banda e redirecionamento de portas e IPs

Firewall rápido e seguro com iptables

  
Comentários
[1] Comentário enviado por removido em 06/02/2008 - 15:21h

Vish...

Eita reinvenção brava...

Se procurar no google como complicar a configuração do IPTABLES cairá aqui no VoL agora...

Meu Deus, quanta criatividade...

[2] Comentário enviado por eduardo em 06/02/2008 - 15:48h

"Firewall muito fácil de configurar e ...". Confesso que achei um pouco confuso aquela penca de arquivos e diretórios ehehhehe


[3] Comentário enviado por Tainan em 06/02/2008 - 17:47h

Bom trabalho!

[4] Comentário enviado por yusuke em 06/02/2008 - 20:03h

Parabéns, você acaba de assassinar a filosofia KISS.

[5] Comentário enviado por removido em 06/02/2008 - 20:14h

Putz...
Ta d brincadeira q esses milhões de arquivos nem são comentados pra poder dar noção pra quem vai usar, do q ta fazendo....
A ideia pode ser boa, mas um pouco complicada demais pra algo q costumamos fazer em 1 so script... como yusuke disse, é um verdadeiro assassinato a filosofia K.I.S.S. (Keep It Simple Stupid).


[6] Comentário enviado por exercitobr em 06/02/2008 - 22:29h

Parabéns companheiro. Muito bom seu firewall.

[7] Comentário enviado por removido em 06/02/2008 - 22:42h

bomba

[8] Comentário enviado por mattiell00 em 07/02/2008 - 01:40h

Brother sua intenção com certeza foi das melhores, em repassar conhecimento!! parabens!!!
mas nem o Marion Bates, Chris Brenton, e William Stearns juntos conseguem entender direito os scripts!!!!!
porem o que vale é a intenção!!!! por tanto valeu mesmo "apesar da piadinha" que foi só p descontrair !!! hehehehehehe

[9] Comentário enviado por teixeira em 13/02/2008 - 22:33h

Bom, foi um verdadeiro firewall para o meu entendimento (não consegui entender NADA - hehehehehe).
Mas vou guardar o artigo, que deverá ser útil para mim algum dia.
Valeu!
Desculpe a bincadeira, e continue partilhando informações com a comunidade.

[10] Comentário enviado por pedroarthur.jedi em 25/02/2008 - 19:31h

Rapaz, siceramente, desconsiderando o NAT e o uso de aMule e afins:

iptables -P INPUT DROP
iptables -P OUTPUT DROP

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state NEW -j ACCEPT

[11] Comentário enviado por comfaa em 28/10/2008 - 12:55h

bem legal

[12] Comentário enviado por lucianopqd em 28/07/2009 - 22:58h

Essa estrutura de scripts lembra muito do Endian... muito bom, parabéns.

[13] Comentário enviado por jeffemay em 07/04/2010 - 12:15h

Qual a permissão que um script de firewall deve ter parafuncionar???


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts