El día 20 de mayo de 2008 10:34, Jose Luis Garcia <[EMAIL PROTECTED]>
escribió:

> ya lo he probado, con comillas dobles y simples.
>
> El día 20 de mayo de 2008 10:31, glic3Rinu <[EMAIL PROTECTED]> escribió:
> >> el espacio me lo he comido, en realidad el comando que ejecuto es el
> siguiente
> >>
> >> ssh [EMAIL PROTECTED] su - root -c useradd -m -g grupo user2
> >
> > Quizas tengas que poner comillas dobles o simples :S:S
> >
> > ssh [EMAIL PROTECTED] su - root -c "useradd -m -g grupo user2"
> >
> > saludos,
> >
> > 2008/5/20 Jose Luis Garcia <[EMAIL PROTECTED]>:
> >> Hola,
> >>
> >> el espacio me lo he comido, en realidad el comando que ejecuto es el
> siguiente
> >>
> >> ssh [EMAIL PROTECTED] su - root -c useradd -m -g grupo user2
> >>
> >> en cuanto al sudo baraje esa opción pero debería de entrar en cada una
> >> de las máquinas y dar permisos en el sudo a ese usuario, y esatmos
> >> hablando de unas 300 máquinas, por eso necesito algún script que haga
> >> lo que necesito, ¿podeis ayudarme?
> >>
> >> gracias
> >>
> >> El día 20 de mayo de 2008 0:08, angel <[EMAIL PROTECTED]> escribió:
> >>> El lun, 19-05-2008 a las 09:24 +0200, Jose Luis Garcia escribió:
> >>>> Hola,
> >>>>
> >>>> tengo la siguiente duda, he creado un script, el cual debe de
> >>>> ejecutarse como root en una máquina remota. El problema es el
> >>>> siguiente, no me puedo conecta como root, mediante ssh, debo
> >>>> conectarme con otro usuario 8user1, p.e) y posteriormente ejecutar
> >>>> como un comando, por ejemplo añadir un usuario, en concretohe puesto
> >>>> lo siguiente en el script:
> >>>>
> >>>> ssh [EMAIL PROTECTED] su - root -c useradd -m - g grupo user2
> >>>>
> >>>>
> >>>> al ejecutar me arroja el siguiente error:
> >>>>
> >>>> useradd: Too few arguments.
> >>>> Try `useradd --help' or `useradd --usage' for more information
> >>>>
> >>>> ¿ que estoy haciendo mal? ¿ puedo hacerlo de otramanera?
> >>>>
> >>>>
> >>> Deberias utilizar sudo
> >>> pero el error que te esta marcando es por el '- g', va sin espacios
> >>>
> >>> man sudo
> >>>
> >>>> Graci as,
> >>>>
> >>>> Saludos
> >>>>
>

Buenas tardes... Antes de nada, disculpas a Jose y a Ángel, que les envié
mails "privados" en vez de enviarlos a la lista... pero el gmail no reconoce
cuándo el mail procede de una lista de correo y al darle a responder lo hace
sólo al destinatario, o al menos eso creo.

Ahora vamos a la chicha y por partes. Si te he entendido bien lo que tú
quieres hacer es ejecutar un script en una máquina remota A siendo un
usuario normal desde una máquina B (llamémosle local). Dicho script haría un
su, se autentificaría como root y ejecutaría ese useradd con los parámetros
pertinentes en esa máquina A.

La duda que tengo, es que aunque tú hagas un su - root, te tienes que
autentificar con la contraseña y hasta donde yo sé, y de hecho en el "man
su" no aparece, "su" no tiene la opción de autentificación por parámetro...
sólo la interactiva como hace por defecto...

Si lo anterior es cierto, se me ocurren varias soluciones para no usar el
"su" depediendo de lo que puedas o no puedas hacer en esos servidores...
1. Crearte un shell script en la máquina remota y ponerlo setuid, así el
paso de autentificarte como root te lo saltas.
2. Meter a tu usuario en el grupo de root y ejecutar el comando sin hacer
ese su.
3. Usar sudo
4. Habilitar el login de root en el sshd_config

Las propuestas están ordenadas de menor a mayor impacto, tanto en aspectos
de configuración como de seguridad, que eso ya dependerá de tu caso en
concreto.

Espero que haya sido de alguna utilidad y no haberme equivocado demasiado.

Un saludo!

Responder a