Author Topic: Crear usuarios con script (solucionado con PHP)  (Read 5745 times)

fbravod

  • Zen Apprentice
  • *
  • Posts: 24
  • Karma: +0/-0
    • View Profile
Crear usuarios con script (solucionado con PHP)
« on: December 21, 2009, 06:59:59 pm »
Saludos
Felicito a los creadores de Ebox, es una excelente herramienta.
Ahora, necesito crear al menos 2000 usuarios y mediante el entorno web es muyyyy lento, asi que estoy creando un script para lo mismo, los usuarios a crear estan en una archivo plano, mi problema es que no tengo idea de como crear las cuentas de correo mediante el script, rogaria me den una guia o una idea para conseguirlo, esto es lo que tengo hasta el momento

#!/bin/bash
# aqui estan los usuarios
cat usuarios.csv | while IFS=, read user pass firstname lastname
do
smbldap-useradd -a -m -N $firstname -S $lastname -G alumnos $user
# el sbmldap-passwd esta modificado para que pueda crear contraseñas con script
smbldap-passwd $user $pass
# asigna cuota de disco a usuario basado en usuario previamente creado
edquota -p alumnos $user


Agradezco de antemano cualquier ayuda que pueda recibir
« Last Edit: March 09, 2010, 09:48:31 pm by fbravod »

J. A. Calvo

  • Zentyal Staff
  • Zen Hero
  • *****
  • Posts: 1986
  • Karma: +67/-3
    • View Profile
    • http://blogs.zentyal.org/jacalvo
Re: Crear usuarios con script
« Reply #1 on: December 21, 2009, 08:32:35 pm »
Zentyal Server Lead Developer

fbravod

  • Zen Apprentice
  • *
  • Posts: 24
  • Karma: +0/-0
    • View Profile
Re: Crear usuarios con script
« Reply #2 on: December 21, 2009, 08:35:20 pm »
Ok voy a hacer la prueba

fbravod

  • Zen Apprentice
  • *
  • Posts: 24
  • Karma: +0/-0
    • View Profile
Re: Crear usuarios con script
« Reply #3 on: December 23, 2009, 05:59:24 pm »
No es lo que quiero, si crea los usuarios aquel script, pero no me crea la cuenta de correo, ademas no puedo poner cuotas.
Sinceramente no se programar en perl, por eso trato de hacerlo con comandos de bash, asi que si alguien conoce como crear una cuenta de correo desde bash mucho lo agradecería me de una idea o sugerencia para saber que camino tomar

jsalamero

  • Zentyal Staff
  • Zen Hero
  • *****
  • Posts: 1419
  • Karma: +45/-1
    • View Profile
Re: Crear usuarios con script
« Reply #4 on: December 24, 2009, 03:54:23 pm »
no es posible hacerlo a través de bash, ebox está programado en perl y debes usar su api para hacer lo que quieres.

fbravod

  • Zen Apprentice
  • *
  • Posts: 24
  • Karma: +0/-0
    • View Profile
Re: Crear usuarios con script
« Reply #5 on: December 28, 2009, 06:04:55 pm »
Bueno con bash ya he creado los 2000 usuarios con contraseña y cuota de disco, solo me falta la creacion de las cuentas de correo. ¿podria alguien darme alguna idea de ese script de perl para crear las cuentas de correo?, como dije anteriormente no programo en perl pero con un pequeño empujon creo que si lo logro.

fbravod

  • Zen Apprentice
  • *
  • Posts: 24
  • Karma: +0/-0
    • View Profile
Re: Crear usuarios con script
« Reply #6 on: February 12, 2010, 06:06:28 pm »
vaya al fin he encontrado una manera de poder crear los usuarios con sus correos de manera masiva, gracias a este post http://forum.ebox-platform.com/index.php?topic=2962.0 he podido realizar lo que tanto dolor de cabeza me ha generado, aunque estoy seguro de que se puede mejorar, lo hice mediante php y javascript, aqui pongo el codigo que he utilizado
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
  <title>Crear usuarios en Ebox</title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <meta name="GENERATOR" content="Quanta Plus KDE">
</head>
<body bgcolor="#ffffff" text="#000000">
<table style="border: 2px dotted gray;margin-right:auto;margin-left:auto;">
<?

$lines = file('users');

?>

<tr style="text-align:center;background-color:#4a6890;color:#fff;">
<td>Usuario</td><td>Contrasenia</td><td>Nombre1</td><td>Nombre2</td><td>Apellido1</td><td>Apellido2</td></tr>

<?
foreach ($lines as $line_num => $line) {
       
        $datos = explode(",", $line);
?>     
        <tr>
        <td> <?= $datos[0] ?></td>
        <td style="background-color:#cccccc;"> <?= $datos[1] ?></td>
        <td> <?= $datos[2]  ?></td>
        <td style="background-color:#cccccc;"> <?= $datos[3] ?></td>
        <td> <?= $datos[4]  ?></td>
        <td style="background-color:#cccccc;"> <?= $datos[5] ?></td>
        <IFRAME src="https://ip_de_su_ebox/ebox/UsersAndGroups/AddUser?username=<?= $datos[0] ?>&name=<?= $datos[2]." ".$datos[3] ?>&surname=<?= $datos[4]." ".$datos[5] ?>&comment=Docentes&password=<?= $datos[1] ?>&repassword=<?= $datos[1] ?>&group=docentes&add=Add
        " width="0" height="0"
  scrolling="auto" frameborder="1">
</IFRAME>
        </tr>
<?     
        } //fin foreach
?>
</table>

</body>
La tabla lo saque de otra pagina, la pongo para saber que usuarios me esta creando, pero con esto SI se crean las cuentas de correo.
El archivo users que lee el php esta de la siguiente manera:
usuario,contraseña,nombre1,nombre2,apellido1,apellido2
Utilizo el ebox 1.4, la pagina en php y el de users lo puse en la ruta /var/www del ebox.
Si lo prueban, tengan paciencia que demora por la cargada de las paginas para insertar los usuarios.
Si lo mejoran compartan

fbravod

  • Zen Apprentice
  • *
  • Posts: 24
  • Karma: +0/-0
    • View Profile
Re: Crear usuarios con script
« Reply #7 on: February 12, 2010, 06:16:15 pm »
Ah por cierto se me olvidaba indicar que en el firefox pongan guardar contraseña cuando entren al ebox para que el ingreso  de usuarios sea de manera automatica

rafsalber

  • Zen Monk
  • **
  • Posts: 57
  • Karma: +0/-0
    • View Profile
Re: Crear usuarios con script
« Reply #8 on: March 05, 2010, 01:36:28 pm »
Excelente post.

¿Que ocurre con otros campos del usuario como por ejemplo "Privilegios de administrador" en la parte de Cuenta de compartición de ficheros o de PDC?
Para el caso que deseáramos importarlo para activarlo a desactivarlo

fbravod

  • Zen Apprentice
  • *
  • Posts: 24
  • Karma: +0/-0
    • View Profile
Re: Crear usuarios con script
« Reply #9 on: March 08, 2010, 04:30:12 pm »
eso lo hago en la plantilla de usuarios por defecto, ya que, en mi caso, son pocos los usuarios con privilegios de administrador lo deshabilito y luego lo pongo de manera manual.

rafsalber

  • Zen Monk
  • **
  • Posts: 57
  • Karma: +0/-0
    • View Profile
Re: Crear usuarios con script
« Reply #10 on: March 09, 2010, 05:40:02 pm »
Ok. Ha sido un error de concepto mío, pensaba que todos los usuarios que entraban en el dominio debían tener activado ese check, pero después de leer el manual veo que sólo es necesario en aquel usuario con el que se va a realizar la autenticación para meter por primera vez la máquina al dominio.