Remote Desktop Protocol
Remote Desktop Protocol ( RDP ) är ett proprietärt protokoll utvecklat av Microsoft som ger en användare ett grafiskt gränssnitt för att ansluta till en annan dator via en nätverksanslutning. Användaren använder RDP-klientmjukvara för detta ändamål, medan den andra datorn måste köra RDP-servermjukvara.
Klienter finns för de flesta versioner av Microsoft Windows (inklusive Windows Mobile ), Linux (till exempel Remmina ), Unix , macOS , iOS , Android och andra operativsystem . RDP-servrar är inbyggda i Windows operativsystem; Det finns också en RDP-server för Unix och OS X (till exempel xrdp ). Som standard lyssnar servern på TCP- port 3389 och UDP- port 3389.
Microsoft hänvisar för närvarande till deras officiella RDP-klientprogramvara som Remote Desktop Connection , tidigare "Terminal Services Client".
Protokollet är en förlängning av ITU-T T.128 applikationsdelningsprotokoll. Microsoft offentliggör vissa specifikationer på sin webbplats.
Historia
Varje version av Microsoft Windows från Windows XP och framåt inkluderar en installerad Remote Desktop Connection (RDC) ("Terminal Services")-klient ( mstsc.exe ) vars version bestäms av operativsystemet eller av det senast använda Windows Service Pack. Terminal Services-servern stöds som en officiell funktion på Windows NT 4.0 Terminal Server Edition , släppt 1998, Windows 2000 Server , alla utgåvor av Windows XP utom Windows XP Home Edition, Windows Server 2003 , Windows Home Server , på Windows Fundamentals for Legacy PC:er , i Windows Vista Ultimate, Enterprise och Business-utgåvor, Windows Server 2008 och Windows Server 2008 R2 och på Windows 7 Professional och senare.
Microsoft tillhandahåller den klient som krävs för att ansluta till nyare RDP-versioner för operativsystem på lägre nivåer. Eftersom serverförbättringarna inte är tillgängliga på nednivå, fungerar funktionerna som introduceras med varje nyare RDP-version endast på operativsystem på lägre nivåer när du ansluter till en högre version av RDP-server från dessa äldre operativsystem, och inte när du använder RDP-servern i det äldre operativsystemet. [ förtydligande behövs ]
Version 4.0
Baserat på ITU-T T.128 programdelningsprotokoll (under utkast även känt som "T.share") från T.120 rekommendationsserien, introducerades den första versionen av RDP (som heter version 4.0) av Microsoft med "Terminal Services ", som en del av deras produkt Windows NT 4.0 Server, Terminal Server Edition. Terminal Services Edition av NT 4.0 förlitade sig på Citrixs MultiWin-teknologi, som tidigare tillhandahållits som en del av Citrix WinFrame ovanpå Windows NT 3.51, för att stödja flera användare och inloggningssessioner samtidigt. Microsoft krävde att Citrix skulle licensiera sin MultiWin-teknologi till Microsoft för att få fortsätta att erbjuda sin egen terminaltjänstprodukt, som då hette Citrix MetaFrame, ovanpå Windows NT 4.0. De Citrix-tillhandahållna DLL:erna som ingår i Windows NT 4.0 Terminal Services Edition har fortfarande en Citrix-upphovsrätt snarare än en Microsoft-upphovsrätt. Senare versioner av Windows integrerade det nödvändiga stödet direkt. T.128-applikationsdelningsteknologin förvärvades av Microsoft från den brittiska mjukvaruutvecklaren Data Connection Limited .
Version 5.0
Den här versionen introducerades med Windows 2000 Server , lade till stöd för ett antal funktioner, inklusive utskrift till lokala skrivare, och syftade till att förbättra nätverkets bandbreddsanvändning.
Version 5.1
Den här versionen introducerades med Windows XP Professional och inkluderade stöd för 24-bitars färg och ljud. Klienten är tillgänglig för Windows 2000 , Windows 9x , Windows NT 4.0 . Med den här versionen ändrades namnet på klienten från Terminal Services Client till Remote Desktop Connection ; arvet finns kvar än i dag, eftersom den underliggande körbara filen fortfarande heter mstsc.exe .
Version 5.2
Den här versionen introducerades med Windows Server 2003 , inkluderade stöd för konsollägesanslutningar, en sessionskatalog och lokal resursmappning. Den introducerar också Transport Layer Security (TLS) 1.0 för serverautentisering och för att kryptera terminalserverkommunikation. Denna version är inbyggd i Windows XP Professional x64 Edition och Windows Server 2003 x64 & x86 Editions.
Version 6.0
Den här versionen introducerades med Windows Vista och inkluderade stöd för Windows Presentation Foundation- applikationer, nätverksnivåautentisering , flerskärmsspännande och stöd för stora skrivbord och TLS 1.0- anslutningar. Version 6.0-klienten är tillgänglig för Windows XP SP2, Windows Server 2003 SP1/SP2 (x86- och x64-utgåvor) och Windows XP Professional x64 Edition. Microsoft Remote Desktop Connection Client för Macintosh OS X är också tillgänglig med stöd för Intel och PowerPC Mac OS versioner 10.4.9 och senare.
Version 6.1
Den här versionen släpptes i februari 2008 och ingår i Windows Server 2008 samt med Windows Vista Service Pack 1. Klienten ingår i Windows XP SP3. Förutom ändringar relaterade till hur en fjärradministratör ansluter till "konsolen" har den här versionen ny funktionalitet som introducerats i Windows Server 2008, som att fjärransluta till enskilda program och ett nytt omdirigeringssystem för skrivare på klientsidan som gör klientens utskriftsmöjligheter tillgänglig för applikationer som körs på servern, utan att behöva installera skrivardrivrutiner på servern också, å andra sidan kan fjärradministratören fritt installera, lägga till/ta bort valfri programvara eller inställning i klientens ände. Men för att starta en fjärradministrationssession måste man vara medlem i Administratörsgruppen på servern som man försöker ansluta sig till.
Version 7.0
Denna version släpptes för tillverkning i juli 2009 och ingår i Windows Server 2008 R2, såväl som med Windows 7 . Med den här versionen ändrades även från Terminal Services till Remote Desktop Services . Den här versionen har nya funktioner som Windows Media Player-omdirigering, dubbelriktat ljud, stöd för flera bildskärmar, stöd för Aero-glas, förbättrad bitmappsacceleration, Easy Print-omdirigering, Language Bar- dockning. RDP 7.0-klienten är tillgänglig på Windows XP SP3 och Windows Vista SP1/SP2 till KB969084. RDP 7.0-klienten stöds inte officiellt på Windows Server 2003 x86 och Windows Server 2003/Windows XP Professional x64-utgåvorna.
De flesta RDP 7.0-funktioner som fjärranvändning av Aero-glas, dubbelriktat ljud, omdirigering av Windows Media Player, stöd för flera bildskärmar och Remote Desktop Easy Print är endast tillgängliga i Windows 7 Enterprise eller Ultimate-utgåvor.
Version 7.1
Release 7.1 av RDP inkluderades i Windows 7 Service Pack 1 och Windows Server 2008 R2 SP1 2010. Den introducerade RemoteFX , som ger virtualiserat GPU-stöd och kodning på värdsidan.
Version 8.0
Denna version släpptes i Windows 8 och Windows Server 2012 . Denna version har nya funktioner som Adaptive Graphics (progressiv rendering och relaterade tekniker), automatiskt val av TCP eller UDP som transportprotokoll, multi touch- stöd, DirectX 11-stöd för vGPU, USB-omdirigering stöds oberoende av vGPU-stöd, etc. En "anslutning kvalitet"-knappen visas i RDP-klientens anslutningsfält för RDP 8.0-anslutningar; Om du klickar på den får du ytterligare information om anslutningen, inklusive om UDP används eller inte.
RDP 8.0-klienten och serverkomponenterna finns också tillgängliga som tillägg för Windows 7 SP1. RDP 8.0-klienten är också tillgänglig för Windows Server 2008 R2 SP1, men det är inte serverkomponenterna. Tillägget kräver att DTLS -protokollet är installerat som en förutsättning. Efter installation av uppdateringarna, för att RDP 8.0-protokollet ska aktiveras mellan Windows 7-datorer, krävs ett extra konfigurationssteg med hjälp av grupprincipredigeraren .
En ny funktion i RDP 8.0 är begränsat stöd för RDP-sessionskapsling; det fungerar bara för Windows 8 och Server 2012 men Windows 7 och Server 2008 R2 (även med RDP 8.0-uppdateringen) stöder inte den här funktionen.
"Skuggfunktionen" från RDP 7, som gjorde det möjligt för en administratör att övervaka (snoop) på en RDP-anslutning har tagits bort i RDP 8. Aero Glass-fjärrkontrollfunktionen (gäller för Windows 7-maskiner som ansluter till varandra) har också tagits bort i RDP 8.
Version 8.1
Den här versionen släpptes med Windows 8.1 och Windows Server 2012 R2 . En RDP 8.1-klientuppdatering finns även för Windows 7 SP1, men till skillnad från RDP 8.0-uppdateringen för Windows 7 lägger den inte till en RDP 8.1-serverkomponent till Windows 7. Om RDP 8.0-serverfunktion önskas i Windows 7, KB 2592687 (RDP 8.0-klient- och serverkomponenter) måste installeras innan RDP 8.1-uppdateringen installeras.
Stöd för sessionsskuggning lades till i RDP version 8.1. Den här versionen fixar även vissa visuella problem med Microsoft Office 2013 när den körs som en RemoteApp .
Version 8.1 av RDP möjliggör också ett "begränsad administratörsläge". Att logga in i det här läget kräver bara kunskap om det hashade lösenordet, snarare än om dess klartext , vilket gör en passning av hashattacken möjlig. Microsoft har släppt ett 82-sidigt dokument som förklarar hur man kan mildra denna typ av attack.
Version 10.0
Version 10.0 av RDP innehåller följande nya funktioner: AutoSize zoom (användbart för HiDPI-klienter). Dessutom inkluderades förbättringar av grafikkomprimeringen med hjälp av H.264/AVC.
Funktioner
- 32-bitars färgstöd. 8-, 15-, 16- och 24-bitars färg stöds också.
- 128-bitars kryptering, med RC4- krypteringsalgoritmen, från och med version 6. TLS-stöd sedan version 5.2.
- Audio Redirection tillåter användare att bearbeta ljud på ett fjärrskrivbord och få ljudet omdirigerat till sin lokala dator.
- Omdirigering av filsystem tillåter användare att använda sina lokala filer på ett fjärrskrivbord under terminalsessionen.
- Omdirigering av skrivare tillåter användare att använda sin lokala skrivare inom terminalsessionen på samma sätt som med en lokalt eller nätverksdelad skrivare.
- Port Omdirigering gör att applikationer som körs inom terminalsessionen kan komma åt lokala seriella och parallella portar direkt.
- Fjärrdatorn och den lokala datorn kan dela urklipp.
Microsoft introducerade följande funktioner med lanseringen av RDP 6.0 2006:
- Sömlösa Windows: fjärrprogram kan köras på en klientdator som betjänas av en fjärrskrivbordsanslutning. Den är tillgänglig sedan RDP 6.
- Fjärrprogram: applikationspublicering med filtypsassociationer på klientsidan.
- Terminal Services Gateway: möjliggör möjligheten att använda en front-end IIS-server för att acceptera anslutningar (över port 443 ) för back-end Terminal Services-servrar via en https -anslutning, liknande hur RPC över https tillåter Outlook-klienter att ansluta till en back-end- slut Exchange 2003-server. Kräver Windows Server 2008 .
- Autentisering på nätverksnivå
- Stöd för fjärrstyrning av Aero Glass Theme (eller Composed Desktop), inklusive ClearType -typsnittsutjämnande teknologi.
- Stöd för fjärrstyrning av Windows Presentation Foundation -program: kompatibla klienter som har .NET Framework 3.0- stöd kan visa fullständiga Windows Presentation Foundation- effekter på en lokal dator.
- Omskrivning av enhetsomdirigering för att vara mer allmänt ändamålsenlig, vilket gör det möjligt att komma åt en större mängd enheter.
- Fullt konfigurerbar och skriptbar via Windows Management Instrumentation .
- Förbättrad bandbreddsinställning för RDP-klienter. [ citat behövs ]
- Stöd för Transport Layer Security (TLS) 1.0 på både server- och klientänden (kan förhandlas om båda parter är överens, men inte obligatoriskt i en standardkonfiguration av någon version av Windows).
- Stöd för flera bildskärmar för att tillåta en session att använda flera bildskärmar på klienten (inaktiverar skrivbordskomposition)
Release 7.1 av RDP 2010 introducerade följande funktion:
- RemoteFX : RemoteFX tillhandahåller virtualiserat GPU-stöd och kodning på värdsidan; den levereras som en del av Windows Server 2008 R2 SP1.
Säkerhetsproblem
Version 5.2 av RDP i sin standardkonfiguration är sårbar för en man-i-mitten-attack . Administratörer kan aktivera kryptering av transportlager för att minska denna risk.
RDP-sessioner är också känsliga för insamling av autentiseringsuppgifter i minnet, vilket kan användas för att starta pass hashattacker .
I mars 2012 släppte Microsoft en uppdatering för en kritisk säkerhetssårbarhet i RDP. Sårbarheten gjorde att en Windows-dator kunde äventyras av oautentiserade klienter och datormaskar .
RDP-klientversion 6.1 kan användas för att avslöja namn och bilder på alla användare på RDP-servern (oavsett vilken Windows-version) för att välja en, om inget användarnamn anges för RDP-anslutningen. [ citat behövs ]
I mars 2018 släppte Microsoft en patch för CVE - 2018-0886 , en sårbarhet för fjärrkörning av kod i CredSSP, som är en leverantör av säkerhetssupport som är involverad i Microsoft Remote Desktop och Windows Remote Management, upptäckt av Preempt.
I maj 2019 utfärdade Microsoft en säkerhetskorrigering för CVE - 2019-0708 (" BlueKeep "), en sårbarhet som möjliggör möjligheten till fjärrkörning av kod och som Microsoft varnade för var "avmaskningsbar", med potential att orsaka omfattande störningar. Ovanligtvis gjordes patchar också tillgängliga för flera versioner av Windows som hade nått sitt slut, till exempel Windows XP . Ingen omedelbar skadlig exploatering följde, men experter var eniga om att detta var troligt och kunde orsaka omfattande skada baserat på antalet system som verkade ha förblivit exponerade och oparpade.
I juli 2019 utfärdade Microsoft en säkerhetskorrigering för CVE - 2019-0887 , en RDP-sårbarhet som påverkar Hyper-V .
Icke-Microsoft-implementationer
Det finns många icke-Microsoft-implementeringar av RDP-klienter och -servrar som implementerar delmängder av Microsoft-funktionaliteten. Till exempel är kommandoradsklienten rdesktop med öppen källkod tillgänglig för operativsystemen Linux/Unix och Microsoft Windows. Det finns många GUI-klienter, som tsclient och KRDC , som är byggda ovanpå rdesktop.
2009 gavs rdesktop till FreeRDP, ett nytt projekt som syftar till att modularisera koden, ta itu med olika problem och implementera nya funktioner. FreeRDP kommer med sin egen kommandoradsklient xfreerdp, som stöder Seamless Windows i RDP6. Runt 2011 beslutade projektet att överge forking och istället skriva om under Apache License , och lägga till fler funktioner som RemoteFX, RemoteApp och NTLMv2. En kommersiell distribution som heter Thincast startades 2019. En multiplattformsklient baserad på FreeRDP inklusive Vulkan/H.264-stöd följde sommaren 2020. Det finns en GTK-baserad klient som heter Remmina också baserad på FreeRDP.
FreeRDP erbjuder serverimplementationer för macOS och Windows. På andra system inklusive Linux kan mjukvarupaket bygga på FreeRDP för att implementera en komplett server. Weston, kompositören i Wayland , använder FreeRDP för att implementera en rdp-server som den kallar "rdp-backend". Denna server används i sin tur av Microsoft för att tillhandahålla grafikstöd (WSLg) i sitt Windows-undersystem för Linux .
RDP-servrar med öppen källkod på Unix inkluderar FreeRDP (se ovan), ogon project och xrdp . Windows Remote Desktop Connection-klienten kan användas för att ansluta till en sådan server.
Proprietära RDP-klientlösningar som rdpclient är tillgängliga som en fristående applikation eller inbäddad med klienthårdvara. Ett nytt åtkomstparadigm, webbläsarbaserad åtkomst, har gjort det möjligt för användare att komma åt Windows-datorer och applikationer på alla RDP-värdar, såsom Microsoft Remote Desktop (RDS) Session Hosts (Terminal Services) och virtuella skrivbord, såväl som fysiska fjärrdatorer.
Det finns också ett VirtualBox Remote Display Protocol (VRDP) som används i den virtuella VirtualBox- implementeringen av Oracle . Det här protokollet är kompatibelt med alla RDP-klienter, till exempel den som tillhandahålls med Windows, men kan, till skillnad från den ursprungliga RDP, konfigureras för att acceptera okrypterade och oskyddade lösenordsanslutningar, vilket kan vara användbart i säkra och pålitliga nätverk, som hem- eller kontors- LAN . Som standard vägrar Microsofts RDP-server anslutningar till användarkonton med tomma lösenord (men detta kan ändras med grupprincipredigeraren ) . Externa och gästauktoriseringsalternativ tillhandahålls också av VRDP. Det spelar ingen roll vilket operativsystem som installeras som gäst eftersom VRDP är implementerat på den virtuella maskinens (värd) nivån, inte i gästsystemet. Det proprietära VirtualBox Extension Pack krävs.
Patent
Microsoft kräver implementeringar från tredje part för att licensiera de relevanta RDP-patenten. Från och med februari 2014 är det fortfarande okänt i vilken utsträckning klienter med öppen källkod uppfyller detta krav.
Används vid cyberbrottslighet
Säkerhetsforskare har rapporterat att cyberbrottslingar säljer komprometterade RDP-servrar på underjordiska forum samt specialiserade olagliga RDP-butiker. Dessa komprometterade RDP:er kan användas som en "iscensättningsplats" för andra typer av bedrägerier eller för att komma åt känsliga person- eller företagsuppgifter. Forskare rapporterar vidare fall av cyberbrottslingar som använder RDP:er för att direkt släppa skadlig programvara på datorer.
Se även
- BlueKeep (säkerhetssårbarhet)
- Jämförelse av programvara för fjärrskrivbord
- Desktopvirtualisering
- SPICE och RFB-protokoll – andra protokoll för skrivbordsfjärrkontroll
- Virtuell privat server
- Säkert skal
- X11 vidarebefordran
externa länkar
- Remote Desktop Protocol – från Microsofts utvecklarnätverk
- Förstå Remote Desktop Protocol – från support.microsoft.com
- MS-RDPBCGR: Remote Desktop Protocol: Basic Connectivity and Graphics Remoting Specification – från Microsofts utvecklarnätverk