Comunicação RDP (Port 3389) de entrada Fordward para máquina LAN

0

Vou começar com o fato de que nenhum tráfego será externo (Internet Volting). Todo o tráfego será interno.

PROBLEMA

O que eu estou tentando alcançar é o RDP do WINDOWS PC 1, ter o tráfego RDP do Windows 1 masquerade como o endereço IP do SERVIDOR Linux (10.0.2.5) e de lá continuar para o destino WINDOWS PC 2 .

Aqui está uma foto para ilustrar:

    WINDOWS PC 1 (10.0.2.122)
             |
           [RDP]
             |
             V
 LINUX SERVER (10.0.2.5)
             |
         [FW 3389]
             |
             V
   WINDOWS PC 2 (10.0.2.188)

O que eu tentei

  • Eu habilitei o encaminhamento de porta no kernel: sysctl net.ipv4.ip_forward=1
  • Já tentei várias respostas em muitos fóruns, mas ainda não há:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 3389 -j DNAT --to 10.0.2.188:3389 iptables -A FORWARD -p tcp --dport 3389 -d 10.0.2.188 -j ACCEPT

  • Eu assisti aos contadores do iptables e não vi atividade: watch 'iptables -vL'

Tenho certeza que isso é apenas uma sintaxe que um guru do iptables pode fazer com as duas mãos amarradas nas costas. Eu devo estar perdendo algo simples.

    
por AfroJoe 19.05.2017 / 21:01

1 resposta

2

Bem, depois de ler seu comentário, parece que esses dois PCs fazem parte da mesma rede local (LAN) . Esta é a razão pela qual você não pode ver o tráfego da sua Linux Box.

Este tutorial ensinará os fundamentos da LAN, mas será simples:

  • Esses computadores se conhecerão através do ARP ;
  • Eles "verão" que pertencem à mesma lan e falarão diretamente
  • Se sua caixa do Linux for o gateway, ela será usada apenas para rotear tráfego que NÃO pertença a essa lan (de 10.0.2.0/24 ou qualquer máscara que você tenha definido)

tl, dr : Esses computadores estão na mesma LAN, portanto, para ver algum tráfego da sua caixa do Linux (e você não será capaz de "interceptar / manipular", apenas ver ") você terá que colocar seu Linux nic no modo promisc: ip link set dev eth0 promisc on

Ok. Passando tudo isso teórico, quando você está fazendo um DNAT dentro da mesma lan, você terá que fazer o pacote voltar às suas origens "com força" usando um SNAT. Este é um caso especial em que você tem 2 computadores na mesma LAN ao fazer um NAT.

iptables -t nat -A PREROUTING -p tcp --dport 3389 -j DNAT --to-destination 10.0.2.188:3389
iptables -t nat -A POSTROUTING -p tcp -d 10.0.2.188 --dport 3389 -j SNAT --to-source 10.0.2.122

Desta forma, você irá impor isso, quando um pacote retornar à sua caixa do Linux, uma Source nat será feita para 10.0.2.122

Outras alternativas:

Faça um Proxy RDP com HA-proxy e coloque esses hosts em redes separadas. Isso é um exagero (criando um saldo de proxy rdp de único membro), mas é uma alternativa.

    
por 20.05.2017 / 00:16

Tags