Al contrario del script para obtener el listado de cuentas y a qué listas de distribución pertenecen, este script es para que liste sólo aquellas cuentas de un dominio que no pertenezcan a ninguna lista de distribución.
#!/bin/bash
LDAP_SERVER=`/opt/zimbra/bin/zmlocalconfig ldap_host | cut -d '=' -f2`
LDAP_PASS=`/opt/zimbra/bin/zmlocalconfig -s zimbra_ldap_password | cut -d ' ' -f3`
LDAP_USERDN=`/opt/zimbra/bin/zmlocalconfig zimbra_ldap_userdn | awk '{print $3}'`
LDAPSEARCH="/opt/zimbra/bin/ldapsearch -x -h $LDAP_SERVER -D $LDAP_USERDN -w$LDAP_PASS -LLL -o ldif-wrap=no "
DOMAIN=$1
# Listado de cuentas del dominio
accounts=`$LDAPSEARCH "(&(objectClass=zimbraAccount)(mail=*@$DOMAIN))" dn | sed 's/ou=people,//g' | sed 's/dn: uid=//g' | sed 's/,dc=/@/' | sed 's/,dc=/./g' | grep -v ^$`
for a in $accounts; do
busca=`$LDAPSEARCH "(&(objectClass=zimbraDistributionList)(mail=*@$DOMAIN)(zimbraMailForwardingAddress=$a))"`
if [ "$busca" == "" ]; then
echo "$a - NO TIENE DL ASIGNADA"
fi
done
Uso:
./reporte_cuentas_sin_dl.sh dominio.cl
0 Comentarios