Microsoft 365 Modern Desktop Management – Distribuire i certificati su dispositivi mobili utilizzando Microsoft Intune ed il Simple Certificate Enrollment Protocol (SCEP)

L’obbiettivo delle organizzazioni è quello erogare i servizi in modo sicuro ed allo stesso tempo di garantire la massima produttività ed efficienza agli utenti finali.

Nelle moderne infrastrutture, la gestione dei certificati è una delle attività che permette di aumentare il livello della sicurezza informatica.

Le Group Policy sono la modalità più conosciuta per fare l’auto enrollment dei certificati all’interno di un’infrastruttura Active Directory. Ovviamente, è necessario che i destinatari utenti o computer siano joinati in AD.

L’utilizzo della funzionalità NDES (Network Device Enrollment Service) estende la possibilità di erogare i certificati anche a identità non presenti in Active Directory.

Microsoft Intune supporta l’utilizzo di SCEP (Simple Certificate Enrollment Protocol) per distribuire i certificati sui dispositivi mobili, permettendo così un’autenticazione semplice e sicura sulle applicazioni e servizi di un’organizzazione.

Requisiti:

  • Certification Authority: Windows Server 2008 R2 SP1 o successivi. Le Standalone CA non sono supportate. Nel caso in cui utilizziate una CA su Windows Server 2008 R2 SP1, è necessario installare una hotfix.
  • Server con ruolo NDES (Network Device Enrollment Service) utilizzato per la distribuzione dei certificati tramite SCEP (Simple Certificate Enrollment Protocol): Windows Server 2012 R2 o successivi. È necessario che il server sia joinato al dominio e che non eroghi il servizio di Certification Authority.
  • Microsoft Intune Certificate Connector: Windows Server 2012 R2 o successivi. Da installare sul server con ruolo NDES e con l’opzione Internet Explorer Enhanced Security Configuration disabilitata.
  • Azure Active Directory Application Proxy o Server con ruolo WAP (Web Application Proxy): per la pubblicazione all’esterno del servizio NDES.
  • Microsoft Intune.

Figura 1 – Distribuzione certificati su dispositivi mobili con Intune

Di seguito i dettagli dell’infrastruttura utilizzata come laboratorio:

In questa guida, troverete tutti i passaggi utili alla configurazione dell’infrastruttura on-premises e predisporre Microsoft Intune per l’erogazione dei certificati.

Per la configurazione di una Certification Authority: https://docs.microsoft.com/en-us/windows-server/networking/core-network-guide/cncg/server-certs/install-the-certification-authority

Creazione utente di servizio su Active Directory

In Active Directory procedete con la creazione di un nuovo utente di servizio per il ruolo NDES.

Figura 2 – Creazione utente di servizio per il ruolo NDES

Inserite una password complessa e spuntate l’opzione Password never expires.

Figura 3 – Inserimento password per il nuovo utente di servizio per il ruolo NDES

Configurazione del server ROB-VM-NDES01 per l’erogazione del servizio NDES

Loggatevi sul server che erogherà il servizio NDES ed aggiungete l’utente di servizio all’interno del gruppo locale IIS_IUSRS.

Figura 4 – Inserimento dell’utente di servizio nel gruppo IIS_IUSRS del server NDES

Aprite un prompt dei comandi come amministratore e lanciate il seguente comando per la configurazione del Service Principal Name (SPN):

setspn -s http/<NOMESERVER> CORP\<UTENTESERVIZIO>

Figura 5 – Configurazine SPN dell’utente di servizio sul server NDES

Procedete ora con la configurazione del ruolo NDES tramite Server Manager -> Add Roles and Features e selezionando Active Directory Certificate Services:

Figura 6 – Configurazione del ruolo NDES 1

Spuntate il servizio Network Device Enrollment Service:

Figura 7 – Configurazione del ruolo NDES 2

Figura 8 – Configurazione del ruolo NDES 3

Terminato il wizard di configurazione, è necessario inizializzare il ruolo NDES appena installato.

Figura 9 – Configurazione del ruolo NDES 4

Indicate l’account di servizio creato in precedenza come da seguente immagine:

Figura 10 – Inserimento account di servizio NDES

Successivamente selezionate la Certification Authority pubblicata nella vostra infrastruttura di Active Directory:

Figura 11 – Selezione della Certification Authority

La registration authority è necessaria per gestire le richieste di certificati che arrivano dal servizio NDES. È possibile personalizzare sia il nome che le informazioni opzionali. Nel mio caso, ho lasciato i parametri di default.

Figura 12 – Registration Authority info

Il servizio NDES utilizza due certificati e le relative chiavi per abilitare la registrazione dei dispositivi. Le organizzazioni potrebbero voler utilizzare diversi provider di servizi di crittografia (CSP) per archiviare queste chiavi oppure potrebbero voler modificare la lunghezza delle chiavi utilizzate dal servizio.

Se non avete particolari esigenze, si consiglia di mantenere le impostazioni predefinite.

Figura 13 – Configurazione delle chiavi dei certificati utilizzati dal servizio NDES

Terminato il wizard di inizializzazione del servizio NDES, assicuratevi che siano configurati i seguenti servizi del ruolo Web Server (IIS):

  • Web Server -> Security: Request Filtering;
  • Web Server -> Application Development: ASP.NET 3.5 e ASP.NET 4.5 o 4.7;
  • Management Tools -> IIS 6 Management Compatibility: IIS 6 Metabase Compatibility e IIS 6 WMI Compatibility.

Figura 14 – Verifica servizi installati ruolo IIS

In IIS manager, selezionate Default Web Site, cliccate su Request Filtering e successivamente Edit Feature Settings.

Inserite i valori nei campi Maximum URL lenght e Maximum query string come da seguente immagine:

Figura 15 – Modifica in IIS dei valori Maximum URL lenght e Maximum query string

Configurazione della Certification Authority

Recatevi sul server con a bordo la Certification Authority e tra gli Administrative Tools selezionate Certification Authority.

Una volta aperto lo snap-in, andate nelle proprietà della CA.

Figura 16 – Proprietà della CA

Tra le proprietà, selezionate il Tab Security, aggiungete l’account di servizio creato in precedenza e spuntate l’opzione Request Certificates.

Figura 17 – Aggiunta dei permessi dell’account di servizio sulla Certification Authority

Creazione del template del certificato NDES Server

Procedete ora con la creazione dei template NDES sulla CA, click destro su Certificate Teamplates -> Manage.

Figura 18 – Creazione template certificates NDES

Per la creazione del certificato NDES Server, duplicate il template Web Server già presente di default.

Figura 19 – Creazione del certifate template NDES Server

Nel tab General, indicate un nome al template NDES Server e la validità del certificato. Nel mio caso ho inserito come validità 4 anni.

Figura 20 – Inserimento nome e durata certificato NDES Server

Assicuratevi che nel tab Extensions, siano presenti le voci di Client Authentication e Server Authentication nelle Application Policies .

Figura 21 – Application Policies NDES Server Certificate Template

Nel tab Security, aggiungete il computer account del server NDES ed assegnate i permessi di Read ed Enroll.

Figura 22 – Permission per enrollment del certificato NDES Server all’oggetto computer

Creazione del template del certificato NDES Client

Terminata la creazione del template NDES Server, procedete con la creazione del template del certificato da distribuire con Microsoft Intune.

Duplicate il template User già presente di default:

Figura 23 – Creazione del template da distribuire con Intune

Indicate un nome al template e la durata di validità.

Consiglio: Annotate il valore del Template Name che sarà necessario per una modifica sulle chiavi di registro del server NDES.

Figura 24 – Creazione del template NDES Intune Cert

Nel tab Request Handling, togliete la spunta alla voce Allow private key to be exported.

Figura 25 – Opzione Allow private key to be exported disabilitata

Nel tab Subject Name, selezionate la voce Supply in the request. È necessario abilitare questa voce perché l’identità che farà richiesta del certificato non è presente in AD.

Figura 26 – Opzione Supply in the request abilitata

Assicuratevi che nel tab Extensions, le policies Application e Key Usage siano come da seguenti immagini.

Figura 27 – Application Policies nel template NDES Intune Cert

Figura 28 – Key Usage nel template NDES Intune Cert

Infine, nel tab Security assegnate all’utente di servizio NDES i permessi di Read ed Enroll del template.

Figura 29 – Assegnazione permission utente di servizio NDES

Per rendere disponibili i nuovi template dei certificati NDES, cliccate su Certificate Templates -> New -> Certificate Template to Issue.

Figura 30 – Issue dei certificate templates NDES

Selezionate i nomi dei due template creati in precedenza e date OK.

Figura 31 – Template disponibili per l’enrollment dei certificate

Pubblicazione del server con il ruolo NDES tramite Azure AD Application Proxy (o tramite Web Application Proxy)

Accedete al portale Azure e create una nuova on-premises application: Enterprise Applications -> Add an application -> Add your own on-premises application.

Indicate un nome, l’internal url del server NDES e selezionate come Pre Authentication la modalità Passthrough.

Figura 32 – Pubblicazione del servizio NDES tramite Azure AD Application Proxy

Recatevi sul server NDES e procedete con l’enrollment del certificato NDES Server: MMC -> Add or Remove Snap-in -> Certificates -> Computer Account.

In Personal -> Certificates -> All Tasks -> Request New Certificate.

Figura 33 – Enrollment del certificato NDES Server 1

Selezionate il template NDES Server e cliccate More information is required to enroll for this certificate. Click here to configure settings.

Figura 34 – Enrollment del certificato NDES Server 2

Nel tab Subject, compliate i seguenti campi:

  • Common name: FQDN del server NDES;
  • DNS: FQDN del server NDES ed url esterno pubblicato dall’Azure AD App Proxy o dal server WAP.

Figura 35 – Compilazione del tab Subject per l’enrollment del certificato NDES Server

Una volta terminato l’enrollment, sempre sul server NDES bindate il nuovo certificato sul Default Web Site.

Tasto dx del mouse -> Default Web Site -> Edit Bindings.. -> Site Bindings -> Add…

Figura 36 – Site binding NDES Server

Configurate i parametri come da seguente immagine e selezionando il certificato staccato in precedenza con template NDES Server.

Figura 37 – Configurazione del binding NDES Server

Terminata la configurazione lato IIS, lanciate regedit per modificare la chiave di registro GeneralPurposeTemplate (percorso HKLM\Software\Microsoft\Cryptography\MSCEP).

Il valore deve corrispondere con il template Name (annotato in precedenza) del certificato da distribuire con Microsoft Intune.

Figura 38 – Modifica chiave di registro su server NDES

Procedete ora con un riavvio del server NDES.

Configurazione di Microsoft Intune Certificate Connector

Accedete al portale di Microsoft Intune -> Device Configuration -> Certificate connectors -> Add -> Download the certificate connector software.

Figura 39 – Download Microsoft Intune Certificate Connector

Lanciate il setup sul server NDES.

Figura 40 – Setup Microsoft Intune Connector 1

Figura 41 – Setup Microsoft Intune Connector 2

Selezionate il certificato NDES Server (il certificato utilizzato in precedenza per la configurazione IIS)

Figura 42 – Selezione del certificato NDES Server nel setup del Microsoft Intune Connector

Figura 43 – Selezione del certificato NDES Server nel setup del Microsoft Intune Connector 2

Figura 44 – Setup Microsoft Intune Connector

Al termine del wizard , verrà avviato automaticamente il connettore NDES. In caso di problemi, l’applicazione è disponibile nel percoso: C:\Program Files\Microsoft Intune\NDESConnectorUI\NDESConnectorUI.exe

Effettuate il login con un account global administrator o intune administrator.

N.B. è necessario che sul server NDES sia disabilitata l’opzione Internet Explorer Enhanced Security Configuration.

Figura 45 – NDES Connector Sign-in

Figura 46 – NDES Connector configurato correttamente

Sul portale Microsoft Intune, verificate lo stato del connettore:

Figura 47 – Verifica stato connettore NDES su Intune

Distribuzione del certificato della Certification Authority su dispositivi Windows 10 con Microsoft Intune

Sul portale di Intune, procedete con la configurazione di un nuovo profilo di tipo Device Configuration.

Figura 48 – Distribuzione RootCA su dispositivi Win 10 con Intune

Figura 49 – Nome device configuration profile

In Configuration settings, caricate il certificato della vostra Certification Authority.

Il certificato è esportabile dal vostro server con il ruolo di CA, lanciando il comando certutil -ca.cert C:\RootCA.cer.

Figura 50 – Caricamento RootCA su Microsoft Intune

Assegnate il profilo ai dispositivi interessati. Nel mio caso ho selezionato All devices.

Figura 51 – Assegnazione profilo di distribuzione Root CA

Distribuzione dei certificati SCEP su dispositivi Windows 10 con Microsoft Intune

In Device configuration create un nuovo profilo di tipo SCEP certificate per la piattaforma Windows 10.

Figura 52 – Creazione profilo di tipo SCEP Certificate su WIndows 10

Figura 53 – Nome SCEP Profile

In Configuration settings, seguite i parametri come da seguente immagine:

N.B. nel mio caso ho definito il certificato di tipo device ed il Server Url fa riferimento all’indirizzo esterno pubblicato dall’Azure AD Application Proxy.

Figura 54 – Configuration Settings SCEP Profile

Figura 55 – Assegnazione del profilo a tutti i dispositivi gestiti da Intune

Verifiche corretta erogazione del certificato su dispositivo Windows 10

Il dispositivo sul quale ho eseguto le verifiche, è joinato solo in Azure AD e gestito da Microsoft Intune.

Figura 56 – Device Configuration su dispositivo Windows 10

Figura 57 – Certificato distribuito correttamente su dispositivo WIndows 10

Conclusioni

La possibilità di distribuire i certificati SCEP tramite Microsoft Intune non è limitata ai soli dispositivi Windows 10 ma è estesa anche ai sistemi operativi Android ed iOS ed a contesti utente.

Come abbiamo visto durante questa guida, le operazioni da eseguire sono numerose tanto quanto ai vantaggi nell’introdurre questa soluzione.

Per ulteriori dettagli, vi rimando all’articolo ufficiale https://docs.microsoft.com/en-us/mem/intune/protect/certificates-scep-configure