Ich muss über einen Reverse-Tunnel zu einem Server RDP

7

Ich habe einen Windows-PC in Netzwerk A und einen Windows-PC in Netzwerk B. Auch in Netzwerk-BI gibt es mehrere Linux-Server. Vom PC in Netzwerk A kann ich zu jedem Server in Netzwerk B ssh. Ich kann jedoch keine Verbindung zum PC in Netzwerk A von einem Computer in Netzwerk B herstellen.

                                                      Windows PC Local
                                                       __  _          
                              can ssh                 [__]|=|         
              .-,(  ),-.    --------->    .-,(  ),-.  /::/|_|         
           .-(          )-.            .-(          )-. 
          (    Network A   )          (    Network B   )
           '-(          ).-'           '-(          ).-'
               '-.( ).-'    <---------     '-.( ).-'    
                            can't ssh               Linux Server #1
     Windows PC Remote                               __  _         
      __  _                                         [_Linux Server #2
     [__]|=|                                        /: __  _         
     /::/|_|                                          [__]|=|        
                                                      /::/|_|        

Ich möchte von meinem Netzwerk-B-PC aus RDP auf meinen Netzwerk-A-PC übertragen können. Ist dies durch eine Art Reverse-Tunneling durch eine der Linux-Boxen möglich?

Triton Man
quelle
1
Vielen Dank an die Person, die das fantastische Diagramm für meine Frage erstellt hat.
Triton Man

Antworten:

6

Lösung 1: Erstellen Sie von Ihrem PC in Netzwerk A aus einen umgekehrten SSH-Tunnel mit Putty, indem Sie eine Verbindung zu einem Linux-Host in Netzwerk B herstellen. Der lokale Port sollte sein 3389, der Remote-Host 127.0.0.1und der Port sind beliebig (verwenden wir 6000als Beispiel). . Verwenden Sie dann von Ihrem PC in Netzwerk B aus Putty, um eine Verbindung zum gleichen Linux-Host herzustellen, und führen Sie einen Vorwärtstunnel durch. Lokaler Port sollten andere als auf etwas festgelegt werden 3389(wie Microsoft RDP - Client wird keine Verbindungen zu localhost erlauben, aber es wird erlauben Verbindungen auf einem beliebigen Port auf localhost). 6000Lassen Sie uns also dieselbe Portnummer wie die Remote-IP 127.0.0.1und den Remote-Port wiederverwenden 6000. Anschließend zeigen Sie mit dem RDP-Client auf 127.0.0.1:6000 .

Tatsächlich stellen Sie eine Verbindung zum Port 6000auf dem PC in Netzwerk B her. Putty leitet diesen an den Linux-Host weiter, der so eingestellt wurde, dass er ihn 127.0.0.1an den Port weiterleitet 6000. Die Kittverbindung vom PC in Netzwerk A hört zu 6000und leitet sie 127.0.0.1an PC A an den Port weiter, an 3389dem RDP die Verbindung akzeptiert.

Lösung 2: Richten Sie eine SSHD auf dem PC in Netzwerk B ein, und Sie müssen nur einen einzigen Reverse-Port vorwärts ausführen. Es gibt Bitvise SSHD, das unter Windows ausgeführt wird und für den nicht geschäftlichen Gebrauch kostenlos ist. Bitvise führt auch einen separaten Client aus, der das RDP-Tunneling in Verbindung mit einer WinSSHD übernimmt. Das Schöne an dieser Lösung ist, dass Benutzernamen und Einstellungen (wie Vollbild usw.) gespeichert werden und über eine Sicherungsdatei gestartet werden können, sodass Sie den Port nicht mehr einrichten / daran denken müssen, ihn weiterzuleiten, bevor Sie RDP verwenden.

Drav Sloan
quelle