Limitare gli utenti
Luca Giuzzi
giuzzi a dmf.bs.unicatt.it
Lun 19 Lug 1999 22:36:03 UTC
Tutto dipende da quanto vuoi limitare l'accesso degli utenti ai files della
tua macchina e da che aree vuoi proteggere da loro (nota che come e' stato
detto da andrea questo e' ``contro la filosofia di unix'' nel senso che il
sistema non e' stato progettato con questo tipo di finalita'.
Una soluzione che e' forse leggermente eccessiva consiste nel replicare tutti
i files che un utente puo'/deve vedere (incluse, ad es. le librerie dinamiche,
etc.) nella sua home e poi far eseguire la sua shell tramite uno script che
la esegue attraverso chroot (1L).
Chroot mappa la directory indicata come root per il processo che viene lanciato
successivamente e, dal punto di vista pratico, evita che un utente possa
scendere nella parent.
[in questo quadro la cosa migliore sarebbe avere una copia delle librerie
dinamiche e degli eseguibili che gli utenti devono poter usare nell'area /home
in qualchecosa tipo, diciamo /home/bin e /home/lib e poi per ogni utente
avere degli hard links dai files in quelle directories a files nella sua
home (tipo /home/pippo/bin e /home/pippo/lib). La shell di pippo poi e'
chiamata via
chroot /home/pippo /home/pippo/bin/bash
(per esempio)... nota che i links non possono essere simbolici in questo caso!]
Una seconda soluzione e' quella di assegnare agli utenti una delle varie
`restricted shells' (queste sono shells che consentono di eseguire solamente
alcuni comandi predefiniti). Almeno una di queste era distribuita insieme con
pine e una altra era una opzione di bash (no... ho controllato la man page
di bash sotto rh6.0 e non se ne accenna proprio, ma sono certo che una
qualche vecchia release supportava il comando --restricted) ]
Io non le ho mai usate direttamente e non so quanto siano comode/sicure/robuste
(attacchi tipo stack overflow in questi casi potrebbero sortire effetti
spiacevoli... se il processo e' chroot-ed invece non si dovrebbero avere
grossi inconvenienti) ma potresti aver bisogno, come scriveva andrea, anche
di modificare altri programmi.
Ciao,
lg
Maggiori informazioni sulla lista
Lug
|