Una delle problematiche comuni nelle infrastrutture informatiche è la gestione della password dell’account amministratore locale. Nelle infrastrutture basate su Active Directory questo account viene di fatto utilizzato raramente, poiché risulta essere preferibile che il personale IT utilizzi un account di dominio con privilegi di amministratore locale.
Per fare questo è necessario avvalersi della configurazione tramite Group Policy Preference nel ramo Computer / Control Panel Settings / Local Users and Groups, laddove però non è più possibile andare ad impostare la password ed il campo apposito risulta essere non più modificabile.
Campo Password tramite GPO non modificabile
Questo è dovuto ad un sistema di protezione introdotto da Microsoft, al fine di eliminare il problema per cui queste password inserite tramite pannelli Group Policy risultano essere salvate in chiaro o con encryption debole (a seconda delle configurazioni), rappresentando quindi un enorme problema di sicurezza. Questo grazie alla hotfix KB2962486 descritta nel documento MS14-025, che una volta installata permette di bloccare l’inserimento di password tramite la GUI del gestore Group Policy Management Console.
Ecco quindi che ad esempio l’impostazione che permette di inserire le credenziali sui sistemi aggiornati risulta essere bloccata. La soluzione, quindi, per la gestione delle credenziali degli utenti locali, come ad esempio l’Administrator non è quindi più gestibile direttamente da Group Policy Preference, ma è necessario ricorrere a LAPS, uno strumento gratuito messo a disposizione da Microsoft.
LAPS Local Administrator Password Solution di Microsoft
Local Administrator Password Solution (LAPS) è un tools Microsoft che consente quindi di procedere alla “randomizzazione” degli account degli amministratori locali in tutto il dominio, senza ricorrere ad un generatore centralizzato di password.
Local Administrator Password Solution (LAPS) permette di creare un repository centralizzato dove conservare le password per gli amministratori locali delle macchine (utenti che hanno il SID che finisce con .500) che sono collegate al dominio e vi permette di:
- Avere una password univoca e quindi diversa su ogni computer che LAPS gestisce
- Cambiare regolarmente la password dell’amministratore locale
- Conservare le password in un attributo del computer in Active Directory
- Configurare e controllare gli accessi alle password
- Trasmettere in maniera sicura le password ai computer gestiti
LAPS funziona sia sulle versioni a 32 bit che a 64 bit di Windows 10, Windows 8, Windows 8.1, Windows 7, Windows Vista, Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016 e richiede che il livello funzionale del dominio sia almeno Windows Server 2003 o successivo.
Prima di utilizzare il tool sarà necessario aggiornare lo schema di Active Directory con la cmdlet powershell Update-AdmPwdADSchema (inclusa nel modulo PowerShell che verrà installato insieme al tool) e distribuire il client MSI (magari utilizzando le Group Policy client-side extension).
Tramite LAPS è possibile gestire, tramite una GPO client-side extension (CSE):
- il nome del Local Administrator account
- il periodo di rinnovo e lunghezza e complessità della password
- rende disponibili tutta una serie di comandi PowerShell aggiuntivi per il management.
Il tool è scaricabile al seguente link: Local Administrator Password Solution (LAPS) del Microsoft Download Center e rende disponibile un setup unico per i cliente che installa l’AdmPwd GPO Extension o gli strumenti di gestione.
LAPS gestisce solo le password e dev’essere installato solo sul Domain Controller, con un utente che abbia il ruolo di “Schema Admins”. I membri di “Domain Admins” sono abilitati di Default a visionare le password e non gli può essere tolto il privilegio senza togliere il ruolo. Se il ruolo deve essere dato anche ad altri è possibile definire un gruppo di persone o una OU che possa accedere all’attributo password. Dal momento che gli attributi aggiunti da LAPS sono protetti da AD ACL la password è memorizzata in chiaro.
Come funziona LAPS
Dopo aver distribuito il client sulle macchine da amministrare vengono effettuate le seguenti operazioni:
- LAPS controlla se la password dell’amministratore è scaduta
- Se la password è scaduta viene generata una nuova password conservata in un attributo di AD del computer
L’installazione di LAPS prevede una modifica allo schema di AD perché la Password e l’Expiration Timestamp vengono memorizzati in attributi Active Directory dell’account computer (ms-Mcs-AdmPwd e ms-Mcs-AdmPwdExpirationTime).
Il funzionamento di LAPD prevede che il computer imposti una password casuale in autonomia anche in assenza di connessione AD e la trametta poi cifrata tramite Kerberos.
Inoltre, come spiegato dal team di sviluppo nelle Technical Specification di LAPS la criptografia della password in AD avrebbe comportato una serie di difficoltà implementative, senza però garantire un significativo aumento della sicurezza.
Una volta memorizzata in AD la password dell’account amministratore locale per poterla visualizzare non sarà necessario ricorrere alla lettura diretta dell’attributo ms-Mcs-AdmPwd dell’account computer, ma potrà essere utilizzata l’applicazione WinForm %ProgramFiles%\LAPS\AdmPwd.UI.exe.
La gestione della password sarà poi possibile da interfaccia grafica tramite lo strumento LAPS UI oppure alternativa sarà anche possibile utilizzare il cmdlet Powershell Get-AdmPwdPassword.
Installazione di LAPS
Fase 1 – Deploy
Scaricare e installare il componente con installazione standard.
Download componente: https://www.microsoft.com/en-us/download/details.aspx?id=46899
Creare, sul server, una cartella condivisa, accessibile al gruppo “Domain Computer” sia come permessi di condivisione, sia come NTFS. Inserire nella cartella gli .exe scaricati con cui abbiamo installato LAPS.
Questa condivisione deve essere raggiunta dalle macchine che dovranno installare il componente LAPS che verrà prelevato da questa share. Creare una policy (a dominio o su una specifica OU) per il DEPLOY del pacchetto. Impostare sotto: Computer > Policy > Software Settings
New > Package
Indicare il file .exe nella forma seguente: \\condivisione\….
Deve essere un percorso che la vm di destinazione possa raggiungere.
Nel Deploy METHODS selezionare “Advanced”
Impostare le proprietà in questo modo:
Nella scheda “security” riportare nuovamente “Domain Computers”
La stessa procedura deve essere seguita anche per il pacchetto a 32bit ma, una volta creato il pacchetto, assicurarsi di modificarlo per deselezionare l’opzione “Rendi questa applicazione X86 a 32 bit disponibile per i computer Win64”. (va rimossa).
Troverai questa opzione quando fai clic con il pulsante destro del mouse sul pacchetto x86> Proprietà> Distribuzione. Ciò garantirà che i computer a 64 bit ottengano la DLL a 64 bit e che i computer a 32 bit ottengano la DLL a 32 bit.
Se il tutto è stato registrato correttamente, nelle macchine TARGET apparirà LAPS come applicazione installata.
Fase 2 – Impostazioni Active Directory
A questo punto dobbiamo impostare (modificare) AD per le impostazioni di LAPS.
In PowerShell (direttamente sul Domain Controller) questi due comandi preparano la struttura AD, aggiungendo alcuni campi nelle proprietà degli oggetti COMPUTER:
Import-Module AdmPwd.PS
Update-AdmPwdADSchema
Se tutto va bene, otterremo la risposta del comando in “success”:
Abilitare i computer del dominio per fare in modo che possano gestire la propria password in autonomia. Per farlo gli diamo una “GRANT” di permessi con questo comando:
Set-AdmPwdComputerSelfPermission -OrgUnit “OU Server Microsoft”
esempio con OU più “annidate”:
Set-AdmPwdComputerSelfPermission -OrgUnit “OU=mia,OU=LAPS Lab,DC=Nexsys,DC=com”
è necessaria anche la GRANT (permission) per il reset delle password
Set-AdmPwdResetPasswordPermission -OrgUnit “OU=LAPS Lab,DC=ADShotGyan,DC=com”
A questo punto possiamo decidere la nostra policy.
ATTENZIONE: se viene specificato un nome nella voce “Name of Administrator account to manage”, Laps cercherà di modificare quello e non Administrator. Ci vogliono 2 policy diverse in caso di amministratori con nomi diversi. Una policy (per nome) gestisce solo quell’amministratore.
Formazione sulle GPO
Se sei interessato ad approfondire questo specifico argomento o tematiche similari, non perdere il corso Custom avanzato sulle Group Policy della durata di 2 giorni proposto da Nexsys.
Il corso si propone di approfondire la conoscenza di alcuni aspetti fondamentali di amministrazione quotidiana ed evoluta di una rete Microsoft, tramite le Group Policy. La maggiore consapevolezza delle potenzialità offerte dai nuovi sistemi operativi si traducono in un aumento di produttività. Questo grazie all’ottimizzazione del sistema e dei tempi di gestione. La frequenza del percorso formativo consente ai partecipanti di affrontare in autonomia concetti complessi e di assoluta attualità, quali la gestione centralizzata di sistemi Windows e l’automazione di procedure amministrative tramite settaggi Group Policy, eliminando la necessità di ricorrere allo scripting.