restricted sh

Ciao!
Qualcuno sa per caso come abilitare la restricted shell?
Io faccio bash -r ma il risultato �:

[root]# bash -r
bash: BASH_ENV: readonly variable
bash: SHELL: readonly variable
bash: PATH: readonly variable
bash: tput: No such file or directory
bash: dircolors: No such file or directory
bash: grep: No such file or directory
bash: grep: No such file or directory
bash: PATH: readonly variable
bash: grep: No such file or directory
bash: id: No such file or directory
[: =: unary operator expected
bash: cut: No such file or directory
bash: cut: No such file or directory
bash: grep: No such file or directory
bash: mesg: No such file or directory

sia come root che come altro utente. Il mio intento
era quello di metterla come bash di default per gli
utenti del mio collegio. Il problema � che la var
PATH viene azzerata e non posso eseguire altro che
i comandi built-in di bash. Io invece vorrei che le
variabili d'ambiente non fosero sovrascritte. N� con
l' opzione --rcfile ho avuto successo. Qualche idea?

Grazie in anticipo.

Qualcuno sa per caso come abilitare la restricted shell?
Io faccio bash -r ma il risultato è:

[root]# bash -r
[...errori...]

E` giusto che sia cosi`, la bash -r non permette di eseguire
i commandi del tuo .bashrc, .profile, ecc...

sia come root che come altro utente. Il mio intento
era quello di metterla come bash di default per gli
utenti del mio collegio. Il problema è che la var
PATH viene azzerata e non posso eseguire altro che
i comandi built-in di bash. Io invece vorrei che le
variabili d'ambiente non fosero sovrascritte. Nè con
l' opzione --rcfile ho avuto successo. Qualche idea?

La bash -r non ti permette di eseguire programmi al di fuori
della home dir, quindi il $PATH e` superfluo.

(il -r sta per "restricted" non per niente :slight_smile:

Vedi la sezione "RESTRICTED SHELL" di man bash.

Bye, Chris.

Quoting Galtarossa Umberto <galtarossa(a)pentium.isu.polimi.it>:

Ciao!
Qualcuno sa per caso come abilitare la restricted shell?
Io faccio bash -r ma il risultato è:

[root]# bash -r
bash: BASH_ENV: readonly variable
bash: SHELL: readonly variable
bash: PATH: readonly variable
bash: tput: No such file or directory
bash: dircolors: No such file or directory
bash: grep: No such file or directory
bash: grep: No such file or directory
bash: PATH: readonly variable
bash: grep: No such file or directory
bash: id: No such file or directory
[: =: unary operator expected
bash: cut: No such file or directory
bash: cut: No such file or directory
bash: grep: No such file or directory
bash: mesg: No such file or directory

sia come root che come altro utente. Il mio intento
era quello di metterla come bash di default per gli
utenti del mio collegio.

Be' intanto non ha nessun senso restringere
l'account root con una shell ristretta semplicemente
perche' basta rifare due chroot e si esce dalla shell
ristretta.
In secondo luogo io non sceglierei la bash,
ma piuttosto un wrapper della bash. Per esempio
quello scritto da aron gifford e posto al:
http://www.adg.us/computers/chrsh.html

Terzo, a meno di modifiche del server ssh
e' praticamente impossibile restringere gli accessi ssh,
o almeno alquanto laborioso.
Dovresti chrootare tutto il demone sshd per impedire
che un qualsiasi utente esegua comandi come questo:

ssh pipposki(a)tuohost.com:/bin/sh

Ogni forma di restricted shell funziona solo se il "mezzo"
da cui si connettono gli utenti e' locale o
se non consente in nessun modo esecuzione di comandi remoti.

In ogni caso dovresti preparare un ambiente locale
per ogni utente, consentendogli di eseguire solo
programmi non dannosi. E' realmente difficile
proteggere un host che abbia shell aperte anche
a un sottoinsieme limitato di persone.

Ciao,
deneb.

La bash -r non ti permette di eseguire programmi al di fuori
della home dir, quindi il $PATH e` superfluo.

(il -r sta per "restricted" non per niente :slight_smile:

Vedi la sezione "RESTRICTED SHELL" di man bash.

L'ho gi� vista ma mi dice solo quello che non posso fare.
Ti ringrazio comunque, almeno so che non era un errore :slight_smile:

Comunque l'ispirazione mi era venuta perch� al centro di calcolo
della mia uni dove le unit� zip sono in macchine dedicate. Si fa ssh
sulle workstation dove si ha l'account (o sftp) e si salva
sullo zip (C'� la Deb 3.0 e le workst. sono HP-UX).
Sulle macchine zip c'� la restricted shell ma posso sia
montare i dispositivi che dare comandi quali ssh, sftp ecc., anche
pine e links. Mi chiedevo se c'era un modo per fare lo stesso
dato che l� questi programmi possono essere avviati nonostante
la restricted sh.