+ Responder ao Tópico



  1. #1

    Padrão squid iptables cmt.caixa.gov.br

    Olá pessoal, gostaria da ajuda de vcs pois o cmt.caixa.gov.br não esta conctando eu dou um:

    #tcpdump -E eth0 host 10.10.11.100 and port 80

    21:04:58.888588 IP cmt.caixa.gov.br.http > 10.10.11.100.3608: S 358755141:358755141(0) ack 3155996647 win 65535 <mss 1380,nop,nop,sackOK>
    21:04:58.888760 IP 10.10.11.100.3608 > cmt.caixa.gov.br.http: . ack 1 win 65535
    21:04:58.889468 IP 10.10.11.100.3608 > cmt.caixa.gov.br.http: P 1:348(347) ack 1 win 65535
    21:04:59.022740 IP cmt.caixa.gov.br.http > 10.10.11.100.3608: . 1:1381(1380) ack 348 win 65188
    21:04:59.044224 IP cmt.caixa.gov.br.http > 10.10.11.100.3608: . 1381:2761(1380) ack 348 win 65188
    21:04:59.044641 IP 10.10.11.100.3608 > cmt.caixa.gov.br.http: . ack 2761 win 65535
    21:04:59.125281 IP cmt.caixa.gov.br.http > 10.10.11.100.3608: . 2761:4141(1380) ack 348 win 65188
    21:04:59.126981 IP cmt.caixa.gov.br.http > 10.10.11.100.3608: FP 4141:4204(63) ack 348 win 65188
    21:04:59.127126 IP 10.10.11.100.3608 > cmt.caixa.gov.br.http: . ack 4205 win 65535
    21:04:59.150437 IP 10.10.11.100.3608 > cmt.caixa.gov.br.http: F 348:348(0) ack 4205 win 65535
    21:04:59.210057 IP cmt.caixa.gov.br.http > 10.10.11.100.3608: . ack 349 win 65188

    isso eu já tirei a linha que redireciona a porta 80 para a porta do squid e mesmo assim ele não conecta alguem teria alguma dica para mim?
    agradeço qualquer ajuda!

  2. #2

  3. #3
    Assessoria a provedores Avatar de paulojrandrade
    Ingresso
    Apr 2006
    Localização
    Dourados, Brazil
    Posts
    291
    Posts de Blog
    1

    Padrão Re: squid iptables cmt.caixa.gov.br

    Amigo tive o memso problema aqui em minha rede, mas naum é apenas uma regrade firewall q ira resolver pra vc... alem da regra naum podes cachear no squid, e vc deve ter apenas o Virtual Machine da Microsoft e naum o Java da Sun. Aqui para mim deu certo...

    $IPT -t nat -I PREROUTING -p tcp -d 200.201.0.0/16 -j ACCEPT
    $IPT -t nat -I PREROUTING -p tcp -d 200.223.0.0 -j ACCEPT
    $IPT -I FORWARD -p tcp -d 200.201.0.0/16 -j ACCEPT
    $IPT -I FORWARD -p tcp -d 200.223.0.0 -j ACCEPT

    no Squid

    acl cscaixa url_regex "/etc/squid/cscaixa"
    no_cache deny cscaixa
    always_direct allow cscaixa

    e pronto heheh Boa sorte

  4. #4

    Padrão Re: squid iptables cmt.caixa.gov.br

    Ai amigo adiciona essas regras no seu firewall, antes da regra que redireciona pro squid

    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.166.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.166.0/24 --dport 80 -j ACCEPT

    Lembrando que 10.10.11.0/24 seja sua rede local ai, se não for muda

  5. #5

    Padrão Re: squid iptables cmt.caixa.gov.br

    São muitas soluções e muitas já testadadas, não sei se corretamente se foi colocado na ordem certa, irei testar todas com calma para ver qual delas vai resolvar meu problema e pedirei a ajuda de vcs para organizar minha regras

  6. #6

    Padrão Re: squid iptables cmt.caixa.gov.br

    Citação Postado originalmente por cleciorodrigo
    Ai amigo adiciona essas regras no seu firewall, antes da regra que redireciona pro squid

    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.166.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.166.0/24 --dport 80 -j ACCEPT

    Lembrando que 10.10.11.0/24 seja sua rede local ai, se não for muda
    vou colocar essa regra antes do redirecionamento para a porta do squid 3128 e depois do redirecionamento eu ainda preciso excluir ela da regra?
    ex:

    # iptables -t nat -A PREROUTING -d ! 200.201.174.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128

    e com isso eu ainda preciso fazer as regras de no_cache como sita o amogo:
    Citação Postado originalmente por paulojrandrade
    Amigo tive o memso problema aqui em minha rede, mas naum é apenas uma regrade firewall q ira resolver pra vc... alem da regra naum podes cachear no squid, e vc deve ter apenas o Virtual Machine da Microsoft e naum o Java da Sun. Aqui para mim deu certo...

    $IPT -t nat -I PREROUTING -p tcp -d 200.201.0.0/16 -j ACCEPT
    $IPT -t nat -I PREROUTING -p tcp -d 200.223.0.0 -j ACCEPT
    $IPT -I FORWARD -p tcp -d 200.201.0.0/16 -j ACCEPT
    $IPT -I FORWARD -p tcp -d 200.223.0.0 -j ACCEPT

    no Squid

    acl cscaixa url_regex "/etc/squid/cscaixa"
    no_cache deny cscaixa
    always_direct allow cscaixa

    e pronto heheh Boa sorte
    estou confuso na organização dessas regras e meu problema pode ser isso organizar para não aver conflitos de regras, vcs podem me ajudar?


  7. #7

    Padrão Re: squid iptables cmt.caixa.gov.br

    Segue ai um pequeno exemplo de script de firewall, pra vc estudar

    #!/bin/bash

    #### Ativa o roteamento
    echo "1" > /proc/sys/net/ipv4/ip_forward

    #### Limpa as regras
    iptables -F
    iptables -X
    iptables -F -t nat
    iptables -X -t nat

    #### Libera a interface de lo
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A OUTPUT -o lo -j ACCEPT

    #### Libera o forward e estabiliza a conexão
    iptables -A FORWARD -s 10.10.11.0/24 -d 0/0 -j ACCEPT
    iptables -A FORWARD -s 0/0 -d 10.10.11.0/24 -mstate --state ESTABLISHED,RELATED -j ACCEPT

    #### Mascara a conexao
    iptables -t nat -A POSTROUTING -s 10.10.11.0/24 -d 0/0 -j MASQUERADE

    #### Conectivadade Social
    #
    # Aceita todas as conexões da sua rede local que tenham como destino os IPs da caixa
    #

    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.166.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.166.0/24 --dport 80 -j ACCEPT

    #### Proxy Transparente - Redireciona todo o trafego da porta 80 pra porta do squid
    #
    # Redireciona o trafego da rede local pra porta que seu squid escuta no caso a 3128
    #

    iptables -t nat -A PREROUTING -s 10.10.11.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128


    #### Ativa os modulos do Kernel
    modprobe ip_conntrack
    modprobe ip_conntrack_ftp
    modprobe ip_nat_ftp
    modprobe ip_queue
    modprobe ip_tables
    modprobe ipt_LOG
    modprobe ipt_MARK
    modprobe ipt_MASQUERADE
    modprobe ipt_REDIRECT
    modprobe ipt_REJECT
    modprobe ipt_TCPMSS
    modprobe ipt_TOS
    modprobe ipt_limit
    modprobe ipt_mac
    modprobe ipt_mark
    modprobe ipt_multiport
    modprobe ipt_owner
    modprobe ipt_state
    modprobe ipt_tcpmss
    modprobe ipt_tos
    modprobe iptable_filter
    modprobe iptable_mangle
    modprobe iptable_nat

    Neste script acima ele faz o seguinte ele aceita as conexões na porta 80 que tenham como destino os IPs da caixa, assim sendo o trafego destina a caixa não eh redireciona pelo proxy (squid) por este motivo as regras do conectividade social ficam antes da regra que redireciona pro squid.

    Dessa forma vc não precisa alterar nada em seu squid pra usar o conectividade, ja que o trafego não passara por ele.

    O squid não aceita a criptografia usada pelo conectivadade.

    Falow

    Clecio

  8. #8

    Padrão Re: squid iptables cmt.caixa.gov.br

    Citação Postado originalmente por cleciorodrigo
    Segue ai um pequeno exemplo de script de firewall, pra vc estudar

    Neste script acima ele faz o seguinte ele aceita as conexões na porta 80 que tenham como destino os IPs da caixa, assim sendo o trafego destina a caixa não eh redireciona pelo proxy (squid) por este motivo as regras do conectividade social ficam antes da regra que redireciona pro squid.

    Dessa forma vc não precisa alterar nada em seu squid pra usar o conectividade, ja que o trafego não passara por ele.

    O squid não aceita a criptografia usada pelo conectivadade.

    Falow

    Clecio
    Ei amigo estou precisando de sua ajuda eu não consegui inserir seu script junto ao meu estou enviando o script para vc analizar onde estou erando ou ate mesmo se assim não vai dar certo nesse formato que vou te passar o site da caixa ele não consegue nem acessar.
    veja o q vc pode fazer por mim

    #/bin/bash
    #Script de Firewall para bloqueio por MACaddress
    #Criado por Carlos Eduardo Langoni
    #23/01/2003
    #
    # Funcionamento: Crie um arquivo no formato (a,b);(mac);(IP Source);(nome)
    # Aonde a é aceitar e b é bloquear que serve para o caso de haver necessidade de bloquear algum IP e MAC, caso b não será blo
    # queado o IP, apenas o MAC
    #
    IPT=/usr/local/sbin/iptables
    PROGRAMA=/bin/firewall
    NET_IFACE=eth1
    LAN_IFACE=eth0
    MACLIST=/etc/init.d/maclist
    echo 1 > /proc/sys/net/ipv4/ip_forward
    case $1 in
    start)
    iptables -F
    iptables -t nat -F
    iptables -t filter -P FORWARD DROP
    for i in `cat $MACLIST`; do
    STATUS=`echo $i | cut -d ';' -f 1`
    IPSOURCE=`echo $i | cut -d ';' -f 3`
    MACSOURCE=`echo $i | cut -d ';' -f 2`
    #Se status = a então eu libera a conexao
    if [ $STATUS = "a" ]; then
    iptables -t filter -A FORWARD -d 0/0 -s $IPSOURCE -m mac --mac-source $MACSOURCE -j ACCEPT
    iptables -t filter -A FORWARD -d $IPSOURCE -s 0/0 -j ACCEPT
    iptables -t nat -A POSTROUTING -s $IPSOURCE -o $NET_IFACE -j MASQUERADE
    iptables -t filter -A INPUT -s $IPSOURCE -d 0/0 -m mac --mac-source $MACSOURCE -j ACCEPT
    iptables -t filter -A OUTPUT -s $IPSOURCE -d 0/0 -j ACCEPT

    # Se for = b então bloqueia o MAC
    else
    iptables -t filter -A FORWARD -m mac --mac-source $MACSOURCE -j DROP
    iptables -t filter -A INPUT -m mac --mac-source $MACSOURCE -j DROP
    iptables -t filter -A OUTPUT -m mac --mac-source $MACSOURCE -j DROP
    fi
    done
    iptables -t nat -A POSTROUTING -s 172.1.1.0/255.255.255.0 -j MASQUERADE
    iptables -t filter -A FORWARD -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
    iptables -t filter -A FORWARD -d 172.1.1.0/255.255.255.0 -s 0/0 -j ACCEPT
    iptables -t filter -A INPUT -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
    iptables -t filter -A OUTPUT -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
    #iptables -t nat -A PREROUTING -p tcp -s 0/0 -i eth0 --dport 80 -j DNAT --to 200.165.48.122:3128

    #### Libera a interface de lo
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A OUTPUT -o lo -j ACCEPT

    #### Libera o forward e estabiliza a conexão
    iptables -A FORWARD -s 10.10.11.0/24 -d 0/0 -j ACCEPT
    iptables -A FORWARD -s 0/0 -d 10.10.11.0/24 -mstate --state ESTABLISHED,RELATED -j ACCEPT

    #### Conectivadade Social
    #
    # Aceita todas as conexões da sua rede local que tenham como destino os IPs da caixa
    #

    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s 10.10.11.0/24 -d 200.201.166.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s 10.10.11.0/24 -d 200.201.166.0/24 --dport 80 -j ACCEPT

    # PROXY TRANSPARENTE #
    iptables -t nat -A PREROUTING -i eth0 -p tcp -s 0/0 --dport 80 -j REDIRECT --to 3128
    iptables -t nat -A PREROUTING -i eth0 -p udp -s 0/0 --dport 80 -j REDIRECT --to 3128

    echo "FIREWALL ATIVADO SISTEMA PREPARADO"
    ;;
    stop)
    iptables -F
    iptables -Z
    iptables -t nat -F
    iptables -t filter -P FORWARD ACCEPT
    echo "FIREWALL DESCARREGADO SISTEMA LIBERADO"
    ;;
    restart)
    $PROGRAMA stop
    $PROGRAMA start
    ;;
    esac

  9. #9

    Padrão Re: squid iptables cmt.caixa.gov.br

    Meu amigo dei uma alterada no seu Scrit de firewall mais nao tive tempo de testar segue ele ai

    #/bin/bash
    #Script de Firewall para bloqueio por MACaddress
    #Criado por Carlos Eduardo Langoni
    #23/01/2003
    #
    # Funcionamento: Crie um arquivo no formato (a,b);(mac);(IP Source);(nome)
    # Aonde a é aceitar e b é bloquear que serve para o caso de haver necessidade de bloquear algum IP e MAC, caso b não será blo
    # queado o IP, apenas o MAC
    #


    IPT=/usr/local/sbin/iptables
    PROGRAMA=/bin/firewall
    NET_IFACE=eth1
    LAN_IFACE=eth0
    MACLIST=/etc/init.d/maclist

    echo 1 > /proc/sys/net/ipv4/ip_forward

    case $1 in

    start)

    iptables -F
    iptables -t nat -F
    iptables -t filter -P FORWARD DROP

    for i in `cat $MACLIST`; do

    STATUS=`echo $i | cut -d ';' -f 1`
    IPSOURCE=`echo $i | cut -d ';' -f 3`
    MACSOURCE=`echo $i | cut -d ';' -f 2`

    #### Se status = a então eu libera a conexao

    if [ $STATUS = "a" ]; then

    iptables -t filter -A FORWARD -d 0/0 -s $IPSOURCE -m mac --mac-source $MACSOURCE -j ACCEPT
    iptables -t filter -A FORWARD -d $IPSOURCE -s 0/0 -j ACCEPT

    iptables -t nat -A POSTROUTING -s $IPSOURCE -o $NET_IFACE -j MASQUERADE
    iptables -t filter -A INPUT -s $IPSOURCE -d 0/0 -m mac --mac-source $MACSOURCE -j ACCEPT
    iptables -t filter -A OUTPUT -s $IPSOURCE -d 0/0 -j ACCEPT

    #### Conectividade Social

    iptables -A INPUT -p tcp -s $IPSOURCE -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s $IPSOURCE -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp -s $IPSOURCE -d 200.201.166.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s $IPSOURCE -d 200.201.173.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s $IPSOURCE -d 200.201.174.0/24 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -s $IPSOURCE -d 200.201.166.0/24 --dport 80 -j ACCEPT

    #### Redireciona pro Squid

    iptables -t nat -A -A PREROUTING -s $IPSOURCE -p tcp --dport 80 -j REDIRECT --to-port 3128

    # Se for = b então bloqueia o MAC

    else

    iptables -t filter -A FORWARD -m mac --mac-source $MACSOURCE -j DROP
    iptables -t filter -A INPUT -m mac --mac-source $MACSOURCE -j DROP
    iptables -t filter -A OUTPUT -m mac --mac-source $MACSOURCE -j DROP

    fi
    done


    echo "FIREWALL ATIVADO SISTEMA PREPARADO"

    ;;

    stop)

    iptables -F
    iptables -Z
    iptables -t nat -F
    iptables -t filter -P FORWARD ACCEPT
    echo "FIREWALL DESCARREGADO SISTEMA LIBERADO"

    ;;

    restart)

    $PROGRAMA stop
    $PROGRAMA start

    ;;

    esac

    Agora seguinte não intendi bem o pq desse conjunto de regras, a não ser que vc tenha outra range de IP onde não faça controle de mac por IP

    iptables -t nat -A POSTROUTING -s 172.1.1.0/255.255.255.0 -j MASQUERADE
    iptables -t filter -A FORWARD -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
    iptables -t filter -A FORWARD -d 172.1.1.0/255.255.255.0 -s 0/0 -j ACCEPT
    iptables -t filter -A INPUT -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
    iptables -t filter -A OUTPUT -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
    #iptables -t nat -A PREROUTING -p tcp -s 0/0 -i eth0 --dport 80 -j DNAT --to 200.165.48.122:3128

    Falow

    Clecio

  10. #10

    Padrão Re: squid iptables cmt.caixa.gov.br

    Ei grande fiz o teste com o script de inicio deu um erro devido a:

    Citação Postado originalmente por cleciorodrigo
    Meu amigo dei uma alterada no seu Scrit de firewall mais nao tive tempo de testar segue ele ai

    #### Redireciona pro Squid

    iptables -t nat -A -A PREROUTING -s $IPSOURCE -p tcp --dport 80 -j REDIRECT --to-port 3128
    mas ate ai tudo bem depois de retirado isso ele levantou legal, mas não sei por qual motivo ele entra em todas as paginas menos a ca caixa "www.caixa.gov.br" e o que é mais interesante é que se antes de levantar a regra eu já estiver com a pagina aberta e logo em seguida for navegar o site surfa maravilha mas não entra na pagina principal.
    Alterei a regra:
    DE
    #iptables -A INPUT -p tcp -s $IPSOURCE -d 200.201.166.0/24 --dport 80 -j ACCEPT
    #iptables -t nat -A PREROUTING -p tcp -s $IPSOURCE -d 200.201.173.0/24 --dport 80 -j ACCEPT
    PARA
    #iptables -A INPUT -p tcp -s $IPSOURCE -d caixa.gov.br --dport 80 -j ACCEPT
    #iptables -t nat -A PREROUTING -p tcp -s $IPSOURCE -d caixa.gov.br --dport 80 -j ACCEPT

    E mesmo assim continua com o mesmo problema
    VC TEM ALGUMA IDEIA PARA ME AJUDAR?