Página 1 de 2 12 ÚltimoÚltimo
+ Responder ao Tópico



  1. #1
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Galera estou com a seguinte configuração:

    Tenho um servidor linux redhat 8.0 o qual tenho configurado iptables e dois endereços ip´s válidos, assim tenho:

    eth0 200.xxx.xxx.107
    eth0:1 200.xxx.xxx.106
    eth1 192.168.0.1

    E todas as minhas máquinas "saem" pelo endereço 107

    O que eu quero é fazer com que uma ou algumas máquinas saiam pelo endereço 106.

    O que preciso configurar para que isso aconteça???

    Obrigado a todos!!!

    []´s

  2. #2
    Futuremax
    Visitante

    Padrão Saida por diferentes rotas

    Depende, se quizer separar por porta use:
    iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 200.xxx.xxx.106
    iptables -t nat -A PREROUTING -p tcp --dport 21 -j DNAT --to 200.xxx.xxx.107

    Se for por ip:
    iptables -t nat -A PREROUTING -p tcp -s IP -j DNAT --to 200.xxx.xxx.106
    iptables -t nat -A PREROUTING -p tcp -s IP -j DNAT --to 200.xxx.xxx.106
    Lembrando que aki vc pode separar por espaços os ips....

  3. #3
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Ok,

    Mas o ip passa a sair somente pelas portas padrão, ex. eu uso uma porta específica para um sistema e do modo atual funciona legal, só que depois que eu faço o lance do ip para de funcionar...

    E agora o que fazer???

  4. #4
    Futuremax
    Visitante

    Padrão Saida por diferentes rotas

    iptables -t nat -A PREROUTING -p tcp -s IP --dport 80 -j DNAT --to 200.xxx.xxx.106:15
    iptables -t nat -A PREROUTING -p tcp -s IP --dport 21 -j DNAT --to 200.xxx.xxx.107:22
    Assim vc troca de portas!
    iptables -t nat -A PREROUTING -p tcp -s IP --dport 21 -j DNAT --to 200.xxx.xxx.106
    iptables -t nat -A PREROUTING -p tcp -s IP --dport 80 -j DNAT --to 200.xxx.xxx.107
    E assim mantem....

  5. #5
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Testei:

    iptables -t nat -A PREROUTING -p tcp -s 192.168.0.103 --dport 2593 -j DNAT --to 200.xxx.xxx.106

    E não funcionou....

    Ele sai pelo endereço porém a regra de porta num fumfa....

  6. #6
    Futuremax
    Visitante

    Padrão Saida por diferentes rotas

    Tenta
    iptables -t nat -A PREROUTING -p tcp -s IP --dport 21 -j DNAT --to 200.xxx.xxx.106:21
    iptables -t nat -A PREROUTING -p tcp -s IP --dport 80 -j DNAT --to 200.xxx.xxx.107:80

  7. #7
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Tbm não funcionou...

    Sempre tive esse problema com o lance das portas, para redirecionamento eu uso o REDIR pq com o iptables nunca funcionou...

  8. #8
    Futuremax
    Visitante

    Padrão Saida por diferentes rotas

    Caracas, não consigo entender, aki funfa!!! <IMG SRC="images/forum/icons/icon_mad.gif"> <IMG SRC="images/forum/icons/icon_mad.gif"> <IMG SRC="images/forum/icons/icon_mad.gif"> <IMG SRC="images/forum/icons/icon_confused.gif">

  9. #9
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Será que não tem que fazer algo antes para que isso funcione???

  10. #10
    Futuremax
    Visitante

    Padrão Saida por diferentes rotas

    Posta ae seu script ou as regras que vc usa pra nois estuda...

  11. #11
    Danilo_Montagna
    Visitante

    Padrão Saida por diferentes rotas

    galera, desculpa.. vamo ve se entendi bem..

    pq vc&acute;s estao tentando usar PREROUTING em uma regra que vai sair pelo firewall.. e nao entrar e ser aplicado NAT em cima dele?

    acredito que o certo é ser na chain FORWARD , onde seria algo assim..

    $IPTABLES -A FORWARD -p tcp -s $INT_NET -i eth1 -o eth0:1 --dport 80 -j ACCEPT

    e assim por diante..

    porem acredito que a rota padrao de saida do firewall tera que ser altera para a eth0:1, usando o iproute2

    mais ainda acho que o qeu vc quer fazer nao vai funcionar, posi como a rota padrao de saida do firewall vai ser sempre a eth0:1, todas as porats sairam por esse gateway,,

    eu nunca testei isso, pra saber se funciona direcionar pra outra rota apenas algumas portas.. porem vc tem essa possibilidade de testar ae.. se funcionar sem alterar a rota padrao do linux.. apenas use a regra acima de forward..

    falow

  12. #12
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    # Generated by iptables-save v1.2.6a on Thu Dec 12 08:36:07 2002
    *nat
    <IMG SRC="images/forum/icons/icon_razz.gif">REROUTING ACCEPT [562:66976]
    <IMG SRC="images/forum/icons/icon_razz.gif">OSTROUTING ACCEPT [20:1462]
    <IMG SRC="images/forum/icons/icon_eek.gif">UTPUT ACCEPT [45:3116]
    -A POSTROUTING -o eth0 -j SNAT --to-source 200.xxx.xxx.107
    -A POSTROUTING -o eth0 -j SNAT --to-source 200.xxx.xxx.106
    COMMIT
    # Completed on Thu Dec 12 08:36:07 2002
    # Generated by iptables-save v1.2.6a on Thu Dec 12 08:36:07 2002
    *filter
    :INPUT DROP [178:30711]
    :FORWARD DROP [28:1750]
    <IMG SRC="images/forum/icons/icon_eek.gif">UTPUT DROP [0:0]
    :allowed - [0:0]
    :bad_tcp_packets - [0:0]
    :icmp_packets - [0:0]
    :tcp_packets - [0:0]
    :udpincoming_packets - [0:0]
    -A INPUT -p tcp -j bad_tcp_packets
    -A INPUT -i eth0 -p icmp -j icmp_packets
    -A INPUT -i eth0 -p tcp -j tcp_packets
    -A INPUT -i eth0 -p udp -j udpincoming_packets
    -A INPUT -d 192.168.255.255 -i eth1 -j ACCEPT
    -A INPUT -s 127.0.0.1 -i lo -j ACCEPT
    -A INPUT -s 192.168.0.1 -i lo -j ACCEPT
    -A INPUT -s 200.xxx.xxx.107 -i lo -j ACCEPT
    -A INPUT -s 200.xxx.xxx.106 -i lo -j ACCEPT
    -A INPUT -s 192.168.0.0/255.255.255.0 -i eth1 -j ACCEPT
    -A INPUT -d 200.xxx.xxx.107 -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -d 200.xxx.xxx.106 -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -m limit --limit 3/min --limit-burst 3 -j DROP
    -A FORWARD -p tcp -j bad_tcp_packets
    -A FORWARD -i eth1 -j ACCEPT
    -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A FORWARD -m limit --limit 3/min --limit-burst 3 -j DROP
    -A OUTPUT -p tcp -j bad_tcp_packets
    -A OUTPUT -s 127.0.0.1 -j ACCEPT
    -A OUTPUT -s 192.168.0.1 -j ACCEPT
    -A OUTPUT -s 200.xxx.xxx.107 -j ACCEPT
    -A OUTPUT -s 200.xxx.xxx.106 -j ACCEPT
    -A OUTPUT -m limit --limit 3/min --limit-burst 3 -j DROP
    -A allowed -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j ACCEPT
    -A allowed -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A allowed -p tcp -j DROP
    -A bad_tcp_packets -p tcp -m state --state NEW -m tcp ! --tcp-flags SYN,RST,ACK SYN -j DROP
    -A bad_tcp_packets -p tcp -m state --state NEW -m tcp ! --tcp-flags SYN,RST,ACK SYN -j DROP
    -A bad_tcp_packets -s 192.168.0.0/255.255.0.0 -i eth0 -j DROP
    -A bad_tcp_packets -s 10.0.0.0/255.0.0.0 -i eth0 -j DROP
    -A bad_tcp_packets -s 172.16.0.0/255.240.0.0 -i eth0 -j DROP
    -A icmp_packets -p icmp -m icmp --icmp-type 8 -j ACCEPT
    -A icmp_packets -p icmp -m icmp --icmp-type 11 -j ACCEPT
    -A tcp_packets -p tcp -m tcp --dport 21 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 22 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 23 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 25 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 80 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 113 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 110 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 3128 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 2593 -j allowed
    -A tcp_packets -p tcp -m tcp --dport 8888 -j allowed
    -A udpincoming_packets -p udp -m udp --sport 2074 -j ACCEPT
    -A udpincoming_packets -p udp -m udp --sport 4000 -j ACCEPT
    COMMIT
    # Completed on Thu Dec 12 08:36:07 2002

  13. #13
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Danilo, o caracter : não eh aceito em eth0:1

  14. #14
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Me refiro à regra de iptables....


  15. #15
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Alguém tem alguma dica???

  16. #16
    Danilo_Montagna
    Visitante

    Padrão Saida por diferentes rotas

    ATNunes

    quando eu coloquei etho:1 no exemplo da regra.. foi apenas pra vc saber que se trata do ip 200.xxx.xxx.106

    altere na regra o eth0:1 para o ip para qual ele pertence..

    falow

  17. #17
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Só pra ter certeza, ficaria assim então:

    iptables -A FORWARD -p tcp -s 192.168.0.103 -i eth1 -o 200.189.79.106 --dport 2593 -j ACCEPT

    Certo???

  18. #18
    Danilo_Montagna
    Visitante

    Padrão Saida por diferentes rotas

    isso ae, proem acho que vc tem que trocar o 192.168.0.103 por algo tipo 192.168.0.0/24, a menos que essa porta so vai ser usada por esse ip..

    lembre-se que isso so vai funcionar se o linux aceitar fazer as rotas para esse ip sem alterar o default gateway do linux.. como eu te falei antes..

    blz?

  19. #19
    ATNunes
    Visitante

    Padrão Saida por diferentes rotas

    Tentei e não funcionou.....

    Será que tem algo que entre em conflito nas minhas regras de iptables???

  20. #20
    Danilo_Montagna
    Visitante

    Padrão Saida por diferentes rotas

    as vezes nao é conflito..

    e sim o esquema de gateway default do linux usado para sair pra fora..

    exemplo, se vc der um

    TRACERT www.uol.com.br

    ele saira pelo default gateway do linux.. que deve ser o 200.xxx.xxx.107
    e como eu ta falei antes.. acho que sem mudar a rota padrao do linux.. a regra nao funciona.. eu nunca testei.. mais a logica do TCPIP é sim..

    de repente se vc adicionar uma rota statica na tabela de roteamento no linux para o ip 200.xxx.xxx.106 deva funcionar...

    [ Esta mensagem foi editada por: Danilo_Montagna em 23-01-2003 14:03 ]

    [ Esta mensagem foi editada por: Danilo_Montagna em 23-01-2003 14:06 ]