Remote Desktop Protocol
Remote Desktop Protocol (RDP) - Netzwerkprotokoll für den Fernzugriff auf Computer
Beschreibung
Anwendung | Remote Desktop Protocol | ||||
Transport | TCP/UDP | ||||
Internet | IP (IPv4, IPv6) | ||||
Netzzugang | Ethernet | Token Bus | Token Ring | FDDI | … |
Remote Desktop Protocol (RDP) ist ein Netzwerkprotokoll von Microsoft für den Fernzugriff auf Computer
- Es ermöglicht die Übertragung grafischer Bildschirminhalte eines entfernten Rechnersystems sowie die Bereitstellung von Peripheriefunktionen eines Arbeitsplatzes (Tastatur, Maus, Audio-Ein-/Ausgabe, Videoeingabe sowie sitzungsbezogenen Datenaustausch wie Textpuffer (engl. Clipboard), Druckerkopplung und Dateisystembereitstellung).
- Das Protokoll definiert die Zusammenarbeit zwischen einer Serverkomponente (bei MS Windows Remote Desktop Services, vormals Terminal Services) und der Clientkomponente.
- Der Dienst hört nach Standard auf Port 3389/TCP sowie 3389/UDP.
- Die Nutzung der UDP-Übertragung wird bei Microsoft ab Windows 8 und Windows Server 2012 hinzugefügt (RDP Version 8), ist aber nicht zwingend erforderlich.
- Proprietäres Protokoll von Microsoft zur Fernsteuerung des Desktops eines Windows-Rechners
- Für Windows 7 und neuere Versionen kann der Zugriff von entfernten Rechner auf den Windows-Desktop über den entsprechenden Punkt in der Systemsteuerung freigegeben werden.
- Für den Zugriff auf den entfernten Rechner wird ein Client benötigt, der das RDP-Protokoll unterstützt.
- Entwicklung
Microsoft lizenzierte von Citrix die Technik Multiwin, um im Jahr 1998 das darauf aufbauende Produkt Windows Terminal Server zu veröffentlichen.
- Multiwin ermöglichte die gleichzeitige Ausführung mehrerer Benutzersitzungen.
Das Protokoll ICA, das Citrix beim eigenen Produkt WinFrame verwendete, war nicht Bestandteil der Lizenzierungsvereinbarung.
- Stattdessen entwickelte Microsoft das Protokoll RDP als Erweiterung des Protokolls T.Share (T.Share war die Bezeichnung für das Protokoll T.128 in dessen Entwurfsphase).
Funktionsweise
Rechnersysteme werden von sogenannten Konsolen bedient, was im Minimum eine Eingabefunktion (Tastatur) und eine Ausgabefunktion (Drucker, Bildschirmgerät) darstellt.
- Diese Ein-/Ausgabegeräte und ihr Bediener können aber nicht immer physisch am Gerät angeschlossen sein und dort arbeiten.
- Zur Fernbedienung wurden Möglichkeiten gesucht, wie man diese Funktionen über IP-Netzwerke abbilden kann.
- Dazu wurde ein Serverdienst entwickelt, der den Bildwiederholspeicher der Grafikkarte auslesen konnte oder ihn simulierte (engl. Framebuffer).
- Diese Inhalte wurden dann per Netzwerk auf das zugehörige Clientprogramm übertragen und dort typischerweise in eigenem Bildschirmfenster dargestellt.
- Umgekehrt wurden die Informationen der Peripheriegeräte des Clients per Netzwerkübertragung an die zugehörige Sitzung des Serverdienstes übertragen.
In Konkurrenz zum als Open Source entwickelten VNC-Protokoll entwickelte Microsoft das RDP-Protokoll, das ursprünglich nicht öffentlich dokumentiert war.
- Das seit den 1990er Jahren bei UNIX-Betriebssystemen für ähnliche Zwecke weit verbreitete X11-Protokoll hat eine stark abweichende technische Implementierung, aber ein ähnliches Ziel.
RDP besteht aus einer Serverkomponente, einer Clientkomponente und einem verbindenden Netzwerkprotokoll.
- Arbeiten mehrere Personen gleichzeitig mit mehreren RDP-Clients auf einem System, bezeichnet man dieses als Terminalserver.
- Aufgrund besonderer technischer Herausforderungen ist die Funktion Terminalserver eine spezielle Betriebsart von Windowsservern.
Der Zugang zu solchen Terminalservern erfolgt entweder mit einem RDP-Clientprogramm oder mit spezialisierten Benutzerendgeräten (engl. ThinClient); die Tastatur, Bildschirmanschluss, Maus und evtl.
- Mikrofon, Lautsprecher und Kamera für einen eingebauten RDP-Client haben.
Die Bildschirmausgabe einer Sitzung erfolgt auf einem virtuellen Bildschirm (Hauptspeicherbereich) innerhalb des Terminalservers und der Terminalclient erhält lediglich eine Kopie der Ausgabe.
Neben Bildschirmausgaben sowie Tastatur- und Maus-Eingaben kann mit RDP auch die Tonausgabe der Sitzung zum Terminalclient umgeleitet werden.
- Außerdem ist die Nutzung eines Druckers und der Zugriff auf lokale Speichermedien des Terminalgerätes möglich.
Je nach Einsatzzweck wird der Benutzer des Terminalclients dadurch in die Lage versetzt, einen virtuellen Arbeitsplatz an einem Terminalserver zu bedienen.
RDP basiert auf dem ITU-Protokoll T.120 und ist ein Protokoll der Ebenen 4–7 des OSI-Modells.
- Es benutzt grundlegend das Transmission Control Protocol (TCP) für den Sitzungsaufbau und die Datenübertragung.
- Zur Verringerung der Latenzen (z. B.
- Multimediainhalte, Telefon- und Videokonferenzen) wird nach Möglichkeit ein paralleler Kanal mit User Datagram Protocol (UDP) verwendet.
- Die Sitzungskommunikation wird gegen unbefugte Kenntnisnahme mit Transport Layer Security (TLS) verschlüsselt.
Clients
Auf den meisten Windows-Betriebssystemen gibt es bereits einen vorinstallierten Remote Desktop Client von Microsoft (mstsc.exe).
Für Linux, FreeBSD, macOS, AmigaOS, MorphOS, Android, Apple iOS und Chrome OS existieren jeweils Clients, die den Zugriff auf Windows-RDP-Server erlauben.
Auf der CeBIT wurde im Jahr 2000 der erste Java-Client (HOBLink JWT) für RDP präsentiert.
- Damit wurde mit Hilfe der Java-Plattform der Zugriff auf RDP-Server unter zahlreichen Betriebssystemen ermöglicht.
- Mittlerweile gibt es weitere kommerzielle Java-Clients, die auf unterschiedlichen Betriebssystemen einsetzbar sind.
Für viele grafische Benutzeroberflächen von UNIX-Betriebssystemen wie GNOME oder KDE sind RDP-Clients als Open Source verfügbar, einer der ersten war xrdp.
- Eine recht große Aufmerksamkeit hat in letzter Zeit das FreeRDP Projekt bekommen.
Microsoft hat seit einiger Zeit die Spezifikationen des Netzwerkprotokolls und des Clients offengelegt, womit die funktionelle Kompatibilität von Fremdentwicklungen besser sichergestellt werden kann.
- Da die Anzahl der Clientverbindungen am Microsoftserver lizenzpflichtig ist, spricht das nicht gegen das generelle Geschäftsmodell.
Es gibt zahlreiche Nicht-Microsoft-Implementierungen von Remote Desktop Clients für eine Reihe von Plattformen.
- FreeRDP - Open Source unter Apache license
- rdesktop für Linux/Unix und Microsoft Windows
- Remmina für Linux (auf FreeRDP basierend)
- Thincast Client für Linux, macOS und Windows
Microsoft profitiert selbst von dieser Offenlegung und verwendet unter anderem auch FreeRDP im Windows Subsystem für Linux.
Client | Beschreibung |
---|---|
Remmina | Fernwartungssoftware, die außer RDP auch die Protokolle VNC, NX, SSH, XDMCP sowie SFTP unterstützt.
|
Vinagre | Betrachter für entfernte Bildschirme, der verschiedene Protokolle unterstützt.
|
rdesktop | Open-Source-Client für die Remotedesktop-Dienste von Windows.
|
freeRDP | Open-Source-Client für Remotedesktop-Dienste von Windows.
|
Server
Windows
Als Serverbetriebssysteme für RDP werden Windows NT 4.0 (nur in der später erschienenen Terminal Server Edition), Windows Server 2000, 2003, 2008, 2012, 2016, 2019 sowie 2022, NetMeeting, und in allen Professional- oder höheren Varianten von Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10 und Windows 11 verwendet.
- Daneben gibt es kommerzielle Remote Desktop Software für Windows von Drittanbietern, z. B.
- Thinstuff XP/VS Server,
RDP wird seit Windows XP standardmäßig für die Fernwartung von Windows-Rechnern (Remoteunterstützung) verwendet.
Auf der Messe CeBIT wurde im März 2005 der erste kommerzielle RDP-Server für Linux präsentiert (Thinstuff LX Server).
- Diese Software ermöglicht den Einsatz von RDP-Clients zur Verbindung zu Linux-Servern.
- Microsoft-Versionen
Version | Beschreibung |
---|---|
10 | Diese Version ist erstmals im Windows 10 1511 Update sowie in der Windows Server 2016 Technical Preview 4 enthalten und beinhaltet neue Features wie AutoSize, Zoom sowie Verbesserungen der Grafikkompression mit Hilfe von H.264/AVC. |
8.0–8.1 | Diese Version erschien zusammen mit Windows 8 und Windows Server 2012.
|
7.0 | Seit Oktober 2009 ist die RDP-Version 7.0 für Windows XP SP3, Windows Vista SP1 und Windows Vista SP2 verfügbar.
|
6.0 | Mit der Einführung von RDP Version 6.0, welches ein Bestandteil von Windows Vista ist, wurde der Funktionsumfang zum Teil erheblich verändert sowie die Verschlüsselung überarbeitet.
|
4.0–5.2 | Seit Windows XP Service-Pack 1 ist die RDP-Version 5.1 verfügbar.
|
Linux
Server | Beschreibung |
---|---|
XRDP | xrdp bietet einen grafischen Login zu einem remote-Client über RDP.
|
Virtualisierungssoftware
Die Virtualisierungssoftware VirtualBox von Oracle besitzt einen eigenen RDP-Server, der mit rdesktop und dem Microsoft Client kompatibel ist.
Anhang
Siehe auch
- Windows/Remote-Desktop
- Remote Framebuffer Protocol
- NX NoMachine
- Citrix XenApp
- Xrdp, ein Open-Source-RDP-Server
- Fernwartungssoftware
Links
Weblinks
- https://de.wikipedia.org/wiki/Remote_Desktop_Protocol
- https://wiki.ubuntuusers.de/RDP
- https://support.microsoft.com/de-lu/help/186607/understanding-the-remote-desktop-protocol-rdp
- https://docs.microsoft.com/de-de/windows/win32/termserv/remote-desktop-protocol
- https://msdn.microsoft.com/en-us/library/cc240445.aspx
- https://msdn.microsoft.com/en-us/library/aa383015.aspx
- https://blogs.msdn.microsoft.com/rds/2013/04/09/get-the-best-rdp-8-0-experience-when-connecting-to-windows-7-what-you-need-to-know/