[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RiminiLUG-General] Debian, gksu e amministrazione del sistema



Il 04 giugno 2010 22.50, Ivan Tarozzi <itarozzi@xxxxxxxxx> ha scritto:
> Il giorno gio, 03/06/2010 alle 23.36 +0200, Umberto Zappi ha scritto:
>> Il 02 giugno 2010 14.08, Ivan Tarozzi <itarozzi@xxxxxxxxx> ha scritto:
>> > In riferimento ai dubbi emersi nella serata di ieri volevo aggiornare la
>> > ML su alcune prove fatte e riassumere un attimo quanto emerso, per
>> > capire meglio come funziona il tutto. Come potrete vedere ci sono ancora
>> > alcune cose che proprio non mi sono chiare: [...]
>> >
>> Con sudo e' possibile limitare l'uso di comandi solo a singoli
>> amministratori o gruppi di persone.
>> Per es: e' possibile limitare ad alcune persone il comando apt-get per
>> effettuare solo le installazioni e ad altri la sola rimozione dei
>> programmi.
>> Inoltre il comando sudo permette, se programmato, di assumere anche
>> solo l'identita' di alcuni utenti di sistema per eseguire specifici
>> comandi
>>
>
> Direi che sono piuttosto concorde con la tua analisi. L'unica cosa che
> non sapevo si potesse fare è permettere ad esempio la sola rimozione del
> sw o la sola installazione (... davvero non saprei come poter fare - una
> volta che do' il permesso di avviare synaptic, o usare apt-get, direi
> che l'utente non ha limiti) forse attraverso qualche file cfg di apt?
> studierò meglio :)

Con synaptic non saprei come limitare la sola installazione o la sola
rimozione di programmi.
Diverso e' il caso di comandi a linea di comando.
Si puo' configurare sudo per autorizzare uno o piu' utenti o uno o
piu' gruppi ad eseguire solo determinati comandi e opzionalmente solo
con determinati argomenti.
Cosi' per esempio, e' possibile autorizzare di effettuare per alcuni
utenti solo
    apt-get install ...
o
    apt-get -s install ...

Per questo si puo' configurare sudo piu' o meno cosi':

User_Alias  INSTALLER = riminilug, user1, user2

Cmnd_Alias APTGETINST = /usr/bin/apt-get -s install * ,
/usr/bin/apt-get install *

INSTALLER   ALL = (root) APTGETINST


In questo esempio ho definito un alias INSTALLER a cui corrisponde una
lista ipotetica di 3 utenti
Ho anche definito un altro alias con una lista di comandi permessi.
Avendo specificato gli argomenti, i comandi possono solo essere
eseguiti comprendendo questi argomenti. Il carattere * indica che
possono seguire altri argomenti oltre a quelli indicati.
L'ultima riga indica chi e cosa puo' fare.
In particolare e' indicato che la lista degli utenti definita come
INSTALLER puo' eseguire da tutti i computer dove e' presente questo
file di configurazione (ALL - ma per il ns. caso e' superfluo fare
delle limitazioni) la lista di comandi indicati in APTGETINST,
assumendo solo l'identita' di root (root)

Qualsiasi utente puo' eseguire il comando sudo -l (L minuscola) per
verificare l'elenco dei comandi consentiti.

Ciao
-- 
Umberto

>
>>  [...]