Obtener los Forwards

Daniel Eugenin M. -

Este script se puede usar cuando necesite obtener un listado de todos los Forwards (reenvíos) que tienen las cuentas de su dominio:

Script: buscarForwards.sh

 

NUEVO SCRIPT

#!/bin/bash

# Script que despliega un listado de los Forwards existentes
# Se le puede dar como parametro el dominio en el cual buscar


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


$LDAPSEARCH "(&(objectClass=zimbraAccount)(mail=*$DOMAIN)(|(zimbraMailForwardingAddress=*)(zimbraPrefMailForwardingAddress=*)))" zimbraMailForwardingAddress zimbraPrefMailForwardingAddress | sed 's/ou=people,//g' | sed 's/dn: uid=//g' | sed 's/,dc=/@/' | sed 's/,dc=/./g' | sed ':a;N;$!ba;s/\nzimbraPrefMailForwardingAddress//g' | sed ':a;N;$!ba;s/\nzimbraMailForwardingAddress//g' | grep -v ^$

 

 

 

 

ANTIGUO

 

#!/bin/bash

DOMAIN="sudominio.cl"

for a in `zmprov -l gaa $DOMAIN`; do echo "ga $a zimbraMailForwardingAddress"; done > /tmp/getfowards.zm

zmprov < /tmp/getfowards.zm > /tmp/Forwards.txt

cat /tmp/Forwards.txt | grep -v "^prov>" | grep -B1 zimbraMailForwardingAddress | sed ':a;N;$!ba;s/\n/" /g' | sed 's/" --" # name /\n/g' | sed 's/zimbraMailForwardingAddress: /, /g' > /tmp/FinalForwards.txt

 

 

Nota: puede dejar la variable DOMAIN vacía, y buscará en todos los dominios que tenga.

 

Con esto se tiene un listado más o menos ordenado de los Forwards existentes.

En la primera columna corresponde a la cuenta, y los siguientes son los forwards que posee.

 

Ahora, si desea buscar un forward, tan sólo debe ejecutar:

grep <elforwardquebusca> /tmp/Final/Forwards.txt

 

 

 

 

0 Comentarios

Inicie sesión para dejar un comentario.
Tecnología de Zendesk