PDA

Visualizza versione completa : [Debian8]Comportamento sudo, doppia password e domande privilegi



Kirk78
20-06-15, 13: 36
Ciao a tutti!
A differenza delle altre distro, come le *ubuntu, debian 8 all'atto dell'installazione mi ha fatto creare l'utente con la sua brava password e poi una password di root.
Ora volevo, come ho sempre fatto, da terminale fare per esempio

Only registered members can view code.
e mi aspettavo che mi chiedesse la password di root, ed invece mi chiede la password dell'utente corrente (anche se è l'unico per me) che ovviamente non può fare un comando privilegiato come si evince dal messaggio

Only registered members can view code.
Insomma me lo segnala a me... simpaticone. Lo so che significca solamente che lo mette su un log.
Visto alcuni dicono, magari non correttamente, che non è sicuro fare il su[/u] da terminale: come faccio a fare i comandi sudo con la richiesta della password di root temporanea per 15 minuti?
Oppure [i]su vale anche quello per 15 minuti, ed è tranquillamente utilizzabile? A quanto ho capito,ma su *ubuntu, con la chiusura del terminale si ritorna a non avere privilegi di root: corretto

Stavo anche leggendo

non è necessario che alcuno conosca la password di root (sudo richiede la password dell'utente attuale); si possono dare privilegi extra a utenti specifici temporaneamente e poi rimuoverli senza dover cambiare password
Questo come si fa? Forse con

Only registered members can view code.
e poi togliendolo con

Only registered members can view code.
?
Insomma vorrei un chiarimento generale, anche per newbie :ehmm per chi ci legge, sui privilegi in Debian 8.1, per gli amici jessie.

Grazie comunque dell'attenzione! :bai

Andy86
20-06-15, 14: 42
:bai

Devi mettere l'utente nel gruppo dei sudoers, cioè degli amministratori di sistema, altrimenti non hai i permessi per eseguire comandi di sistema. In debian, al contrario che nelle altre distro, l'utente creato all'installazione non è nei "sudoers" di default.


Only registered members can view code.

"/etc/sudoers" lo lascerei stare com'è.

La password dell'utente 'root', se è diversa da quella dell'utente corrente, ti serve quando ti logghi da tty digitando direttamente "root" come nome dell'utente, cosa che dovrai fare per lanciare il comando precedente se non riesci con "su" o "sudo -s" che dovrebbero fare esattamente (credo) la stessa cosa, ovvero aprire direttamente una shell.

Ah, tieni presente che in debian di default /sbin e /usr/sbin non sono nel path, per cui se lanci comandi di sistema devi farlo con il path completo:


Only registered members can view code.

Oppure inserire le suddette directory nel path.


Questo come si fa? Forse con

Non si fa, la wiki si riferisce solo al come funziona "sudo".
Il comando che hai postato serve "solo" per cambiare password, per cui ti sconsiglierei di fare esperimenti. :ghgh

edit: a meno che tu non ti riferissi al gpasswd, con la g davanti, ma non so se c'è su debian, visto che la wiki indica l'altro comando, altrimenti dovresti fare:


Only registered members can view code.

Per aggiungere UTENTE a GRUPPO.

pierino_89
20-06-15, 16: 54
Su debian di base non è previsto di default l'utilizzo di "sudo", quanto di "su" che permette di cambiare utente e diventare root a tutti gli effetti. Quando fai "exit" (o chiudi il terminale) la sessione di shell dell'utente root termina. Ogni volta che diventi root viene richiesta la password (niente 15 minuti).

La storia di "sudo" che sempre è più sicuro di su a me è sempre parsa una pagliacciata: ogni utente abilitato all'utilizzo di sudo può eseguire comandi con i privilegi con la sua password personale. Certo, in un sistema multiutente in questo modo si nasconde la password di root agli altri utenti ma, se tanto chiunque può usare sudo per modificarla, dov'è il vantaggio?

Se effettivamente vuoi avere lo stesso comportamento di ubuntu, puoi bloccare la password dell'utente di root. Cambiarla non è necessaria, dopotutto l'hai impostata in fase di installazione.

Kirk78
20-06-15, 17: 07
Quindi in parole povere su Debian su è consigliata, contrariamente a quanto detto da alcuni, e quando si chiude il terminale si torna come all'origine. Bhè se è così mi piace parecchiotto.
Non voglio mettere nei sudoers l'utente visto che anche i nipotini sono talmente bravi che alle volte mi hanno anche visto e memorizzato la password utente. Li amo alla follia ma non vorrei, visto che anche da piccoli sanno fare ciò che noi da piccoli neanche ci immaginavamo, che facessero qualche danno quando li lascio giocare sulla macchina. Non mi interessa avere lo stesso comportamento di *ubuntu visto che sto imparando anche Debian :eye

Basta mettere su nel terminale quindi?

Grazie! Provo e poi metto risolto a questo punto. :bai

pierino_89
20-06-15, 17: 16
Sì, e ci sono anche "gksu" e "kdesu" come richiesta password di root in modalità grafica.

Andy86
20-06-15, 18: 29
:bai

"kdesu" però funziona esattamente come "kdesudo", lo anteponi al comando che vuoi lanciare, non crea sessioni.


che facessero qualche danno quando li lascio giocare sulla macchina.

Forse è per quello che, essendo una distro userfriendly, hanno fatto quella scelta. :ghgh

Io ho preferito impostarlo in modo da fare (per abitudine) come sugli altri pc.

E mi sembra che ho anche messo gli sbin nel $PATH perché mi stufavo a mettere la directory tutte le volte. :m:

Kirk78
22-06-15, 09: 58
Ecco, mi mancavano altre alternative da dover ricordare! Suppongo che quelli che inziano per k* siano per "piattaforma" KDE. Comunque io, xfce, kdesudo non ce l'ho installato mentre kdesu pari di si anche se vedo un particolare il man dice:

Only registered members can view code.
come diceva il buon Andy86. Io ce l'ho in /usr/lib/kde4/libexec/. kdesudo è da installare, sicuramente perché non ho installato la versione KDE (rimpiazza kdesu per esempio su kubuntu).

Per gksu - Questo pacchetto fornisce interfacce GTK+ per su (gksu) e sudo (gksudo), che permettono agli utenti di dare una password ed eseguire comandi come root senza dover invocare su o sudo in un emulatore di terminale - non ce l'ho installato, su Debian 8 xfce, per default. Inoltre vedo che c'è il vecchio ed il nuovo gksu:

gksu is being replaced by gksu PolicyKit
gksu is a library and application used to ask the user for passwords to run programs as root. It is not a good option now that we have PolicyKit. Still, we still have applications which are not written to take advantage of the PolicyKit framework, and since making applications use it usually involves structural changes, a new version of gksu will provide functionality similar to the one provided by the current gksu to cover applications which still haven't been patched to use PolicyKit. The new gksu will use PolicyKit as backend, instead of su and sudo
Se si installa il pacchetto gksu 2.0.2-9 si installa quello vecchio o quello "nuovo"? :ehmm
Insomma devo ancora capire bene con tutte queste opzioni e replacement... Synaptic (grafico) richiede immediatamente la password di root con una richiesta specifica a finestra, quindi mi aspetterei che se "chiamo" un'applicazione grafica che ha bisogno di permessi di root Debian si comporti nella stessa maniera e probabilmente lo fa già. Mi sembra di capire che cfdisk sia la GUI di fdisk, ma se la chiamo da terminale siamo esattamente nella situazioni di fdisk. Devo forse creare un lanciatore di cfdisk e quindi avrò una richiesta di password con la sua brava finestra?

Non è che non mi piaccia utilizzare il terminale, mi chiedo solo se è possibile, per talune operazioni più usate come per esempio fdisk -l o alternativa con GUI, avere la richiesta di password con una bella GUI. Poi la memoria incomincia alle volte a vacillare :ehmm, quindi una cosa è ricordarsi la password di root, altro ricordarsi al volo di un comando con le varie opzioni.

:bai

pierino_89
22-06-15, 13: 35
Per gksu - Questo pacchetto fornisce interfacce GTK+ per su (gksu) e sudo (gksudo), che permettono agli utenti di dare una password ed eseguire comandi come root senza dover invocare su o sudo in un emulatore di terminale - non ce l'ho installato, su Debian 8 xfce, per default. Inoltre vedo che c'è il vecchio ed il nuovo gksu:

Se si installa il pacchetto gksu 2.0.2-9 si installa quello vecchio o quello "nuovo"? :ehmm

Che ti importa? Tanto fa sempre la stessa cosa :ghgh



Insomma devo ancora capire bene con tutte queste opzioni e replacement... Synaptic (grafico) richiede immediatamente la password di root con una richiesta specifica a finestra, quindi mi aspetterei che se "chiamo" un'applicazione grafica che ha bisogno di permessi di root Debian si comporti nella stessa maniera e probabilmente lo fa già.

Se l'applicazione può partire solo con i permessi di root, di solito nel lanciatore è già presente un helper che chieda la password. Se lanci il comando e basta, probabilmente si offenderà in qualche modo (vedi gparted).



Mi sembra di capire che cfdisk sia la GUI di fdisk, ma se la chiamo da terminale siamo esattamente nella situazioni di fdisk. Devo forse creare un lanciatore di cfdisk e quindi avrò una richiesta di password con la sua brava finestra?

Non è che non mi piaccia utilizzare il terminale, mi chiedo solo se è possibile, per talune operazioni più usate come per esempio fdisk -l o alternativa con GUI, avere la richiesta di password con una bella GUI. Poi la memoria incomincia alle volte a vacillare :ehmm, quindi una cosa è ricordarsi la password di root, altro ricordarsi al volo di un comando con le varie opzioni.

:bai
Se stai usando il terminale è inutile scomodare un helper grafico per i permessi di root. Diventa root dal terminale e poi lancia i comandi, non è più semplice?
Cfdisk è una "gui" in ncurses, quindi gira sempre nel terminale. Se vuoi una GUI vera, usa gparted.

Kirk78
22-06-15, 14: 36
Che ti importa? Tanto fa sempre la stessa cosa
Perché c'è scritto "gksu is a library and application used to ask the user for passwords to run programs as root. It is not a good option now that we have PolicyKit." :shock
helper... mi devo (ri)studiare anche cosa è quello e come utilizzarlo. Povera la mia memoria... non ram ma quella mia :triste

:bai

pierino_89
22-06-15, 14: 46
Perché c'è scritto "gksu is a library and application used to ask the user for passwords to run programs as root. It is not a good option now that we have PolicyKit." :shock
Sì, appunto, quindi perché la versione prima dovrebbe essere un'opzione migliore? :ghgh



helper... mi devo (ri)studiare anche cosa è quello e come utilizzarlo. Povera la mia memoria... non ram ma quella mia :triste

:bai
"helper" significa semplicemente "un coso che ti aiuta a fare altre cose"... Esattamente come tutta la famiglia di kdesu, gksu, kdesudo, gksudo, che non servono a nulla se non accoppiati a qualcos'altro.

Andy86
22-06-15, 17: 31
Se l'applicazione può partire solo con i permessi di root, di solito nel lanciatore è già presente un helper che chieda la password.

Solo che non è detto che sia quello che ti serve, perché il collegamento è già presente nel pacchetto così come lo ha fatto chi ha pacchettizzato il programma e non cambia a seconda del "dove installi il pacchetto". Io ho dovuto spesso sostituire a mano gksudo con kdesu nei collegamenti predefiniti.

pierino_89
22-06-15, 18: 37
Solo che non è detto che sia quello che ti serve, perché il collegamento è già presente nel pacchetto così come lo ha fatto chi ha pacchettizzato il programma e non cambia a seconda del "dove installi il pacchetto". Io ho dovuto spesso sostituire a mano gksudo con kdesu nei collegamenti predefiniti.
Io alla fine li ho installati entrambi, prima o poi con policykit risolveranno la questione. In realtà basterebbe un alias, ma tante volte vengono usate strane opzioni a righe di comando e poi non so mai come gestirle.