Articles

Fjärrskrivbordstjänster

nyckelserverkomponenten i RDS är Terminal Server (termdd.sys), som lyssnar på TCP-port 3389. När en Remote Desktop Protocol (RDP) – klient ansluter till den här porten är den taggad med en unik SessionID och associerad med en nyligen spawned konsolsession (endast session 0, tangentbord, mus och teckenläge). Login delsystemet (winlogon.exe) och GDI graphics subsystem initieras sedan, som hanterar jobbet för att autentisera användaren och presentera GUI., Dessa körbara filer laddas i en ny session, snarare än konsolsessionen. När du skapar den nya sessionen ersätts grafik-och tangentbords – /musdrivrutinerna med RDP-specifika drivrutiner: RdpDD.sys och RdpWD.sys. Den RdpDD.sys är enhetsdrivrutinen och den fångar UI rendering samtal till ett format som kan överföras över RDP. RdpWD.sys fungerar som tangentbord och musdrivrutin; den tar emot tangentbord och musingång över TCP-anslutningen och presenterar dem som tangentbord eller musingångar., Det gör det också möjligt att skapa virtuella kanaler, vilket gör att andra enheter, som skiva, ljud, skrivare och COM-portar kan omdirigeras, dvs kanalerna fungerar som ersättning för dessa enheter. Kanalerna ansluter till klienten över TCP-anslutningen; eftersom kanalerna nås för data informeras klienten om begäran, som sedan överförs över TCP-anslutningen till programmet. Hela proceduren görs av terminalservern och klienten, med RDP som förmedlar rätt överföring och är helt transparent för applikationerna., RDP-kommunikation krypteras med 128-bitars RC4-kryptering. Windows Server 2003 och framåt, det kan använda en FIPS 140 kompatibla krypteringssystem.

När en klient initierar en anslutning och informeras om en lyckad anrop av terminaltjänststapeln på servern laddar den upp enheten samt tangentbords – / musdrivrutinerna. UI-data som tas emot över RDP avkodas och renderas som användargränssnitt, medan tangentbordet och musingångarna till fönstret som är värd för användargränssnittet avlyssnas av drivrutinerna och överförs över RDP till servern., Det skapar också de andra virtuella kanalerna och ställer in omdirigering. RDP kommunikation kan krypteras; med antingen låg, medium eller hög kryptering. Med låg kryptering krypteras användarinmatning (utgående data) med en svag (40-bitars RC4) chiffer. Med medium kryptering krypteras UI-paket (inkommande data) också med denna svaga chiffer. Inställningen ” Hög kryptering (icke-export)” använder 128-bitars RC4-kryptering och ”hög kryptering (Export)” använder 40-bitars RC4-kryptering.

Terminal ServerEdit

Terminal Server är serverkomponenten i terminaltjänster., Den hanterar jobbet för att autentisera klienter, samt att göra programmen tillgängliga på distans. Det är också anförtrotts uppgiften att begränsa klienterna beroende på vilken åtkomstnivå de har. Terminalservern respekterar de konfigurerade begränsningspolicyerna för programvara, för att begränsa tillgången till viss programvara till endast en viss grupp användare. Information om fjärrsessionen lagras i specialiserade kataloger, som kallas Sessionskatalogen som lagras på servern., Session kataloger används för att lagra statlig information om en session, och kan användas för att återuppta avbrutna sessioner. Terminalservern måste också hantera dessa kataloger. Terminalservrar kan också användas i ett kluster.

i Windows Server 2008 har det ändrats betydligt. När du loggar in, om användaren loggade in på det lokala systemet med ett Windows Server-domänkonto, kan autentiseringsuppgifter från samma inloggning användas för att autentisera fjärrsessionen., Detta kräver dock att Windows Server 2008 är terminal server OS, medan klient OS är begränsat till Windows Server 2008, Windows Vista och Windows 7. Dessutom kan terminalservern konfigureras för att tillåta anslutning till enskilda program, snarare än hela skrivbordet, med hjälp av en funktion som heter RemoteApp. Terminal Services Web Access (TS Web Access) gör en RemoteApp session kan anropas från webbläsaren. Den innehåller TS Web Access Web part kontroll som upprätthåller listan över RemoteApps distribueras på servern och håller listan uppdaterad., Terminal Server kan också integreras med Windows System Resource Manager för att strypa resursanvändning av fjärrprogram.

Terminal Server hanteras av snapin-modulen Terminal Server Manager Microsoft Management Console. Den kan användas för att konfigurera inloggningskraven, samt för att genomdriva en enda instans av fjärrsession. Det kan också konfigureras med hjälp av Grupprincip eller Windows Management Instrumentation., Det är dock inte tillgängligt i klientversioner av Windows OS, där servern är förkonfigurerad för att tillåta endast en session och genomdriva användarkontots rättigheter på fjärrsessionen, utan någon anpassning.

Remote Desktop GatewayEdit

tjänsten Remote Desktop Gateway, även känd som RD Gateway, kan tunnelera RDP-sessionen med en HTTPS-kanal. Detta ökar säkerheten för RDS genom att inkapsla sessionen med Transport Layer Security (TLS). Detta gör det också möjligt att använda Internet Explorer som RDP-klient., Den officiella MS RDP-klienten för macOS stöder RD Gateway från och med version 8. Detta är också tillgängligt för iOS och Android.

den här funktionen introducerades i Windows Server 2008 och Windows Home Server-produkter.

Remote Desktop HTML5 Web ClientEdit

i slutet av 2018 släppte Microsoft Remote Desktop HTML5 Web Client. Klienten tillåter användare att ansluta till sina fjärrprogram eller till sina fjärrskrivbord utan att använda en installerad fjärrskrivbordsklient., Webbklienten använder TLS secured port 443 och använder inte RD-porten för att transportera trafik, utan förlitar sig enbart på fjärrskrivbordssessionens värdaspekt av Fjärrskrivbordstjänster.

Rolesedit

Remote Desktop Gateway gör det möjligt för behöriga användare att ansluta till virtuella skrivbord, Fjärrappsprogram och sessionsbaserade skrivbord via ett privat nätverk eller Internet. Remote Desktop Connection Broker Roll tillåter användare att återansluta till sina befintliga virtuella skrivbord, RemoteApp program och sessionsbaserade stationära datorer., Det möjliggör även lastfördelning över RD Session värdservrar i en session samling eller över poolade virtuella skrivbord i en poolad virtuell stationär samling, och ger tillgång till virtuella skrivbord i en virtuell stationär samling. Fjärrskrivbordssessionsvärd gör det möjligt för en server att vara värd för RemoteApp-program som sessionsbaserade skrivbord. Användare kan ansluta till RD Session värdservrar i en sessionssamling för att köra program, spara filer och använda resurser på dessa servrar. Användare kan komma åt Remote Desktop Session Host server genom att använda Remote Desktop Connection client eller genom att använda RemoteApp program., Remote Desktop Virtualization Host Gör det möjligt för användare att ansluta till virtuella skrivbord med hjälp av RemoteApp-och fjärrskrivbordsanslutning. Remote Desktop Web Access Gör det möjligt för användare att komma åt RemoteApp-och Desktop Connection via Start-Menyn eller via en webbläsare. RemoteApp och Desktop-anslutning ger användarna en anpassad vy av RemoteApp-program, sessionsbaserade stationära datorer och virtuella skrivbord. Remote Desktop Licensing gör det möjligt för en server att hantera RDS client access-licenser (RDS CALs) som krävs för varje enhet eller användare att ansluta till en fjärrskrivbordssession värdserver., RDS-Klientåtkomstlicenser hanteras med hjälp av Remote Desktop Licensing Manager.

RemoteAppEdit

RemoteApp (eller TS RemoteApp) är ett speciellt läge för RDS, tillgängligt i Windows Server 2008 R2 och senare, där fjärrsessionskonfiguration är integrerad i klientoperativsystemet. RDP 6.1-klienten levereras med Windows XP SP3, KB952155 för Windows XP SP2-användare, Windows Vista SP1 och Windows Server 2008. Användargränssnittet för RemoteApp återges i ett fönster över det lokala skrivbordet, och hanteras som alla andra fönster för lokala applikationer., Slutresultatet av detta är att fjärrprogram beter sig i stor utsträckning som lokala applikationer. Uppgiften att upprätta fjärrsessionen, samt omdirigera lokala resurser till fjärrprogrammet, är transparent för slutanvändaren. Flera program kan startas i en enda RemoteApp session, var och en med sina egna fönster.

en RemoteApp kan förpackas antingen som en.rdp fil eller distribueras via en.msi Windows Installer-paket., När den är förpackad som en.rdp – fil (som innehåller adressen till RemoteApp-servern, autentiseringsscheman som ska användas och andra inställningar) kan en RemoteApp startas genom att dubbelklicka på filen. Det kommer att åberopa Anslutningsklienten för fjärrskrivbord, som kommer att ansluta till servern och göra användargränssnittet. RemoteApp kan också förpackas i en Windows Installer-databas, installera som kan registrera RemoteApp i Start-menyn samt skapa genvägar för att starta den. En RemoteApp kan också registreras som handler för filtyper eller Uri., Öppna en fil som är registrerad hos RemoteApp kommer först att åberopa anslutning till fjärrskrivbord, som kommer att ansluta till terminalservern och sedan öppna filen. Alla program som kan nås via fjärrskrivbord kan serveras som en RemoteApp.

Windows 7 innehåller inbyggt stöd för RemoteApp publishing, men det måste aktiveras manuellt i registret, eftersom det inte finns någon RemoteApp management console i klientversioner av Microsoft Windows.,

Windows-Skrivbordet SharingEdit

I Windows Vista och framåt, Terminal Services innehåller även en multi-party dela skrivbord förmåga som kallas Windows Desktop Sharing. Till skillnad från terminaltjänster, som skapar en ny användarsession för varje RDP-anslutning, kan Windows Desktop Sharing vara värd för fjärrsessionen i samband med den inloggade användaren utan att skapa en ny session och göra skrivbordet eller en delmängd av den tillgänglig över RDP. Windows-skrivbordsdelning kan användas för att dela hela skrivbordet, en viss region eller ett visst program., Windows Desktop Sharing kan också användas för att dela flera bildskärmar skrivbord. När du delar applikationer individuellt (snarare än hela skrivbordet) hanteras windows (oavsett om de minimeras eller maximeras) oberoende på servern och klientsidan.

funktionaliteten tillhandahålls endast via ett offentligt API, som kan användas av alla program för att tillhandahålla skärmdelningsfunktionalitet. Windows Desktop Sharing API exponerar två objekt: RDPSession för delningssessionen och RDPViewer för tittaren., Flera tittarobjekt kan instansieras för ett Sessionsobjekt. En tittare kan antingen vara en passiv tittare, som bara kan titta på programmet som en screencast eller en interaktiv tittare, som kan interagera i realtid med fjärrprogrammet. ObjektetRDPSession innehåller alla delade program, representerade somApplication objekt, var och en medWindow objekt som representerar deras fönster på skärmen. Per-programfilter fånga programfönster och paketera dem som Window objekt., En tittare måste autentisera sig innan den kan ansluta till en delningssession. Detta görs genom att generera en Invitationmed hjälp avRDPSession. Den innehåller en autentiseringsbiljett och lösenord. Objektet serialiseras och skickas till tittarna, som måste presentera Invitation vid anslutning.

Windows Desktop Sharing API används av Windows Meeting Space och Windows Remote Assistance för att tillhandahålla programdelning funktionalitet bland nätverks kamrater.