ejecutar script

Horst von Brand vonbrand en inf.utfsm.cl
Mar Oct 12 13:01:06 CLST 2004


=?ISO-8859-1?Q?=22Juan_Carlos_Mu=F1oz=22?= <jcmunoz en dcc.uchile.cl> dijo:
> Roberto Leiva M wrote:
> > como se puede ejecutar un script de un usuario cualquiera, con permisos 
> > de root ?

> Asi por ejecutarlo no mas? o con alguna restriccion? como por ejemplo 
> que un usuario en particular lo pueda ejecutar, o que un script sea 
> ejecutable como root por cualquier usuario?

Eso generalmente no se puede en Linux (SUID y SGID se ignoran en scripts,
porque son bastante faciles de violar dada la implementacion de exec(3) en
el caso de #! (shebang) al comienzo). Para eso tendrias que crear un
wrapper (programita C que corre SUID/SGID y unicamente ejecuta el script
del caso con los argumentos que recibe; facil de decir, un tanto complicado
de hacer bien...). Algunos lenguajes de scripting (p.ej. Perl) tienen
mecanismos (opcionales?) para mitigar (en gran parte) el problema.

Igual, concuerdo plenamente con Juan Carlos que esto amerita un estudio mas
profundo de lo que quieres lograr, y cuales son posibles soluciones. Y
ojala las soluciones _no_ pasen por ejecutar cosas como root, al menos no
indiscriminadamente. sudo es buena solucion: Suficientemente configurable
para casi cualquier cosa que quieras hacer, deja registros detallados de lo
que ocurre; suficientemente lioso de usar para que la gente lo piense dos
veces antes de tirarse (al menos a veces).
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513


Más información sobre la lista de distribución Linux