+ Responder ao Tópico



  1. #1
    Redirecionamento de porta
    Visitante

    Padrão Como eu faço para fazer um redirecionamento de porta ?

    Ola,
    meu cenario é o seguinte : Tenho a rede interna aqui. eu gostaria que quando alguém da rede interna acessa-se minha maquina 192.168.1.80 redireciona-se para a maquina 192.168.1.81 na porta 8080(por exemplo). existe como fazer isso ? tipo minha maquina não é gateway da rede. eu só gostaria de quando alguem acessa-se 192.168.1.80 redireciona-se para outra maquina.

  2. #2

    Padrão Como eu faço para fazer um redirecionamento de porta ?

    tente:

    iptables -t nat -A PREROUTING -s 192.168.1.80/32 -j DNAT --to 192.168.1.81:8080

    mas vc deve indicar uma porta na sua maquina... vamos supor q tdo mundo q se conecte na sua maquina na porta 80 vah para a maquina 81 na porta 8080

    iptables -t nat -A PREROUTING -s 192.168.1.80/32 -p tcp --dport 80 -j DNAT --to 192.168.1.81:8080

    []'s

  3. #3
    gmlinux
    Visitante

    Padrão Como eu faço para fazer um redirecionamento de porta ?

    iptables (SNAT e DNAT), xinetd (redir), etc

  4. #4
    gmlinux
    Visitante

    Padrão Como eu faço para fazer um redirecionamento de porta ?

    Citação Postado originalmente por demiurgo
    tente:

    iptables -t nat -A PREROUTING -s 192.168.1.80/32 -j DNAT --to 192.168.1.81:8080

    mas vc deve indicar uma porta na sua maquina... vamos supor q tdo mundo q se conecte na sua maquina na porta 80 vah para a maquina 81 na porta 8080

    iptables -t nat -A PREROUTING -s 192.168.1.80/32 -p tcp --dport 80 -j DNAT --to 192.168.1.81:8080

    []'s
    Grande demiurgo, assim você reescreve apenas o endereço de destino, quando o pacote chegar ao destino, ele vai responder para a máquina de de origem (que não é a que redirecionou), esta não vai reconhecer a resposta, pois o pacote que vai ser enviado diretamente a ela vai conter um endereço de origem que não corresponde a nenhuma conexão existente...
    Fica fácil ver isto pensando no handshake tcp.

  5. #5
    felco
    Visitante

    Padrão Como eu faço para fazer um redirecionamento de porta ?

    iptables -t nat -A PREROUTING -s 192.168.1.80/32 -j DNAT --to 192.168.1.81:8080

    Ao invez de esperar que o pacote venha de 192.168.1.80/32 ele deveria "trabalhar" oque fosse destinado a 192.168.1.80/32 é fazer o NAT


    iptables -t nat -A PREROUTING -d 192.168.1.80/32 -j DNAT --to 192.168.1.81:8080

  6. #6
    gmlinux
    Visitante

    Padrão Como eu faço para fazer um redirecionamento de porta ?

    Ai felco, do que você esta falando ai em cima? porque repetiu a linha do PREROUTING?

  7. #7

    Padrão Como eu faço para fazer um redirecionamento de porta ?

    Bem, o que o carinha ai quer, não é um redir basico

    Pelo que entendi, ele quer que quando alguem da MESMA rede acesse o IP 192.168.1.80, seja redirecionado para o 192.168.1.81, e ainda sendo que nenhuma dessas 2 maquinas são o gateway da rede (o que não faz diferença nesse caso).
    E não tudo que vier da maquina .80 seja mandado para .81 .... (e isso só seria possivel c/ gateway e .81 estando em outra rede :P).

    Bem. o caso fica o seguinte...
    .80 e .81 estão na mesma rede, sendo que alguem tenta acessa o IP .80, é redirecionado para .81, então dá pra fazer isso de 2 formas..
    1) *SE* existir mesmo uma maquina 192.168.1.80, você faz as seguintes regras (na 192.168.1.80) no iptables considerando que essas maquinas estão ligadas no mesmo barramento:
    # iptables -t nat -A PREROUTING -d 192.168.1.80 -j DNAT --to 192.168.1.81
    (Essa regra faz com que tudo que bata no IP .80 da maquina seja enviado para o IP .81)
    # iptables -t nat -A POSTROUTING -d 192.168.1.81 -j SNAT --to 192.168.1.80
    (Agora com essa, irá garantir que os pacotes redirecionados voltem para a maquina que realizou o redirecionamento, e não enviada devolta para a maquina que iniciou o acesso, o que vai garantir que não haverá problemas com ICMP Redirect ou Firewalls alheios :P)
    2) Agora se NÃO existir uma maquina .80, você pode pegar qualquer maquina na rede, adicionar uma virtual ex.: eth0:1 respondendo pelo IP .80, e realizar as mesmas configurações no iptables que mencionei acima

    Então, com isso acima, caso a maquina: 192.168.1.100, tente acessar seja lá (ping, conexão e etc) como for a maquina 192.168.1.80, quem estiver respondendo esse IP, irá redirecionar tudo para a 192.168.1.81 e ainda por cima irá alterar o IP de origem para 192.168.1.80, fazendo com que a maquina 192.168.1.81, responda devolta para a 192.168.1.80 ao inves de responder diretamente para a 192.168.1.100....

    Beleza?

  8. #8
    gmlinux
    Visitante

    Padrão Como eu faço para fazer um redirecionamento de porta ?

    Citação Postado originalmente por gmlinux
    iptables (SNAT e DNAT), xinetd (redir), etc
    Foi a sugestão que eu havia dado aqui
    Só não coloquei a regra pois já estava no fórum...
    https://under-linux.org/modules.php?...hlight=#115461
    ainda que com pequena diferença de contexto.