Hola si es posible.
debes crear un archivo bash script, dar permisos de ejecución o hacer una archivo de texto que ejecute los comando en el orden en nuestro equipo de trabajo.
ejemplo en Windows con el programa putty:
putty.exe -ssh administrator@host -P 22 -pw MiContraseña -m D:\AD\Scripts\script.txt
ejemplo en Linux:
ssh administrator@host -pw MiContraseña -m /home/Administrator/Documents/AD/Scripts/script.txt
Esta parte no la e probado aun.
A continuación lo que continua lo puedes ir agregando los comandos en tu archivo de script.txt a tu gusto.
Primero debemos configurar unas opciones del Dominio sobre la seguridad del tiempo de contraseñas, eso es al gusto:
sudo samba-tool domain passwordsettings set --complexity=on
sudo samba-tool domain passwordsettings set --store-plaintext=off
sudo samba-tool domain passwordsettings set --history-length=0
sudo samba-tool domain passwordsettings set --min-pwd-length=7
sudo samba-tool domain passwordsettings set --min-pwd-age=0
sudo samba-tool domain passwordsettings set --max-pwd-age=365
sudo samba-tool domain passwordsettings set --account-lockout-duration=30
sudo samba-tool domain passwordsettings set --account-lockout-threshold=0
sudo samba-tool domain passwordsettings set --reset-account-lockout-after=30
Cambiar la contraseña del administrator del dominio:
sudo samba-tool user setpassword administrator
password:
Si queremos que no expire la contraseña:
sudo samba-tool user setexpiry administrator --noexpiry
Hay que crea Unidades Organizativas (OU) con el Panel de Zentyal, no recuerdo los comando para esto...
Vendedores
Gerentes
Compras
Contadores
Abogados
Esta parte no estoy muy claro..
Creamos una plantilla LDIF
sudo nano ou.ldif
dn: ou=Vendedores,dc=example,dc=com
objectClass: organizationalUnit
ou: Vendedores
dn: ou=Compras,dc=example,dc=com
objectClass: organizationalUnit
ou: Compras
dn: ou=Gerentes,dc=example,dc=com
objectClass: organizationalUnit
ou: Gerentes
guardamos esta plantilla
Creo que es el comando para crear Unidades Organizativas (OU) es:
ldbadd --url=/var/lib/samba/private/sam.ldb ou.ldif
Y para modificar:
hay que agregar el atributo en la plantilla "changetype: add"
ldbmodify -H /var/lib/samba/private/sam.ldb ou.ldif
pero no tengo mucha información al respecto, no se si en zentyal se puede aplicar.
aquí conseguí información al respecto:
https://www.itzgeek.com/how-tos/linux/debian/install-and-configure-openldap-on-ubuntu-16-04-debian-8.html/2o aqui:
https://www.digitalocean.com/community/tutorials/how-to-use-ldif-files-to-make-changes-to-an-openldap-systemEste es el comando para crear grupos:
sudo samba-tool group add vendedores --group-type=Security --group-scope=Global
sudo samba-tool group add compras --group-type=Security --group-scope=Global
sudo samba-tool group add gerentes --group-type=Security --group-scope=Global
Tipo de Grupos y Alcance de Grupos de acuerdo a tu preferencia:
--group-scope=GROUP_SCOPE
Group scope (Domain | Global | Universal)
--group-type=GROUP_TYPE
Group type (Security | Distribution)
mas información:
https://windowserver.wordpress.com/2012/12/14/uso-recomendado-de-grupos-en-dominios-windows-server/Este es el comando para crear usuarios:
sudo samba-tool user create carlos --userou='ou=Vendedores'
sudo samba-tool user setpassword carlos
sudo samba-tool user create ana --userou='ou=Vendedores'
sudo samba-tool user setpassword ana
sudo samba-tool user create pedro --userou='ou=Vendedores'
sudo samba-tool user setpassword pedro
sudo samba-tool user create angela --userou='ou=Gerentes'
sudo samba-tool user setpassword angela
Si quieres crear un usuario con mas detalle:
sudo samba-tool user create angela password --given-name=Angela --surname=Pirelli --userou='ou=Gerentes'
si quieres que los usuarios tengas mas especificaciones debes agregar mas cosas al comando, ver esta web:
https://wiki.samba.org/index.php/Adding_users_with_samba_toolEste es el comando para agregar a los usuarios al grupo:
sudo samba-tool group addmembers vendedores pedro,angela,ana
Para que los usuarios no expiren la contraseña:
sudo samba-tool user setexpiry carlos --noexpiry