Тянем почту из AD в Zimbra

Приветствую всех...
Собственно вопрос следующий, поставил Zimbra 8, с web админки настроил проверку подлинности через AD, (теперь юзеры которых я в ручную вводил для авторизации используют свой доменный пароль), настроил GAL (LDAP), а вот импортировать почтовые адреса пользователей с AD  не могу пытаюсь выковырять их из каталога LDAP через "мастера миграции".
Прописываю адрес LDAP, DN привязку, пароль (в AD он создан и авторизацию проходит), в поисковой базе LDAP  прописываю ( dc=server, dc=com). в фильтрах LDAP (|( cn=%s*)( sn=%s*)( gn=%s*)( mail=%s*)) согласно офф мануалу и получаю следующее:
 
Сообщение: system failure: unable to search gal Код ошибки: service.FAILURE Method: [unknown] Детали:soap:Receiver
 
Я так понимаю косяк мой в фильтрах LDAP кроется, подскажите plz как поправить, чтобы адреса юзеров с AD в Zimbra импортировать.

Комментарии

#!/bin/bash 
#AD domain and Zimbra Domain(s) 
Domain="адрес_сервера_домена_windows(можно IP)" 
# DNS Name or IP of Active Directory 
ADDOMAIN="адрес_сервера_домена_windows" 
# if zimbra have some other domain like (zuza.com, ziza.com, ugauga,com) 
#Values 
LDAPSEARCH=ldapsearch 
ZMPROV="/opt/zimbra/bin/zmprov"
DOMAIN_NAME="домен почты(напр domain.ru - как на зимбре)" 
TIMESTAMP=`date +%N` 
TMP_DIR=/tmp 
ADS_TMP=$TMP_DIR/users_ads_$TIMESTAMP.lst 
ZCS_TMP=$TMP_DIR/users_zcs_$TIMESTAMP.lst 
DIF_TMP=$TMP_DIR/users_dif_$TIMESTAMP.lst 
# Server values 
LDAP_SERVER="ldap://адрес_сервера_домена_windows" 
BASEDN="dc=domain,dc=local" 
BINDDN="CN=user,CN=users,DC=domain,DC=local" 
BINDPW="пароль" 
#user password 123 
FILTER="(mail=*)" 
FIELDS="mail" 
# Extract users from ADS 
echo -n "Extract emails from AD... " 
$LDAPSEARCH -x -H $LDAP_SERVER -b $BASEDN -D "$BINDDN" -w $BINDPW "$FILTER" $FIELDS | 
     grep "@$DOMAIN_NAME" | 
     awk '{print $2}' | 
     sort > $ADS_TMP 
     echo "Found `cat $ADS_TMP | wc -l` users ($ADS_TMP)"
# Extract users from ZCS 
echo -n "Quering ZCS... " 
$ZMPROV -l gaa $DOMAIN_NAME | sort > $ZCS_TMP 
echo "Found `cat $ZCS_TMP | wc -l` users ($ZCS_TMP)" 
# Generate diff 
echo "Generating diff file ($DIF_TMP)" 
diff -u $ZCS_TMP $ADS_TMP | grep "$DOMAIN_NAME" > $DIF_TMP 
# Clean up users list 
rm -f $ADS_TMP $ZCS_TMP 
# Import new users 
echo -n "New users: " cat $DIF_TMP | grep ^+ | wc -l 
for i in $(cat $DIF_TMP | grep ^+ | sed s/^+//g); do 
echo -n " - Adding $i "; 
 
Value1=`ldapsearch -x -h $Domain -b $BASEDN -D $BINDDN -w $BINDPW -LLL "(mail=$i)"` 
Usermail=`echo $Value1 | grep -w sAMAccountName: | awk '{split ($0, a, "sAMAccountName::"); print a[2]}' | awk '{print $1}'` 
 
#Value2=`ldapsearch -x -h $Domain -b $BASEDN -D $BINDDN -w $BINDPW -LLL "(mail=$i)" givenName | base64 -d` 
CName=`echo $Value1 | grep -w givenName: | awk '{split ($0, a, "givenName::"); print a[2]}' | awk '{print $1}' | base64 -d`
 
#Value3=`ldapsearch -x -h $Domain -b $BASEDN -D $BINDDN -w $BINDPW -LLL "(mail=$i)" sn | base64 -d` 
SName=`echo $Value1 | grep -w sn: | awk '{split ($0, a, "sn::"); print a[2]}' | awk '{print $1}' | base64 -d`
 
#Value4=`ldapsearch -x -h $Domain -b $BASEDN -D $BINDDN -w $BINDPW -LLL "(mail=$i)" displayName | base64 -d`
DName=`echo $Value1 | grep -w displayName: | awk '{split ($0, a, "displayName::"); print a[2]}' | awk '{print $1}' | base64 -d`
 
 
echo $Username
# get the username 
printf "Creating User $Username n"; 
$ZMPROV ca $i Gufhb876Gyhgvhy displayName "$DName" sn "$SName" givenName "$CName"; 
$ZMPROV sp $i passwd > /dev/null
$ZMPROV aaa $i $Usermail"@"$ADDOMAIN; 
# Account Alias based apon there sAMAccountName RES=$?
if [ "$RES" == "0" ]; then echo "[Ok]"; else echo "[Err]"; fi done 
 
# Удаляет почтовые ящики кторых нет в домене (осторожно с учетками galsync spam ham virus) 
 
#echo -n "Old users: " 
#cat $DIF_TMP | grep ^- | wc -l 
#for i in $(cat $DIF_TMP | grep ^- | sed s/^-//g); do 
#echo -n " - Deleting $i "; 
#$ZMPROV deleteAccount $i > /dev/null; 
#RES=$? 
#if [ "$RES" == "0" ]; then echo "[Ok]"; else echo "[Err]"; fi done 
 
# Clean up diff list 
rm -f $DIF_TMP 

 Николай а не расскажете немножко побольше что это за скрипт, для чего он нужен и как его использовать?
 поищите пожалуйста поиском, это все поднималось и обсуждалось и рабочий конфиг тоже тут есть.