+ Responder ao Tópico



  1. #1
    GTBSoyeu
    Visitante

    Padrão Router_internet <=> Firewall(Maq rede) <=> Proxy(Maq rede) <=> Rede Interna

    Nessa topologia meu proxy tem que ser transparente, e as regras de IPTABLES estão assim:

    #!/bin/sh
    # Script p/ configuracao de Testes
    #
    # Variaveis
    IPT=/sbin/iptables
    MOD=/sbin/modprobe
    RMMOD=/sbin/rmmod
    WORKING=/etc/regras
    OUT_IFACE=eth1
    OUT_NET=eth0
    #
    #
    #Verifica se o iptables esta instalado ou foi encontrado
    if [ ! $IPT ] ; then
    echo "Iptables nao encontrado!"
    exit 1
    fi

    #Verifica se foi passado o parametro stop
    #pode ser util

    if [ ! $1 ]; then
    :
    else
    if [ $1 = "stop" ]; then
    echo "Parando firewall..."
    $IPT -F
    $IPT -F -t nat
    $IPT -X
    $IPT -X -t nat
    $IPT -Z
    exit 0
    fi
    fi

    echo -n "Iniciando Firewall .."
    #Verifica se o ip externo (minimo necessario)
    # foi configurado

    if [ ! $OUT_IP ]; then
    echo "LEIA O README!"
    exit 1
    fi

    echo -n "."

    #Funcao modulos.
    # Essa funcao remove os modulos do ipchains para evitar conflitos
    # e adiciona os modulos do iptables
    modulos(){
    #Removendo Modulos do ipchains
    # rmmod ipchains
    #Inserido Modulo do Vtun
    $MOD tun
    #Inserindo modulos iptables
    $MOD ip_nat_ftp
    $MOD ip_conntrack_ftp
    $MOD ipt_MASQUERADE
    $MOD iptable_nat
    $MOD ip_conntrack
    $MOD iptable_filter
    $MOD ip_tables
    }
    #Execucao para valer!
    echo 1 > /proc/sys/net/ipv4/ip_forward

    modulos > /dev/null 2&>1
    #Zerando regras antigas do firewall
    $IPT -F
    $IPT -F -t nat
    $IPT -X
    $IPT -X -t nat
    $IPT -Z
    #
    #
    # Navegabilidade nos barramentos sub-rede interna atraves do PROXY TRANSPARENTE
    #

    $IPT -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.1.3:3128
    $IPT -t nat -A POSTROUTING -s 192.168.1.3 -p tcp --sport 3128 -j SNAT --to 200.300.400.500
    $IPT -t nat -A POSTROUTING -s 192.168.1.3 -p tcp --sport 3128 -j MASQUERADE

    #
    # Regras Mascaramento para navegacao internet
    #
    $IPT -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    # mascarando a saida
    #
    $IPT -A FORWARD -o eth1 -d 192.168.1.3 -p tcp --dport 3128 -j ACCEPT
    $IPT -A FORWARD -i eth1 -s 192.168.1.3 -p tcp --sport 3128 -j ACCEPT
    $IPT -A FORWARD -p tcp --dport 3128 -j ACCEPT
    #
    # Habilitando a Navegacao geral
    #
    $IPT -A FORWARD -i eth0 -j ACCEPT
    $IPT -A FORWARD -i eth3 -j ACCEPT
    $IPT -A FORWARD -i eth1 -j ACCEPT
    $IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
    #
    #
    #
    echo -n "....... [OK]"
    echo
    exit 0


    Na outra maquina que está o PROXY, tem que colocar alguma regra de IPTABLES??? Ou somente aponto o firewall como GATEWAY.???

    Por favor algume pode me ajudar???

    Grato

  2. #2

    Padrão Re: Router_internet <=> Firewall(Maq rede) <=> Proxy(Maq rede) <=> Rede Interna

    $IPT -t nat -A POSTROUTING -s 192.168.1.3 -p tcp --sport 3128 -j SNAT --to 200.300.400.500
    $IPT -t nat -A POSTROUTING -s 192.168.1.3 -p tcp --sport 3128 -j MASQUERADE

    porque repetir essas duas regras? so uma faria o trabalho, e acredito que seja --dport 80 e nao --sport 3128. teste ai