Pagina 1 di 1

Avviare servizi con utente non privilegiato

Inviato: sab ago 11, 2012 18:40
da miklos
Ciao a tutti,

sto creando lo script di avvio di un servizio. Premesso che questo servizio non ha fra i parametri l'utente che si desidera lanci il processo, mi sono dovuto un po' 'arrangiare' :D
Al momento ho utilizzato questa forma

Codice: Seleziona tutto

 /bin/su $user -c "$exec -f $configfile"
pero' mi sono accorto che questa forma costringe a creare un utente con shell abilitata, mentre invece a me piacerebbe di piu' poter usare un utente che non ha possibilità di login (quindi con shell /bin/false)

come potrei risolvere?!!?

ciau

Re: Avviare servizi con utente non privilegiato

Inviato: sab ago 11, 2012 18:56
da targzeta
Una soluzione è quella di disabilitare la shell giusto dopo aver eseguito il comando che ti interessa.

Però non ho studiato troppo la cosa, forse c'è un modo migliore.

Emanuele

Re: Avviare servizi con utente non privilegiato

Inviato: sab ago 11, 2012 19:05
da miklos
in che senso?!?! dici proprio modificare il file /etc/password prima e dopo l'avvio!?!?
comunque non so se ci avete mai fatto caso ma le funzioni di utilità presenti per compatibilità sotto /etc/init.d/functions non funzionano perchè in questi casi si aspettano la presenza del comando runuser che in slackware non esiste :(

Re: Avviare servizi con utente non privilegiato

Inviato: sab ago 11, 2012 19:08
da targzeta
Intendevo con:

Codice: Seleziona tutto

chsh


Emanuele

Re: Avviare servizi con utente non privilegiato

Inviato: sab ago 11, 2012 19:22
da miklos
grazie 1000... semplice e pulito :D con il tuo suggerimento funziona quindi per ora vado cosi.
pero' comunque se vi viene in mente qualche idea, oppure pensate che la tecnica che sto usando possa avere effetti collaterali sono tutto orecchie

Ciau

Re: Avviare servizi con utente non privilegiato

Inviato: lun ago 13, 2012 10:30
da ZeroUno
Aggiungi /sbin/nologin in /etc/shells e poi metti all'utente /sbin/nologin come shell permanente all'utente. E per buona misura lockagli la password (passwd -l).