Eu perguntei anteriormente como configurar 2 túneis SSH usando um servidor intermediário para executar Remote Desktop através deles e eu consegui fazê-lo funcionar. Agora, estou tentando fazer o mesmo, usando as mesmas máquinas, mas na ordem inversa. Aqui está a configuração:
- PC com Windows 7 em uma rede privada, sentado atrás de um firewall.
- Servidor Linux de acesso público, que tem acesso ao PC.
- Laptop Windows 7, em casa, no qual desejo executar a Área de trabalho remota a partir do PC.
Eu uso Putty no laptop para criar um túnel reverso a partir dele para o servidor Linux: R60666 localhost:3389
.
Eu uso Putty no PC para criar um túnel regular a partir para o servidor Linux: L60666 localhost:60666
.
Eu SSH para o servidor Linux e executo telnet localhost 60666 e parece produzir a saída esperada, conforme descrito nas dicas de depuração que recebi aqui .
Eu tento ligar o Remote Desktop do PC para o laptop: localhost:60666
. Ele pede meu nome de usuário e senha, clico em OK e bloqueia minha sessão atual no laptop (para que eu veja a tela de boas-vindas no laptop em vez da área de trabalho), mostra a mensagem "Bem-vindo" na tela da Área de Trabalho Remota e depois apenas fica preto. Ele não é desconectado, não fornece nenhum erro e não consigo executar nenhuma ação na tela da Área de trabalho remota. Tentei a mesma configuração com um laptop com Windows XP e estou com os mesmos sintomas. Também tentei usar portas diferentes das 60666, mas nada mudou. Alguém tem alguma idéia do que estou fazendo de errado?
Atualização : Como apontado por @jwinders, não consigo executar telnet PC 3389
diretamente do servidor Linux. Como o Firewall do Windows possui uma regra para permitir todas as conexões na porta 3389, não faço ideia do que está bloqueando. Felizmente, sou capaz de criar um túnel SSH da máquina Linux para o PC ssh 3389:localhost:3389 'domain\user'@PC
.