+ Responder ao Tópico



  1. #1

    Padrão Squid + Outlook

    Olá pessoal,

    Estou com um problema que parace ser comum mas não to conseguindo resolver com o material que estou achando. Na minha rede eu uso proxy configurado no IE (não transparente). Tentei com as seguintes regras de iptablesestou testando primeiro na maquina 192.168.1.100).

    IP=192.168.1.100
    EXTERNAL=ppp0
    iptables -I POSTROUTING -j MASQUERADE -t nat -s $IP -p tcp -d 200.204.0.10 --dport 25 -o $EXTERNAL
    iptables -I POSTROUTING -j MASQUERADE -t nat -s $IP -p tcp -d 200.204.0.10 --dport 110 -o $EXTERNAL
    iptables -I POSTROUTING -j MASQUERADE -t nat -s $IP -p tcp -d 200.204.0.10 --dport 53 -o $EXTERNAL


    Configurei o mail do terra no outlook, ele conecta, me fala que tem 6 msg novas, baixa a primeira e da timeout na segunda. Cpois da erro de porta 110.

    Alguem pode me ajudar?
    agradeço desde já.

    Estou usando:
    Debian3.1
    Squid 2.5
    Windows 2003
    Outlook Express

  2. #2

    Padrão

    Você precisar fazer dessa máquina específica para o ip do terra?
    Ou da sua rede para qualquer outro e-mail que use pop3 e smtp?

    Eu estava verificando aqui os endereços dos servidores de e-mail do terra e eles são o seguite:

    pop.terra.com.br = (200.154.55.5)
    smtp.terra.com.br = (200.154.55.3)

    Você pode adaptar a regra para os hosts acima, tente sempre usar o nome e não o ip direto, pode ser que eles mudem e sua regra pare de funcionar.

    Aqui na rede eu uso essa regra e funciona corretamente.

    Uma regra geral:
    iptables -t nat -A POSTROUTING -o $EXTERNAL -m multiport -p tcp --dports 25,53,110 -j MASQUERADE

    Uma regra específica:
    ### POP
    iptables -t nat -A POSTROUTING -s $IP -d pop.terra.com.br -o $EXTERNAL -p tcp --dport 110 -j MASQUERADE
    ### SMTP
    iptables -t nat -A POSTROUTING -s $IP -d smtp.terra.com.br -o $EXTERNAL -p tcp --dport 25 -j MASQUERADE

    Veja o que melhor se adapta a sua implementação aí.

    Abraço

  3. #3

    Padrão as regras

    olá amigo

    eu testei com esta regra mas ele deu erro no multiport. Atualmente eu estou com outras regras que estão fazendo o seguinte:

    O outlook conecta, verifica a quantidade de mensagens numa boa. Ai quando ele vai baixar trava na primeira ou na segunda e da erro na porta (110). No caso do gmail que utiliza a porta 995 funciona perfeitemente.

    Minhas regras atuais:

    iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT


    iptables -A FORWARD -p UDP -s $IP --dport 53 -j ACCEPT
    iptables -A FORWARD -p tcp -s $IP --dport 110 -j ACCEPT
    iptables -A FORWARD -p tcp -s $IP --dport 995 -j ACCEPT
    iptables -A FORWARD -p tcp -s $IP --dport 25 -j ACCEPT
    iptables -A FORWARD -p tcp -s $IP --dport 143 -j ACCEPT
    iptables -t nat -A POSTROUTING -p UDP -s $IP --dport 53 -j MASQUERADE -o ppp0
    iptables -t nat -A POSTROUTING -p tcp -s $IP --dport 110 -j MASQUERADE -o ppp0
    iptables -t nat -A POSTROUTING -p tcp -s $IP --dport 995 -j MASQUERADE -o ppp0
    iptables -t nat -A POSTROUTING -p tcp -s $IP --dport 25 -j MASQUERADE -o ppp0
    iptables -t nat -A POSTROUTING -p tcp -s $IP --dport 143 -j MASQUERADE -o ppp0

  4. #4

    Padrão

    Citação Postado originalmente por netuno Ver Post
    eu testei com esta regra mas ele deu erro no multiport.
    Netuno, qual a versão do iptables que você está usando?
    Não poderia dar o erro, mas você pode desmembrar a regra em três, mas é o que você já está fazendo.

    Faça um teste com esse script que estou mandando abaixo:

    #!/bin/sh
    #Carrega módulos de connection tracking
    /sbin/modprobe ip_conntrack
    /sbin/modprobe ip_conntrack_ftp
    /sbin/modprobe ip_conntrack_irc
    /sbin/modprobe ip_nat_ftp

    #Define políticas de acesso padrão
    /sbin/iptables -P INPUT DROP
    /sbin/iptables -P FORWARD DROP
    /sbin/iptables -P OUTPUT ACCEPT

    #Limpa regras e cadeias de usuário prévias
    /sbin/iptables -X
    /sbin/iptables -F
    /sbin/iptables -t nat -F

    #Habilita repasse de pacotes
    echo 1 > /proc/sys/net/ipv4/ip_forward

    ### Define variáveis
    #####################

    ## Interface externa
    EXT_IF=ppp0

    ## IP
    IP=192.168.1.100

    ## Interface Interna
    INT_IF=eth0 ### SUPONDO QUE SUA INTERFACE INTERNA SEJA ETH0

    ### Habilita comunicação interna entre processos locais
    /sbin/iptables -A INPUT -i lo -j ACCEPT

    ### Habilita acesso pela rede interna a esse host
    /sbin/iptables -A INPUT -i $INT_IF -j ACCEPT
    /sbin/iptables -A FORWARD -i $INT_IF -j ACCEPT

    ### Habilita DNS
    /sbin/iptables -A INPUT -p udp --dport 53 -j ACCEPT
    /sbin/iptables -A INPUT -p udp --sport 53 -j ACCEPT

    ### Habilita SSH
    /sbin/iptables -A INPUT -i $EXT_IF -m tcp -p tcp --dport 22 -j ACCEPT

    ### Habilita todas a conexões previamente aceitas (estados Estabelicida e Relacionada)
    /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    /sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

    ### Liberar acesso externo às portas de Mail(25), Pop-3(110), Dns(53(tcp e udp)), Https(443), Gmail(465,955), RECEITANET(3456), CONECTIVIDADE SOCIAL (2631) TERMINAL SERVER (3389)
    /sbin/iptables -t nat -A POSTROUTING -s $IP -o $EXT_IF -m multiport -p tcp --dports 20,21,22,25,53,110,443,465,995,2083,2631,3456,3389 -j MASQUERADE
    /sbin/iptables -t nat -A POSTROUTING -s $IP -o $EXT_IF -m multiport -p udp --dports 20,21,53,443 -j MASQUERADE

    Crie um novo arquivo, dê permissão de execução e rode ele.
    Faça o teste, se você quiser listar o MASQUERADE:
    iptables -L -t nat
    Confira as postas que estão sendo "mascaradas".

    Qualquer coisa grita.

    Abraço,

  5. #5

    Padrão

    Olá Cristian,

    Muito obrigado pela ajuda mas de fato minha porta 110 ja estava mascarada. Consegui resolver da seguinte forma.

    Verificamos aqui que o tamanho máximo de pacotes estava limitado para ppp0, e a interface que comunica com o modem (eth0) não estava limitado a 1400. Fazendo a limitação tb em eth0 o problema foi resolvido. Agradeço sua juda.VALEWS!!!!

  6. #6

    Padrão

    A legal... Mas que tipo de limitação é essa que você tava fazendo?
    Tipo um controle de banda? CBQ ou algo parecido?

    Abraços