Windows Server 2016 Remote Desktop Services QuickStart
Windows Server consente la gestione di sessioni desktop remoto e la pubblicazione di applicazioni via RemoteApp tramite l’installazione dei Remote Desktop Services (in passato conosciuti come Terminal Services). La modalità di installazione QuickStart (introdotta in Windows Server 2012) consente di implementare un nuovo ambiente RDS in pochi semplici passi con i tre ruoli principali (session host, connection broker e web access) distribuiti in un unico server.
Ruoli infrastruttura RDS
I servizi RDS consentono di implementare soluzioni di virtualizzazione basate su due modelli:
- Virtualizzazione di sessioni, dove viene implementato un ambiente multisessione che sfrutta le funzionalità integrate in Windows Server. Questa soluzione è basata sul ruolo di Session Host ed è quella che verrà approfondita in questo articolo.
- Virtual Desktop Infrastructure (VDI), dove viene fornita all’utente una macchina virtuale con in esecuzione un sistema operativo desktop. Questa soluzione è basata sul ruolo di Virtualization Host.
Prima di analizzare la procedura di setup è necessario un breve riepilogo di quelli che sono i ruoli principali di un ambiente RDS:
- Remote Desktop Session Host (RDSH), consente al server di accettare le connessioni desktop remoto. Le Sessioni Desktop e le RemoteApp vengono raggruppate in una sorta di
contenitori chiamati Collections (Insiemi). Ogni session host può ospitare una Collection. - Remote Desktop Connection Broker (RDCB), abilita il bilanciamento e la riconnessione delle sessioni tra più Session Host di un’infrastruttura RDS.
- Remote Desktop Web Access (RDWA), consente l’accesso a sessioni desktop remoto o RemoteApp tramite web browser o dal menù Start di Windows. Richiede l’installazione di ruoli aggiuntivi come il Web Server IIS.
- Remote Desktop Gateway, consente di estendere l’accesso a sessioni desktop e RemoteApp dal mondo esterno.
- Licensing Server, necessario per la gestione delle CAL RDS. Ogni utente o dispositivo per avviare una sessione necessita di CAL.
- Virtualization Host, necessario per la gestione di ambienti VDI. Richiede Hyper-V.
Installazione
Prima di avviare il setup è necessario soddisfare alcuni prerequisiti. E’ necessario disporre di una macchina con sistema operativo Windows Server 2016 configurata con indirizzo IP statico e appartenente ad un dominio Active Directory. Fino a Windows Server 2008 R2 i servizi RDS potevano essere installati anche su macchine in Workgroup (seppur con alcune limitazioni), a partire da Windows Server 2012 è diventata obbligatoria l’appartenenza ad un dominio. E’ infine necessario essere amministratori della macchina.
Per avviare la fase di setup accedere a Server Manager e selezionare la voce “Aggiungi ruoli e funzionalità”.
Operazioni Preliminari: premere sul tasto “Avanti” per proseguire.
Tipo di installazione: Selezionare “Installazione di Servizi Desktop remoto”.
Tipo di distribuzione: selezionare “Avvio rapido”.
Scenario di distribuzione: selezionare “Distribuzione di desktop basati su sessioni”.
Selezione dei server: verificare che il server corrente sia selezionato.
Conferma: Selezionare l’opzione “Riavvia automaticamente il server di destinazione se necessario” e premere sul tasto “Distribuisci”.
A questo punto la fase di installazione dei ruoli ha inizio (durante questa fase il server verrà riavviato automaticamente).
Terminata l’installazione è possibile gestire l’ambiente RDS utilizzando Server Manager. L’installazione in modalità QuickStart crea un insieme di connessioni di default chiamato QuickSessionCollection. Le impostazioni iniziali dell’insieme consentono a tutti gli utenti di dominio (Domain Users) l’avvio di sessioni remote, inoltre sono già pubblicate tre RemoteApp di esempio. E’ possibile modificare le proprietà della Collection dal menù “Attività” premendo il tasto “Modifica Proprietà”.
Analogamente è possibile modificare le proprietà delle RemoteApp pubblicate o pubblicarne di nuove.
A questo punto il server è operativo in modalità di valutazione a 120 giorni. Se necessario è possibile installare il license server aggiungendo il ruolo specifico.
Accesso Client
Il metodo più comune per avviare connessioni a sessioni desktop è l’utilizzo del client desktop remoto (mstsc.exe), ma questo non è l’unico.
Sfruttando le funzionalità offerte dal ruolo “RDS web access” è possibile utilizzare un browser web collegandosi all’indirizzo:
http://nome_server/rdweb
Dopo aver effettuato l’autenticazione è possibile accedere alle RemoteApp e alle sessioni desktop per le quali si è stati autorizzati.
Un’altra modalità di accesso alle RemoteApp consinste nell’utilizzo di “Connessioni RemoteApp e desktop” dal Pannello di Controllo di Windows. E’ possibile configurare una connessione selezionando lo strumento “Accedi a RemoteApp e desktop”. L’indirizzo al quale far puntare la connessione è il seguente:
http://nome_server/RDwweb/Feed/webfeed.aspx
Perchè la procedura venga completata è necessario l’utilizzo di certificati attendibili. Se si stanno utilizzando certificati self-signed è necessaria l’importazione lato client dei certificati generati sul server. Dal server RDS avviare la Microsoft Management Console (mmc.exe), dal menù “File” selezionare “Aggiungi/Rimuovi snap-in”, selezionare “Certificati”, una volta premuto sul tasto “Aggiungi” selezionare “Computer Locale”. Il certificato self-signed del server dovrebbe trovarsi nell’archivio Personale.
Selezionare il nome del certificato con il tasto destro del mouse, selezionare “Tutte le attività” ed “Esporta”. Tramite il wizard esportare il certificato in formato .P7B selezionando la voce “Se possibile includi tutti i certificati nel percorso di certificazione”.
Il certificato va copiato ed installato su ogni client. Per l’installazione avviare la Microsoft Management Console (mmc.exe), dal menù “File” selezionare “Aggiungi/Rimuovi snap-in”, selezionare “Certificati”, una volta premuto sul tasto “Aggiungi” selezionare “Computer Locale”. Nell’archivio “Autorità di certificazione radice attendibili” selezionare con il tasto destro l’archivio “Certificati”, selezionare “Tutte le attività” e “Importa…”.
Seguire il wizard ed importare il file del certificato (selezionare il formato .p7b).
Una volta terminata l’importazione il certificato viene aggiunto a quelli già presenti nell’archivio.
A questo punto l’aggiunta del feed da pannello di controllo dovrebbe venire completata senza errori.
Le RemoteApp sono ora disponibili direttamente dal menù Start di Windows.
Creazione nuovi certificati Self Signed
I certificati autogenerati in fase di installazione hanno una durata di 6 mesi. E’ possibile creare nuovi certificati self signed con una scadenza più lunga utilizzando il seguente comando powershell:
New-SelfSignedCertificate -Subject “server.subject” -DnsName “server.name” -CertStoreLocation “cert:\LocalMachine\My” -KeyAlgorithm RSA – KeyLength 2048 -KeyExportPolicy Exportable -NotAfter (Get-Date).AddYears(10)
E’ necessario compilare correttamente i parametri Subject e DnsName. La durata del certificato corrisponde al parametro passato alla fine del comando (nell’esempio 10 anni). Il parametro -CertStoreLocation “cert:\LocalMachine\My” salva il certificato nell’archivio personale dello store dei certificati.
E’ necessario esportare il certificato creato su file in formato .pfx includendo la chiave privata (è richiesta la protezione con password). Per sostituire il certificato utilizzato dai ruoli RDS avviare Server Manager e nel riquadro “Panoramica della distribuzione” selezionare “Attività” e “Modifica proprietà distribuzione”.
Accedere al menù “Certificati”. Il livello di default per tutti i ruoli dovrebbe essere “Non configurato”. Per ciascun ruolo utilizzare il tasto “Seleziona certificato esistente” e selezionare il file del certificato esportato in precedenza.
Al termine delle operazioni il livello per tutti i ruoli dovrebbe diventare “Non attendibile”.
Tutti i ruoli della distribuzione utilizzano ora il nuovo certificato autogenerato con durata 10 anni. E’ sempre necessario importare il certificato sui client per evitare warning a livello di browser o per configurare correttamente “Connessioni RemoteApp e desktop” dal Pannello di Controllo di Windows.
Riferimenti
https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/welcome-to-rds