iptables para encaminhar solicitações de área de trabalho remota para uma máquina virtual no host CentOS

1

Eu posso fazer o rdesktop em uma VM executando o Windows XP hospedado em minha máquina CentOS 5.4 a partir da máquina de hospedagem e trabalhar muito bem usando o endereço privado (192.168.122.65), mas agora preciso permitir acesso remoto à área de trabalho de outros computadores apenas a máquina que hospeda a VM).

Só preciso permitir o acesso por um dia ou mais, por isso, não quero adicionar uma NIC (por motivos de ativação do XP).

Alguém poderia me ajudar com a sintaxe iptables ?

A VM está em uma rede privada / virtual: 192.168.122.65 e minha máquina CentOS está em uma rede física, em 10.1.3.38 (e 192.168.122.1 como o GW para a rede virtual).

Eu encontrei uma pergunta sobre Regras do iptables para encaminhar uma conexão de área de trabalho remota do Windows , mas nenhuma das respostas parecia funcionar e estou um pouco tímido em testar cegamente as variações. Minhas regras FORWARD estão listadas.

# iptables -L FORWARD
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             192.168.122.0/24    state RELATED,ESTABLISHED 
ACCEPT     all  --  192.168.122.0/24     anywhere            
ACCEPT     all  --  anywhere             anywhere            
REJECT     all  --  anywhere             anywhere            reject-with icmp-port-unreachable 
REJECT     all  --  anywhere             anywhere            reject-with icmp-port-unreachable 
RH-Firewall-1-INPUT  all  --  anywhere             anywhere

Se eu jogar "cegamente", existe uma maneira simples de redefinir as configurações no CentOS (a uma reinicialização da rede de serviços)?

    
por NVRAM 04.03.2010 / 23:47

3 respostas

1

Antes de fazer qualquer coisa, faça um service iptables save . Isso copia todas as suas regras do iptables para /etc/sysconfig/iptables . A partir daqui você pode copiar esse arquivo e, em seguida, testar o conteúdo do seu coração. Para restaurar o conjunto de regras que você salvou, certifique-se de que o conjunto de regras esteja no mesmo arquivo (se você não salvou nenhum outro iptables, então você deve ser bom) e faça um service iptables resart . O conjunto de regras que você tinha quando salvou está de volta ao lugar.

Atualize agora que tenho tempo: Sintaxe acredito que funcionará: iptables -t nat -A PREROUTING -p tcp --dport 3389 --to-destination 192.168.122.65 ; echo 1 > /proc/sys/net/ipv4/ip_forward . Observe que isso significa que qualquer tráfego RDP que chega a esse host será encaminhado.

    
por 18.07.2010 / 14:57
1

Ele deve funcionar bem com o exemplo na postagem à qual você vinculou. Tem que ser feito na tabela nat do iptables, assim:

iptables -t nat -I PREROUTING -p tcp -d 10.1.3.38 --dport 3389 -j DNAT --to-destination 192.168.122.65

Em seguida, conecte-se REMOTAmente à porta 3389 do 10.1.3.38 com seu cliente RDP.

    
por 07.01.2012 / 01:43
0

Prefiro vincular a placa de rede na VM com a do host, para que a VM obtenha um endereço IP no intervalo 10.1.3.X do servidor DHCP que atende ao host (ou, se você estiver usando endereços IP estáticos, defina o seu próprio).

Se isso é aceitável depende da sua situação, mas se você estiver usando uma máquina física separada em vez de uma VM, se você simplesmente colocar isso na sua rede, faça o mesmo com sua VM.

    
por 05.03.2010 / 00:06