+ Responder ao Tópico



  1. #1

    Padrão Como fazer Nat para algumas portas

    Boa tarde,.

    Qual o comando para habilitar o NAT somente para as portas 25 e 110?

    o comando iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE libera tudo tô certo?

    Agradeço desde já,


    Douglas Santos :toim:

  2. #2

    Padrão Como fazer Nat para algumas portas

    o comando iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE libera tudo tô certo?
    Correto, para fazer o mascaramento somente de algumas portas, faça assim
    Código :
    iptables -t nat -A POSTROUTING -p tcp -s $REDE --dport 25 -j MASQUERADE
    iptables -t nat -A POSTROUTING -p tcp -s $REDE --dport 110 -j MASQUERADE
    Lembrando que tem que fazer da udp para 53 (dns), caso não tenha squid rodando, faça tcp para 80 (www) e tcp para 443 (https).

    Caso queira liberar somente para um servidor no caso o smtp e pop e dns, basta usar a flag -d, exemplo :
    Código :
    iptables -t nat -A POSTROUTING -p tcp -s $REDE -d 200.XXX.XXX.XXX --dport 25 -j MASQUERADE

    Seria bom, liberar também o icmp, faça assim :

    Código :
    iptables -t nat -A POSTROUTING -p icmp -s $REDE -j MASQUERADE

    PS: $REDE é a sua rede interna



  3. #3
    felco
    Visitante

    Padrão Como fazer Nat para algumas portas

    Eh esse o comando se vc quiser definir portas use -p tcp --dport

  4. #4

    Padrão Como fazer Nat para algumas portas

    Citação Postado originalmente por luizhumberto
    o comando iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE libera tudo tô certo?
    Correto, para fazer o mascaramento somente de algumas portas, faça assim
    Código :
    iptables -t nat -A POSTROUTING -p tcp -s $REDE --dport 25 -j MASQUERADE
    iptables -t nat -A POSTROUTING -p tcp -s $REDE --dport 110 -j MASQUERADE
    Lembrando que tem que fazer da udp para 53 (dns), caso não tenha squid rodando, faça tcp para 80 (www) e tcp para 443 (https).

    Caso queira liberar somente para um servidor no caso o smtp e pop e dns, basta usar a flag -d, exemplo :
    Código :
    iptables -t nat -A POSTROUTING -p tcp -s $REDE -d 200.XXX.XXX.XXX --dport 25 -j MASQUERADE

    Seria bom, liberar também o icmp, faça assim :

    Código :
    iptables -t nat -A POSTROUTING -p icmp -s $REDE -j MASQUERADE

    PS: $REDE é a sua rede interna

    Mas devo deixar iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE??



  5. #5

    Padrão Como fazer Nat para algumas portas

    Mas devo deixar iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE??
    Não deve deixar, e sim retirar ela do teu script.

  6. #6

    Padrão iptables

    Bom, sei que vc já resolveu seu problema, mas vai uma recomendação, prefira fazer o bloqueio dos serviços da rede interna no FORWARD da tabela filter é melhor e mais eficiente

    tipo vc pode colocar assim
    deixa o NAT pra rede interna.

    iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

    e controla na FORWARD

    # POLITICA DE DROP PARA FORWARD
    iptables -P FORWARD DROP
    # Liberando a entrada de pacotes para rede interna
    iptables -A FORWARD -s 0/0 -d 192.168.0.0/24 -m state --state RELATED,ESTABLISHED -j ACCEPT
    # Liberando a saida apenas pra alguns serviços
    # POP
    iptables -A FORWARD -s 192.168.0.0/24 -d 0/0 -p tcp --dport 110 -j ACCEPT
    # SMTP
    iptables -A FORWARD -s 192.168.0.0/24 -d 0/0 -p tcp --dport 25 -j ACCEPT
    # CONSULTA DNS
    iptables -A FORWARD -s 192.168.0.0/24 -d 0/0 -p udp --dport 53 -j ACCEPT


    é uma dica, abraços.