+ Responder ao Tópico



  1. #1
    master_foca
    Visitante

    Padrão Proxy Transparente : Nao consigo acessar pop, smtp e nem dar ping

    Olá amigos,
    Estou com o seguinte problema em minha eth0 eu estou usando um dsl cabo(vivax) e eth1 eu distribuo para minha rede local a internet atraver do squid proxy transparente.

    A internet funciona perfeita mente, navega sem nenhum problema. O meu problema é o seguinte eu nao consigo acessar pop, smtp nem mesmo dar um ping tipo ping uol.com.br.

    mcacapava@subzero:~> ping uol.com.br
    ping: unknown host uol.com.br

    Isso só acontece nas minhas estacoes mas se eu entrar na maquina onde esta instalado o squid e der todos os comandos acima funciona perfeiramente.
    As regras do firewall que estou usando estão abaixo com os créditos ao Alexandro Correa(virtualboy):

    #!/bin/bash

    echo
    echo "=========================================="
    echo "| :: SETTING IPTABLES'S CONFIGURATION :: |"
    echo "=========================================="

    ### Passo 1: Limpando as regras ###
    iptables -F INPUT
    iptables -F OUTPUT
    iptables -F FORWARD
    echo "Cleaning all rules .................[ OK ]"

    # Definindo a Politica Default das Cadeias
    iptables -P INPUT DROP
    iptables -P FORWARD DROP
    iptables -P OUTPUT ACCEPT
    echo "Setting default rules ..............[ OK ]"

    ### Passo 2: Desabilitar o trafego IP entre as placas de rede ###
    echo "0" > /proc/sys/net/ipv4/ip_forward
    echo "Setting ip_forward: OFF ............[ OK ]"

    # Configurando a Protecao anti-spoofing
    for spoofing in /proc/sys/net/ipv4/conf/*/rp_filter; do
    echo "1" > $spoofing
    done
    echo "Setting anti-spoofing protection ...[ OK ]"

    # Impedimos que um atacante possa maliciosamente alterar alguma rota
    echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects
    echo "Setting anti-redirects .............[ OK ]"

    # Utilizado em diversos ataques, isso possibilita que o atacante determine o "caminho" que seu
    # pacote vai percorrer (roteadores) ate seu destino. Junto com spoof, isso se torna muito perigoso.
    echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
    echo "Setting anti-source_route ..........[ OK ]"

    # Protecao contra responses bogus
    echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
    echo "Setting anti-bugus_response ........[ OK ]"

    # Protecao contra ataques de syn flood (inicio da conexao TCP). Tenta conter ataques de DoS.
    echo 1 > /proc/sys/net/ipv4/tcp_syncookies
    echo "Setting anti-synflood protection ...[ OK ]"

    ### Passo 3: Carregando os modulos do iptables ###
    modprobe ip_tables
    modprobe iptable_filter
    modprobe iptable_mangle
    modprobe iptable_nat
    modprobe ipt_MASQUERADE
    echo "Loading iptables's modules .........[ OK ]"

    ### Passo 4: Agora, vamos definir o que pode passar e o que nao ###
    ####################
    # Cadeia de Entrada

    # LOCALHOST - ACEITA TODOS OS PACOTES
    iptables -A INPUT -i lo -j ACCEPT

    # PORTA 80 - ACEITA PARA A REDE LOCAL
    iptables -A INPUT -i eth1 -p tcp --dport 80 -j ACCEPT

    # PORTA 22 - ACEITA PARA A REDE LOCAL
    iptables -A INPUT -i eth1 -p tcp --dport 22 -j ACCEPT

    # No iptables, temos de dizer quais sockets sao validos em uma conexao
    iptables -A INPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
    echo "Setting rules for INPUT ............[ OK ]"

    ################################
    # Cadeia de Reenvio (FORWARD).

    # Primeiro, ativar o mascaramento (nat).
    iptables -t nat -F POSTROUTING
    iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    echo "Activating IP Mask .................[ OK ]"

    # Agora dizemos quem e o que podem acessar externamente
    # No iptables, o controle do acesso a rede externa e feito na cadeia "FORWARD"

    # COMPUTADOR DO CHEFE - ACEITA TODOS OS PACOTES
    #iptables -A FORWARD -s 192.168.0.43 -j ACCEPT

    # PORTA 3128 - ACEITA PARA A REDE LOCAL
    iptables -A FORWARD -i eth1 -p tcp --dport 3128 -j ACCEPT

    # Redireciona porta 80 para 3128 (squid)
    iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128

    # PORTA 53 - ACEITA PARA A REDE LOCAL
    iptables -A FORWARD -i eth1 -p udp --dport 53 -j ACCEPT

    # PORTA 110 - ACEITA PARA A REDE LOCAL
    iptables -A FORWARD -i eth1 -p tcp --dport 110 -j ACCEPT

    # PORTA 25 - ACEITA PARA A REDE LOCAL
    iptables -A FORWARD -i eth1 -p tcp --dport 25 -j ACCEPT

    # PORTA 443 - ACEITA PARA A REDE LOCAL
    iptables -A FORWARD -i eth1 -p tcp --dport 443 -j ACCEPT

    # PORTA 21 - ACEITA PARA A REDE LOCAL
    iptables -A FORWARD -i eth1 -p tcp --dport 21 -j ACCEPT

    # No iptables, temos de dizer quais sockets sao validos em uma conexao
    iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
    echo "Setting rules for FORWARD ..........[ OK ]"

    # Finalmente: Habilitando o trafego IP, entre as Interfaces de rede
    echo "1" > /proc/sys/net/ipv4/ip_forward
    echo "Setting ip_forward: ON .............[ OK ]"
    echo "Finished!! Firewall: OK! ...........[ OK ]"
    echo "=========================================="
    echo

    Abraços !

  2. #2

    Padrão Re: Proxy Transparente : Nao consigo acessar pop, smtp e nem dar ping

    ?!?! :? ?!?!

    ### Passo 2: Desabilitar o trafego IP entre as placas de rede ###
    echo "0" > /proc/sys/net/ipv4/ip_forward
    echo "Setting ip_forward: OFF ............[ OK ]"

    !?!? :? ?!?!

    Vc deve estar brincando !!!

    mtec

  3. #3
    toniati
    Visitante

    Padrão Re: Proxy Transparente : Nao consigo acessar pop, smtp e nem dar ping

    Sua rede tá navegando por causa do squid....como nosso amigo mtec disse....
    Habilita o roteamento no ip_forward
    e pelo que vi...tbm tem outra coisa....vc habilitou o dns para entra pelan eth1:
    # PORTA 53 - ACEITA PARA A REDE LOCAL
    iptables -A FORWARD -i eth1 -p udp --dport 53 -j ACCEPT
    mas naum garantiu a volta....é melhor vc colocar:
    iptables -A FORWARD -p udp --dport 53 -j ACCEPT

  4. #4
    toniati
    Visitante

    Padrão Re: Proxy Transparente : Nao consigo acessar pop, smtp e nem dar ping

    Complementando....faça isso pra todas a portas de entrada que vc deseja:
    pop...smtp e dns...etc

  5. #5
    sadirj
    Visitante

    Padrão Re: Proxy Transparente : Nao consigo acessar pop, smtp e nem dar ping

    caro amigo,
    ja que voce permitiu o acesso a porta 53 na maquina local, ja verificou se o servico DNS cache ou DNS masquerade (bind ou dnsmasq, depende do que voce instalou) esta rodando? voce esta com problemas de resolucao de nomes, uma vez que a maquina local (firewall/gateway) resolve utilizando os DNSs da conexao (eth0). Verifique se esta rodando, senao nao funciona.

    Nao ha a necessidade de criar regras de retorno de conexao para cada porta uma vez que foi colocada a regra
    iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
    Ela garante o retorno dos pacotes de conexoes estabelecidas (ESTABLISHED) e pacotes relacionados a conexoes estabelecidas mesmo que ja nao estejam mais abertas (RELATED). Apenas remova o "NEW" que voce colocou no final.

    Abracos.

    P.S.: A ausencia de acentuacoes e proposital.

  6. #6

    Padrão Re: Proxy Transparente : Nao consigo acessar pop, smtp e nem dar ping

    Maluco, tu é de Caçapava? Eu sou de Taubaté! Hehehe.

    O grande lance é que SMTP/POP/IMAP/ICMP não são suportados pelo Squid, sendo ele um proxy HTTP apenas. Para liberar estes serviços na sua rede, você tem que liberar o ip_forward como os amigos acima falaram.


    Um abraço!

  7. #7
    felco
    Visitante

    Padrão Re: Proxy Transparente : Nao consigo acessar pop, smtp e nem dar ping

    iptables -A FORWARD -i eth1 -p udp --dport 53 -j ACCEPT
    iptables -A FORWARD -i eth1 -p tcp --dport 110 -j ACCEPT
    iptables -A FORWARD -i eth1 -p tcp --dport 25 -j ACCEPT
    iptables -A FORWARD -i eth1 -p tcp --dport 443 -j ACCEPT
    iptables -A FORWARD -i eth1 -p tcp --dport 21 -j ACCEPT

    Faltou voce fazer a volta dos pacotes, no sentido Internet > Rede, ficaria assim:

    iptables -A FORWARD -i eth0 -p udp --sport 53 -j ACCEPT
    iptables -A FORWARD -i eth0 -p tcp --sport 110 -j ACCEPT

    Coloca essa regra como a primeira para chain FORWARD:
    iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT

    OBS: O state NEW permite que uma conexao seja criada em qualquer porta

  8. #8
    master_foca
    Visitante

    Padrão Re: Proxy Transparente : Nao consigo acessar pop, smtp e nem - Resolvido

    Olá Amigos,

    Gostaria de agradecer a todos pela ajuda em resolver meu problema, por fim consegui seguindo o conselho do amigo sadirj, valeu mesmo !


    Valeu a Todos !