Pular para o conteúdo

Redirecionamento de portas IPtables

Dica publicada em Linux / Comandos
Jeferson R. Costa rcjeferson
Hits: 56.130 Categoria: Linux Subcategoria: Comandos
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Redirecionamento de portas IPtables

Como um participante de alguns fóruns, percebo que há muitas pessoas com dúvidas sobre como fazer um redirecionamento de portas no IPtables, e para ajudar essas pessoas, resolvi postar essa dica.

No nosso exemplo, vamos fazer um redirecionamento da porta 8080 que chega da WAN para um host na LAN usando a porta 80.

Para isso, utilizamos somente uma linha:

# iptables -t nat -A PREROUTING -p tcp -d $IP_WAN --dport 8080 -j DNAT --to $IP_HOST:80
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.


Obs.: substitua "$IP_WAN" pelo seu IP externo e "$IP_HOST" pelo IP do seu host na LAN.

Para descobrir, acesse: http://meuip.datahouse.com.br/

Na linha acima, estamos criando uma regra na tabela NAT, onde estamos indicando que todas as requisições do protocolo TCP que chegarem da WAN na porta 8080, serão redirecionadas para a máquina (IP_HOST) utilizando a porta 80.

Testado no Debian 6/IPtables.

Veja essa e outras dicas em meu blog, onde posto dicas e soluções em infraestrutura de TI.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

proc/cpuinfo - Como saber a quantidade de núcleos do processador

Erro: ERROR 2006 (HY000): "MySQL server has gone away" [Resolvido]

Alterando senha de usuário no MySQL

Squid - Calculando cache_dir e cache_mem

dos2unix - Convertendo arquivos Windows para GNU/Linux

Obtendo a soma do tamanho os arquivos listados com "du"

Imprimindo "man pages"

Checar seu IP externo no terminal

Monitorando um comando com strace

Listagem de arquivos e pastas ordenados por tamanho

#1 Comentário enviado por TioRoni em 23/04/2013 - 13:57h
Muito bom Jeferson, vai ajudar muito, parabéns. Tenho outras dúvidas, depois posto aquí. Abraços.
#2 Comentário enviado por compengineer em 20/03/2014 - 11:19h
Me ajudou bastante. Estou tentando aprender IPTABLES, mais eu tenho uma duvida. Estou testando em uma VM, e esta VM esta na minha rede. se eu fizer o redirecionamento de portas na minha é possivel testar na rede Local ? ou eu tenho que testar pela Wan?
#3 Comentário enviado por rcjeferson em 20/03/2014 - 11:33h

[2] Comentário enviado por compengineer em 20/03/2014 - 11:19h:

Me ajudou bastante. Estou tentando aprender IPTABLES, mais eu tenho uma duvida. Estou testando em uma VM, e esta VM esta na minha rede. se eu fizer o redirecionamento de portas na minha é possivel testar na rede Local ? ou eu tenho que testar pela Wan?


Você pode simular uma estrutura. Por exemplo, voce cria sua máquina virtual com duas interfaces de rede (Interna / Externa) ou na nossa simulação, a externa vai estar ligada na sua rede local e a interna simulará sua "rede", para isso essa interface você terá que deixar como interface virtual no seu software de virtualização. Depois crie uma segunda maquina virtual somente com uma interface, interface virtual e faça ela enxergar seu gateway, que no caso é a VM de teste. Pronto, você terá um ambiente simulando uma "rede" com direito a "Wan" (rsrs). Para testar o redirecionamento, tente acessar o cliente (VM2) por uma máquina que realmente está na sua rede, forçando passar pelo seu "servidor" e jogando para a cliente.

Abraço


#4 Comentário enviado por fernandohlmaia em 14/10/2018 - 12:51h
Preciso fazer redirecionamento de uma porta de entrada para outra porta, porém, na mesma máquina. Então coloco localhost no lugar de IP_HOST?

Outra dúvida, o IP_WAN, o servidor só irá aceitar conexões vinda desse endereço?

Sou iniciante, rsrs, perdão pelas perguntas.

Se for assim, acho que irá resolver um problema que tenho.

https://www.vivaolinux.com.br/topico/Squid-Iptables/Redirecionamento-de-porta-apenas-para-1-ip-espec...

Contribuir com comentário

Entre na sua conta para comentar.