Tema:
Esta tarde estuve trabajando en la creación de un script que nos permitiera resetear los password de un listado voluminoso de cuentas de correo electrónico de una implementación de Zimbra. Si no fuese por el script nos hubiese tocado resetear las claves una a una desde la consola gráfica de administración :S
El script lo bauticé como resetPasswd.sh, es bien sencillo y fácil de usar:
./resetPasswd.sh
<FILE> es la ruta del archivo que contiene el listado de las cuentas de correo electrónico en el siguiente formato:
imarx@miempresa.com.ec
ehinojosa@miempresa.com.ec
jfranco@miempresa.com.ec
...
<NEW_PASSWORD> es el nuevo password que voy a colocar a todas las cuentas del listado.
- Nota: En mi caso, para generar los archivos utilice la siguente instrucción:
/opt/zimbra/bin/zmprov -l gaa miempresa.com.ec | grep ventas > /tmp/usuarios-ventas-07032012.txt
Me ayudé del comando grep para encontrar un patrón específico que identifica a mis cuentas, de no existir dicho patrón toca generar el listado completo y depurarlo manualmente, aunque eso sigue siendo más rápido que hacer todo el proceso desde la consola gráfica jejeje
Ahora sí, con Ustedes, el bendito script :D:
#!/bin/sh
## Iknaxio Marx - 07/03/2012
## Resetear el password de un listado de cuentas
##
## Uso:
## ./resetPasswd.sh
##
echo ""
if [ $# -ne 2 ]
then
echo "Argumentos incorrectos!!!"
echo " Uso: ./resetPasswd.sh "
echo ""
exit -1
fi
if [ -r $1 ]
then
ACCOUNTS=`cat $1`
for ACCOUNT in $ACCOUNTS
do
echo -e "- $ACCOUNT..."
/opt/zimbra/bin/zmprov sp $ACCOUNT $2
/opt/zimbra/bin/zmprov ma $ACCOUNT zimbraPasswordMustChange TRUE
done
else
echo "El archivo $1 no existe!!!"
exit -1
fi
Espero que les sirva.
Salu2
Comentarios
Para forzar el cambio de contraseña
Para forzar el cambio de contraseña, simplemente agregamos la siguiente línea:
/opt/zimbra/bin/zmprov ma $ACCOUNT zimbraPasswordMustChange TRUE
Quedando el ciclo de la siguiente manera:
for ACCOUNT in $ACCOUNTS
do
echo -e "- $ACCOUNT..."
/opt/zimbra/bin/zmprov sp $ACCOUNT $2
/opt/zimbra/bin/zmprov ma $ACCOUNT zimbraPasswordMustChange TRUE
done
"Transporta un puñado de tierra todos los días y construirás una montaña" - Confucio
floss.iknaxio.net