Windows-Rechner von außen fernsteuern: Unterschied zwischen den Versionen

Aus dem IServ-Wiki
Zur Navigation springen Zur Suche springen
K
 
(3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
Mithilfe der Protkolle SSH und RDP kann man sich von außen mit Windows-Rechnern, die hinter einem IServ stehen, verbinden und fernsteuern. Dazu baut man mit einem beliebigen SSH-Client eine SSH-Verbindung zum IServ auf, und tunnelt dann den RDP-Port 3389 von einem der Rechner hinter IServ auf einen beliebigen Port auf dem lokalen Rechner. Anschließend kann man mit einem beliebigen RDP-Client eine Verbindung zu diesem lokalen Port und damit zum entfernten Windows-Rechner herstellen.
 
Mithilfe der Protkolle SSH und RDP kann man sich von außen mit Windows-Rechnern, die hinter einem IServ stehen, verbinden und fernsteuern. Dazu baut man mit einem beliebigen SSH-Client eine SSH-Verbindung zum IServ auf, und tunnelt dann den RDP-Port 3389 von einem der Rechner hinter IServ auf einen beliebigen Port auf dem lokalen Rechner. Anschließend kann man mit einem beliebigen RDP-Client eine Verbindung zu diesem lokalen Port und damit zum entfernten Windows-Rechner herstellen.
  
Voraussetzungen:
+
== Voraussetzungen ==
 
* RDP wird erst ab Windows XP unterstützt; Windows 2000 sowie die Home-Varianten von Windows XP und Windows Vista werden nicht unterstützt.  
 
* RDP wird erst ab Windows XP unterstützt; Windows 2000 sowie die Home-Varianten von Windows XP und Windows Vista werden nicht unterstützt.  
* Der Windows-Rechner hinter dem IServ muss für RDP-Zugriff konfiguriert sein; am besten konfiguriert man von vornherein alle Windows-Clients im Schulnetzwerk für RDP-Zugriff.
+
* Der Windows-Rechner hinter dem IServ muss für den RDP-Zugriff konfiguriert sein; am besten konfiguriert man diesen von vornherein auf allen Windows-Clients im Schulnetzwerk.
 
* Man benötigt einen Acccount mit Adminrechten auf dem Windows-Client. Im Normalfall erreicht man dies, in dem man sich der Gruppe <tt>Win-Admins</tt> (IServ1) oder <tt>Domain Admins</tt> (IServ2) hinzufügt, und dann den normalen Account zum Remotelogin verwendet.
 
* Man benötigt einen Acccount mit Adminrechten auf dem Windows-Client. Im Normalfall erreicht man dies, in dem man sich der Gruppe <tt>Win-Admins</tt> (IServ1) oder <tt>Domain Admins</tt> (IServ2) hinzufügt, und dann den normalen Account zum Remotelogin verwendet.
 
* Auf dem Windows-Rechner muss der RDP-Port in der Firewall freigegeben sein, sofern diese eingeschaltet ist.
 
* Auf dem Windows-Rechner muss der RDP-Port in der Firewall freigegeben sein, sofern diese eingeschaltet ist.
 
* Man muss auf dem IServ in der Gruppe Admins sein, um über SSH Verbindungen tunneln zu dürfen. Eine Shell wird nicht benötigt.
 
* Man muss auf dem IServ in der Gruppe Admins sein, um über SSH Verbindungen tunneln zu dürfen. Eine Shell wird nicht benötigt.
 
 
__TOC__
 
  
 
== Konfiguration der Windows-Clients ==
 
== Konfiguration der Windows-Clients ==
Zeile 27: Zeile 24:
 
=== Windows Vista ===
 
=== Windows Vista ===
 
http://www.howtogeek.com/howto/windows-vista/turn-on-remote-desktop-in-windows-vista/
 
http://www.howtogeek.com/howto/windows-vista/turn-on-remote-desktop-in-windows-vista/
 +
 +
=== Windows ab 7 ===
 +
Alle Windows-Versionen ab 7 werden automatisch über den IServ Registry-Patch richtig konfiguriert (für die jeweilige Windows-Version zu finden auf der Netzwerkfreigabe <code>\\iserv\netlogon</code> - Datei <code>win7/8/10.reg</code> oder in der Rechnerverwaltung unter Registry-Patches oben). Gegebenenfalls muss die Windows-Firewall abgeschaltet werden, damit der Zugriff nicht blockiert wird oder aber der Port für Remotedesktop mit folgenden Kommandozeilenbefehl für unbeschränkten Zugriff freigegeben werden:
 +
 +
<pre>
 +
netsh advfirewall firewall add rule name="IServ Remotedesktop" protocol=TCP dir=in localport=3389 localip=all remoteip=all action=allow
 +
</pre>
 +
 +
Windows-Rechner, die über die [[iserv:doc/v3/manage/network/deploy/|Softwareverteilung]] installiert wurden, sind automatisch richtig konfiguriert.
  
 
== Konfiguration des IServs ==
 
== Konfiguration des IServs ==
Zeile 34: Zeile 40:
 
=== Linux (Ubuntu) ===
 
=== Linux (Ubuntu) ===
 
==== SSH-Verbindung herstellen ====
 
==== SSH-Verbindung herstellen ====
Eine SSH-Verbindung zum IServ herstellen und dabei beispielsweise einen RDP-Tunnel zum PC 192.168.0.123 aufbauen:
+
Öffne ein Terminal, um eine SSH-Verbindung zum IServ herstellen und dabei beispielsweise einen RDP-Tunnel zum PC 192.168.0.123 aufbauen:
 
<cmdpre>
 
<cmdpre>
 
ssh vorname.nachname@mein-iserv.de -N -L 4000:192.168.0.123:3389
 
ssh vorname.nachname@mein-iserv.de -N -L 4000:192.168.0.123:3389
Zeile 41: Zeile 47:
  
 
Im Beispiel wird der Port 3389 (RDP) des Computers 192.168.0.123 auf den lokalen Port 4000 weitergeleitet. Der lokale Port ist dabei beliebig (unter Linux kann man auch als lokalen Port 3389 verwenden, da Linux ja keinen RDP-Server hat), er sollte nur größer als 1024 sein, da man ansonsten Root-Rechte für den SSH-Befehl braucht.
 
Im Beispiel wird der Port 3389 (RDP) des Computers 192.168.0.123 auf den lokalen Port 4000 weitergeleitet. Der lokale Port ist dabei beliebig (unter Linux kann man auch als lokalen Port 3389 verwenden, da Linux ja keinen RDP-Server hat), er sollte nur größer als 1024 sein, da man ansonsten Root-Rechte für den SSH-Befehl braucht.
 +
 +
Nun wird ein Passwort abgefragt, das mit Return bestätigt wird. Im Terminal erfolgt keine Rückmeldung. Es geht mit dem nächsten Schritt in dieser Anleitung weiter.
  
 
==== RDP-Verbindung herstellen ====
 
==== RDP-Verbindung herstellen ====
Zeile 54: Zeile 62:
 
=== Windows ===
 
=== Windows ===
 
==== SSH-Verbindung herstellen ====
 
==== SSH-Verbindung herstellen ====
[[Bild:Putty-Hauptbildschirm.png|thumb|PuTTY]] [[Bild:Putty-Connection-SSH-Tunnels.png|thumb|Tunnel-Konfiguration von PuTTY]]
+
[[Bild:Putty-Hauptbildschirm.png|thumb|PuTTY]]
[[PuTTY]] ggf. herunterladen und starten. Als Host die URL des IServs eingeben, anschließend links in der Navigation zu ''Connection'' → ''SSH'' → ''Tunnels'' wechseln.
+
[[Bild:Putty-Noshell.png|thumb|Shell in PuTTY deaktivieren]]
 +
[[Bild:Putty-Connection-SSH-Tunnels.png|thumb|Tunnel-Konfiguration von PuTTY]]
 +
<ol>
 +
<li>
 +
[[PuTTY]] ggf. herunterladen und starten.
 +
</li>
 +
<li>
 +
Als Host die URL des IServs eingeben.
 +
</li>
 +
<li>
 +
Links in der Navigation zu ''Connection'' → ''SSH'' wechseln, und die Option "Don't start a shell or command at all" setzen. Ist diese Option nicht gesetzt, funktioniert das Ganze nur noch dann, wenn der Benutzer auf dem Server wirklich eine Shell gesetzt hat - und gerade das soll ja vermieden werden.
 +
</li>
 +
<li>
 +
In der Navigation zu ''Connection'' → ''SSH'' → ''Tunnels'' wechseln, und die Weiterleitung einrichten:
  
 
Bei '''Source port''' den lokalen Port eingeben, z. B. 4000.<br/>
 
Bei '''Source port''' den lokalen Port eingeben, z. B. 4000.<br/>
 
Bei '''Destination''' die IP des entfernten Rechners und den Zielport eingeben, z. B. 192.168.0.123:3389.
 
Bei '''Destination''' die IP des entfernten Rechners und den Zielport eingeben, z. B. 192.168.0.123:3389.
  
Anschließend den Eintrag per ''Add'' hinzufügen und die Verbindung mit ''Open'' herstellen.
+
Anschließend den Eintrag per ''Add'' hinzufügen.
 +
</li>
 +
<li>
 +
Ggf. die Einstellungen auf der ersten Seite speichern, damit diese Schritte nicht jedes Mal erneut durchgeführt werden müssen.
 +
</li>
 +
<li>
 +
Die Verbindung mit ''Open'' herstellen; in dem Prompt den Benutzernamen und das Passwort eingeben.
 +
</li>
 +
</ol>
  
 
==== RDP-Verbindung herstellen ====
 
==== RDP-Verbindung herstellen ====
Zeile 68: Zeile 97:
 
Über das Startmenü: ''Start'' → ''Programme'' → ''Zubehör'' → ''Kommunikation'' → ''Remotedesktopverbindung''<br/>
 
Über das Startmenü: ''Start'' → ''Programme'' → ''Zubehör'' → ''Kommunikation'' → ''Remotedesktopverbindung''<br/>
 
Über den Ausführen-Befehl: ''Start'' → ''Ausführen'', "mstsc" eingeben, ''OK''.
 
Über den Ausführen-Befehl: ''Start'' → ''Ausführen'', "mstsc" eingeben, ''OK''.
 +
 +
[[Kategorie:Anleitungen für Admins/Windows]]

Aktuelle Version vom 19. Juni 2017, 22:13 Uhr

Mithilfe der Protkolle SSH und RDP kann man sich von außen mit Windows-Rechnern, die hinter einem IServ stehen, verbinden und fernsteuern. Dazu baut man mit einem beliebigen SSH-Client eine SSH-Verbindung zum IServ auf, und tunnelt dann den RDP-Port 3389 von einem der Rechner hinter IServ auf einen beliebigen Port auf dem lokalen Rechner. Anschließend kann man mit einem beliebigen RDP-Client eine Verbindung zu diesem lokalen Port und damit zum entfernten Windows-Rechner herstellen.

Voraussetzungen

  • RDP wird erst ab Windows XP unterstützt; Windows 2000 sowie die Home-Varianten von Windows XP und Windows Vista werden nicht unterstützt.
  • Der Windows-Rechner hinter dem IServ muss für den RDP-Zugriff konfiguriert sein; am besten konfiguriert man diesen von vornherein auf allen Windows-Clients im Schulnetzwerk.
  • Man benötigt einen Acccount mit Adminrechten auf dem Windows-Client. Im Normalfall erreicht man dies, in dem man sich der Gruppe Win-Admins (IServ1) oder Domain Admins (IServ2) hinzufügt, und dann den normalen Account zum Remotelogin verwendet.
  • Auf dem Windows-Rechner muss der RDP-Port in der Firewall freigegeben sein, sofern diese eingeschaltet ist.
  • Man muss auf dem IServ in der Gruppe Admins sein, um über SSH Verbindungen tunneln zu dürfen. Eine Shell wird nicht benötigt.

Konfiguration der Windows-Clients

Reiter "Remote" in Windows XP
Windows XP-Firewall

Windows XP

Aktivieren des RDP-Servers

Rechtsklick auf den ArbeitsplatzEigenschaftenRemote

Dort die Option "Benutzern erlauben, eine Remotedesktopverbindung herzustellen" setzen.

Konfiguration der Firewall

StartEinstellungenSystemsteuerungWindows-FirewallAusnahmen

Dort die Option "Remotedesktop" setzen.

Windows Vista

http://www.howtogeek.com/howto/windows-vista/turn-on-remote-desktop-in-windows-vista/

Windows ab 7

Alle Windows-Versionen ab 7 werden automatisch über den IServ Registry-Patch richtig konfiguriert (für die jeweilige Windows-Version zu finden auf der Netzwerkfreigabe \\iserv\netlogon - Datei win7/8/10.reg oder in der Rechnerverwaltung unter Registry-Patches oben). Gegebenenfalls muss die Windows-Firewall abgeschaltet werden, damit der Zugriff nicht blockiert wird oder aber der Port für Remotedesktop mit folgenden Kommandozeilenbefehl für unbeschränkten Zugriff freigegeben werden:

netsh advfirewall firewall add rule name="IServ Remotedesktop" protocol=TCP dir=in localport=3389 localip=all remoteip=all action=allow

Windows-Rechner, die über die Softwareverteilung installiert wurden, sind automatisch richtig konfiguriert.

Konfiguration des IServs

Da dieses Feature eigentlich nur für Administatoren Sinn macht und diese sowieso bereits in den Gruppen "Admins" und "Domain Admins" eingetragen sein sollten, muss hier nichts weiter getan werden.

Verbindung von außen herstellen

Linux (Ubuntu)

SSH-Verbindung herstellen

Öffne ein Terminal, um eine SSH-Verbindung zum IServ herstellen und dabei beispielsweise einen RDP-Tunnel zum PC 192.168.0.123 aufbauen:

befehl
ssh vorname.nachname@mein-iserv.de -N -L 4000:192.168.0.123:3389

Mit dem Schalter -N gibt man an, dass man nur Ports weiterleiten will, ohne dabei eine Shell zu starten; der Schalter -L richtet die eigentliche Weiterleitung ein.

Im Beispiel wird der Port 3389 (RDP) des Computers 192.168.0.123 auf den lokalen Port 4000 weitergeleitet. Der lokale Port ist dabei beliebig (unter Linux kann man auch als lokalen Port 3389 verwenden, da Linux ja keinen RDP-Server hat), er sollte nur größer als 1024 sein, da man ansonsten Root-Rechte für den SSH-Befehl braucht.

Nun wird ein Passwort abgefragt, das mit Return bestätigt wird. Im Terminal erfolgt keine Rückmeldung. Es geht mit dem nächsten Schritt in dieser Anleitung weiter.

RDP-Verbindung herstellen

Terminal-Server-Client von Ubuntu

Anschließend kann man die eigentliche RDP-Verbindung zu localhost:4000 aufbauen:

AnwendungenInternetTerminal-Server-Client

Rechnername: localhost:4000
Protokoll: RDPv5
Benutzername und Passwort können nach dem Herstellen der Verbindung in der Anmeldemaske des Remote-Windowscomputers eingegeben werden.

Windows

SSH-Verbindung herstellen

PuTTY
Shell in PuTTY deaktivieren
Tunnel-Konfiguration von PuTTY
  1. PuTTY ggf. herunterladen und starten.
  2. Als Host die URL des IServs eingeben.
  3. Links in der Navigation zu ConnectionSSH wechseln, und die Option "Don't start a shell or command at all" setzen. Ist diese Option nicht gesetzt, funktioniert das Ganze nur noch dann, wenn der Benutzer auf dem Server wirklich eine Shell gesetzt hat - und gerade das soll ja vermieden werden.
  4. In der Navigation zu ConnectionSSHTunnels wechseln, und die Weiterleitung einrichten: Bei Source port den lokalen Port eingeben, z. B. 4000.
    Bei Destination die IP des entfernten Rechners und den Zielport eingeben, z. B. 192.168.0.123:3389. Anschließend den Eintrag per Add hinzufügen.
  5. Ggf. die Einstellungen auf der ersten Seite speichern, damit diese Schritte nicht jedes Mal erneut durchgeführt werden müssen.
  6. Die Verbindung mit Open herstellen; in dem Prompt den Benutzernamen und das Passwort eingeben.

RDP-Verbindung herstellen

Windows-RDP-Client

Den Windows-RDP-Client starten:

Über das Startmenü: StartProgrammeZubehörKommunikationRemotedesktopverbindung
Über den Ausführen-Befehl: StartAusführen, "mstsc" eingeben, OK.