Manage multiple address books in the Zimbra Collaboration Suite Open-Source Edition

The global address book in Zimbra OSE is implemented using a separate galsync system account, which is available on each Zimbra OSE mail domain. Information about each user in the domain is added to the contact list of this account, and domain users have access to this list of addresses and can use it to search for users and autocomplete when typing an email address.

This implementation of the global address book makes it possible to simplify the import of new data into it, but by default it works within only one domain. Large companies often use separate mail domains for different divisions or subsidiaries, and often there is a need to have a common global address book, which would contain the mail addresses and user data of several or even all company domains.


In order to combine the contact lists of galsync accounts from different mail domains, you need to configure their synchronization. Using the and domains as examples, we’ll configure a common address book for the company’s branches in Moscow and St. Petersburg.

By default, the galsync account in Zimbra OSE domains has a suffix that is a random set of numbers and letters. This can make it difficult for us to work with her in the future, and so first we will delete the account then create a new galsync @ msk using the following commands:

zmgsautil deleteAccount -a
zmgsautil createAccount -a -n GAL –domain -t zimbra -s -f GAL

We draw your attention to the fact that the galsync account should never be deleted in the same way as a regular account. This will cause Zimbra OSE to constantly report an error when trying to access a domain that was left without a galsync account.

After that, add a new SPB data source to the galsync account of the Moscow domain, the contacts from which will be automatically added to the _SPB contacts folder. This is done using the command zmgsautil addDataSource -a -n SPB –domain -t ldap -f _SPB -p 1d.

As the source of information, we specify the domain and set a filter to search for contacts: zmprov mds SPB zimbraGalSyncLdapBindDn $ zimbra_ldap_userdn zimbraGalSyncLdapBindPassword $ zimbra_ldap_password zimbraGalSyncLdapFilter ‘(| (& (mail = *) () = ZIM () = TRIM () =)) = zimbraDistributionList) (! (zimbraHideInGAL = TRUE)))) ‘zimbraGalSyncLdapSearchBase dc = spb, dc = company, dc = ru zimbraGalSyncLdapURL ldap: // 389.

Now it remains only to turn on the contact source that we added zmprov mds SPB zimbraDataSourceEnabled TRUE and force the first synchronization using the command zmgsautil forceSync -a -n SPB.

To make sure that synchronizing contacts between global address books works, you can check the contents of the _SPB folder that we just created zmmailbox -z -m gaf. If everything is in order, it remains only to enter the command zmprov md zimbraGALMode both and check how autocomplete works when dialing contacts from the St. Petersburg domain.

In the event that you need users of the domain to also be able to see users of the domain, you will need to do the same, but swap the domains:

  1. zmgsautil addDataSource -a -n MSK –domain -t ldap -f _MSK -p1d
  2. zmprov mds SPB zimbraGalSyncLdapBindDn $ zimbra_ldap_userdn zimbraGalSyncLdapBindPassword $ zimbra_ldap_password zimbraGalSyncLdapFilter ‘(| (& (mail = *) () = ZIM () = TRIM () =)) = zimbraDistributionList) (! (zimbraHideInGAL = TRUE)))) ‘zimbraGalSyncLdapSearchBase dc = msk, dc = company, dc = ru zimbraGalSyncLdapURL ldap: // 389
  3. zmprov mds MSK zimbraDataSourceEnabled TRUE
  4. zmgsautil forceSync -a -n MSKzmmailbox -z -m gaf
  5. zmprov md zimbraGALMode both

The number of data sources in your galsync account is unlimited.

You can add new contact sources for your galsync account in the administration console. However, in order to do this, you still have to work on the command line anyway. To, for example, add contacts from a branch in Kaluga to galsync of a Moscow domain, you need to use the command zmgsautil addDataSource -a -n KLG –domain -t ldap -f _KLG -p 1d add a KLG data source and a folder for them called _KLG.

After that, in the admin console, go to Settings – Domains – configure GAL, in the opened global address book configuration wizard, select the KLG source and enter all the necessary parameters into it, similar to those used in previous examples.

You can also connect Active Directory as an external contact source. This is done in exactly the same way as in the case of regular LDAP: an AD data source is created – zmgsautil addDataSource -a -n AD –domain -t ldap -f _AD -p 1d, and then the search filter and data for autocomplete are indicated in the administration console.

For all questions related to the Zextras Suite, you can contact the representative of the company “Zextras” Ekaterina Triandafilidi by e-mail

Similar Posts

Leave a Reply