LaoBlog

Policykit + LDAP su (K)Ubuntu


Dalla versione 13.04, Ubuntu non utilizza più il comando sudo per operazioni quali l'aggiornamento software attraverso programmi dotati di GUI come Muon o Synaptic. Una volta eseguito uno dei suddetti programmi e selezionato un pacchetto da installare / rimuovere infatti, il sistema chiede di immettere una password.
In un sistema dove l'autenticazione degli utenti utilizza come backend LDAP, utenti che precedentemente potevano effettuare tali operazioni privilegiate essendo inseriti nel file /etc/sudoers o simili, si vedono ora impediti in tale mansione. La password dell'utente, o anche quella dell'amministratore risultano inutili in tale contesto. Se ci fate caso, all'atto di richiedere la password, non viene mostrato il nome dell'utente attualmente loggato e che ha lanciato l'applicazione. Inoltre, in seguito ad un tentativo fallito di procedere nell'autenticazione, sotto i dettagli dell'errore compare almeno un collegamento che dimostra come sia ora Policykit a farsi carico della concessione del privilegio richiesto.Per ovviare a tale inconveniente, è sufficiente agire, come utente root, sul file/etc/polkit-1/localauthority.conf.d/51-ubuntu-admin.confed aggiungere un gruppo, esistente su LDAP, di utenti ai quali viene consentito di effettuare le consuete operazioni privilegiate per le quali si utilizzava il comando sudo. Occorre quindi modificalre la linea AdminIdentities=unix-group:sudo;unix-group:adminin qualcosa del tipo:AdminIdentities=unix-group:sudo;unix-group:admin;unix-group:AdministratorsCome già detto, il gruppo Administrators (che ovviamente può avere un altro nome) deve già esistere all'interno della struttura di LDAP ed essere popolato da quegli utenti ai quali si vogliono concedere sulla macchina locale (non sul Dominio LDAP ovviamente!) i privilegi una volta appannaggio del comando sudo.Policykit è uno strumento che attualmente non utilizzo, e che in certi casi può anche risultare fastidioso. In altri contesti, magari tdi tipo enterprise, può essere utilizzato per affinare in modo più preciso rispetto al comando sudo le varie autorizzazioni che si vogliono concedere agli utenti locali.Per ulteriori informazioni, leggete https://it.wikipedia.org/wiki/PolicyKit