Pular para o conteúdo

Firewall profissional

Firewall muito fácil de configurar e extremamente seguro, podendo ser instalado em qualquer distribuição Linux. Batizamos de FWControl.
Vinicius de Oliveira Almeida saguinata
Hits: 62.235 Categoria: Linux Subcategoria: Firewall
  • Indicar
  • Impressora
  • Denunciar

Parte 3: funcoes_ff.sh

Coloque o seguinte conteúdo no arquivo e salve-o:

#!/bin/sh

parse_f_forward () {
  grep -v "#" $CONF_DIR/filter/forward/* | grep -v "^$" | while read j
  do
    FF_IFACE_ENTRADA=`echo $j | awk -F, '{ print $1 }'`
    if [ ! -z $FF_IFACE_ENTRADA ]
    then
      FF_IFACE_ENTRADA="-i $FF_IFACE_ENTRADA"
    fi

    FF_IFACE_SAIDA=`echo $j | awk -F, '{ print $2 }'`
    if [ ! -z $FF_IFACE_SAIDA ]
    then
      FF_IFACE_SAIDA="-o $FF_IFACE_SAIDA"
    fi

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

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

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

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

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

    FF_ACAO=`echo $j | awk -F, '{ print $8 }'`
    if [ -z $FF_ACAO ]
    then
      FF_ACAO="ACCEPT"
    fi

    if [ $DEBUG -eq 0 ]
    then
      $IPT -t filter -A FORWARD $FF_IFACE_ENTRADA $FF_IFACE_SAIDA $FF_IP_ORIGEM $FF_PORTA_ORIGEM $FF_IP_DEST $FF_PORTA_DEST -j $FF_ACAO
    else
      echo $IPT -t filter -A FORWARD $FF_IFACE_ENTRADA $FF_IFACE_SAIDA $FF_IP_ORIGEM $FF_PORTA_ORIGEM $FF_IP_DEST $FF_PORTA_DEST -j $FF_ACAO
    fi
  done
}

   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
Nenhum artigo encontrado.

IPTABLES - Conceitos e aplicação

Configurando o iptables-p2p no Slackware

OpenVPN - Instalação e configuração

Incremente o iptables com patch-o-matic

Migrando do ipchains para o iptables

#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

Entre na sua conta para comentar.