+ Responder ao Tópico



  1. #1
    buribai
    Visitante

    Padrão Regras para NAT

    Olá comunidade ...
    ____________________________________________________

    Problema resumido :

    tô com um programa que usa as portas 21 e 24001. Ele passou a não funciona via proxy ... entaum via regras de iptables (NAT) queria fazer ele funcionar como se estivesse conectado a internet direto pelo modem.

    Como faço isso ???

    Informações :

    Maquina interna : 192.168.1.3
    Servidor proxy + firewall: ETH0 : 192.168.1.2
    ETH1 : 172.21.0.100
    Modem: 172.21.0.1

    _____________________________________________________

    Problema todo explicado :

    Estou com o seguinte problema ... instalei um proxy (squid) + firewall (iptables) em um cliente e um programa que ele usa parou de funfar.
    É um programa da Secretaria da Fazenda chamado DPI (Declaração Periodica de informações) que transmite uma porrada de informações para a secretaria, ele mesmo gera o arquivo e transmite via ftp.
    Ele está instalado em uma maquina da rede local IP:192.168.1.3.
    Qdo eu conecto essa maquina direto pelo modem ... ele transmite o arquivo sem problemas. Só que pelo proxy ele não vai de maneira alguma.

    Liguei no suporte de lá, e ninguem sabe nem o que é linux e que era impossivel do programa funcionar nesse sistema operacional (linux, como se ninguem usasse né ... um absurdo isso!!! :@: ) e que a unica maneira era uma conexão direta ou uma conexão discada.... mas me dissera que esse programa usa as portas 21 (FTP) e a 24001.

    Será que tem jeito via NAT ???? Como faço pra fazer ele funcionar ???

  2. #2

    Padrão Regras para NAT

    Cara, não tem erro. As aplicações da caixa funcionam com NAT, o problema é que você tem que abrir acesso FORWARD para a máquina destino na rede interna na porta desejada.

    EX:

    iptables -A FORWARD -s 0/0 -d 192.168.1.3 -p tcp --dport 24001 -j ACCEPT.

    Isso já deve dar certo. Se não funcionar, o problema é permitir conexão na máquina destino e isso abre brecha no firewall né.

    mas aí vai :

    iptables -I FORWARD -s 0/0 -d 192.168.1.3 -p tcp --dport 24001 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

    Eu acho isso extremamente arriscado, aliás é suicídio, mas vale saber se é isso.

  3. #3
    buribai
    Visitante

    Padrão Regras para NAT

    Opâ amigo. valeu pela força ... mas não vai ser isso não.

    Na verdade, as politicas para INPUT, FORWARD E OUTPUT estão todas ACCEPT.

    Eu tenho que fazer nat de ida e volta para estas duas portas. Em outras palavras, pra esse programa funcionar, ele tem que achar que não está passando por proxy algum ... tem que ser totalmente transparente pra ele, como se estivesse conectado direto ao modem.

    Me AJUDEM pessoal ...

    Desde já muito obrigado ...

  4. #4

    Padrão Regras para NAT

    Buribai

    se você fizer um MASQUERADE para estas portas, o teu programa nem vai saber da existência do proxy, aliás, ele não vai passar pelo proxy.

    Código :
    iptables -t nat -A POSTROUTING -s fx_ip_rede_interna -p tcp -m multiport --dport 21,24001 -j MASQUERADE

    Já que você deixou suas regras padrões como ACCEPT.

    Você não precisa liberar a volta.

    Para você saber mais...
    http://focalinux.cipsga.org.br/

  5. #5
    buribai
    Visitante

    Padrão Regras para NAT

    Olá parceiro ... não deu certo não !!!

    Agora estou tentando em outro cliente que tem o firewall com politicas DROP !!!!

    Como faço pra liberar a volta ????

    Grato

  6. #6

    Padrão Regras para NAT

    [quote="edmafer"]
    Código :
    iptables -t nat -A POSTROUTING -s fx_ip_rede_interna -p tcp -m multiport --dport 21,24001 -j MASQUERADE

    Liberamos a ida, e agora a volta:
    Código :
    iptables -t nat -A PREROUTING -d fx_ip_rede_interna -p tcp -m multiport --sport 21,24001 -j MASQUERADE
    iptables -A FORWARD -d fx_ip_rede_interna -p tcp -m multiport --sport 21,24001 -j MASQUERADE

    O prerouting é necessário se as regras padrões da tabela NAT também forem DROP

    Cara dá uma lida no: http://focalinux.cipsga.org.br/ que lá você encontrará muita coisa que você precisa.

    RFTM
    SFTW

  7. #7
    buribai
    Visitante

    Padrão Regras para NAT

    É amigo ...


    realmente ainda o programa não funciona !!! Continua não transmitindo o arquivo ...

    se alguem puder me ajudar ... ficarei muito agradecido ...


    Abraços

  8. #8

    Padrão Regras para NAT

    Qual é o erro? Certeza que é somente estas portas?

  9. #9
    buribai
    Visitante

    Padrão Regras para NAT

    Amigo,

    é certeza que é somente as duas ....

    ele conecta no servidor ftp do SEFAZ tranquilamente ... mas não transfere o arquivo !!!!!

    Fiquei sabendo que tenho que ativar três modulos :

    modprobe ip_nat_ftp
    modprobe ip_conntrack
    modprobe ip_conntrack_ftp

    Qdo eu dô esse comando acontece o seguinte :

    :/# modprobe ip_nat_ftp
    FATAL: Module ip_nat_ftp not found.

    Estou usando o kernel 2.6.14. Como faço pra ativar esses modulos ???

    Já procurei no kernel e não achei (make menuconfig), mas qdo dou um:

    # find / -name ip_nat_ftp*
    /usr/src/linux-2.6.14/net/ipv4/netfilter/ip_nat_ftp.c

    ele acha nesse endereço ????

    Como faço mesmo pra ativar isso ???? Eu ativo atraves do make menuconfig ou tem que ser manualmente mesmo ?????


    Grato

  10. #10

    Padrão Regras para NAT

    Bem, se você vai recompilar o kernel, dá uma olhada neste artigo:
    http://www.vivaolinux.com.br/artigos...=3938&pagina=1

    Ele explica as opções do menuconfig.

    Há, e não deixe como módulo compile junto, ai você não precisa se preocupar em ficar carregando.

  11. #11
    buribai
    Visitante

    Padrão Regras para NAT

    Opâ !!! Blz ... deu certo !!!