I struggle to find a better step by step article to migrate mails from ZIMBRA to Exchange server. But I couldn’t find a single one. This article is designed by me for administrators who wants to core exist their ZIMBRA and Exchange server for a while and do the migration batch wise. I advice you, prior to do changes for production environment (If you are new to migrate ZIMBRA to Exchange) it is better if you can form some test labs and do a trial. So I have setup a small lab for your better understanding. This lab environment show you how to core-exist ZIMBRA and Exchange server 2007 servers. Once all user accounts migrated to Exchange 2007 it is your call to perform the next step Smile . Exchange server 2007 to 2010. You may find so many article on the internet.     


Ø Active Directory Server

  • VM Name – CONTOSO-AD.
  • IP Address –
  • FQDN – CONTOSO-AD.contoso.lk.


  • IP Address –
  • FQDN – MAIL.contoso.lk


  • VM Name – CONTOSO-E2K7
  • IP Address –
  • FQDN – EXCH-2007.contoso.lk

Configurations Done

Ø Primary Domain Controller

  • Create a MAIL EXCHANGER MX record for mail.contoso.lk FQDN.


Ø EXCHANGE 2007 MAIL SERVER – Steps to be followed.

  • In the Exchange Management Console, navigate to “Organization Configuration/Hub Transport/Send Connectors”.
  • Add a Send Connector.
  • On the Address Space tab, click “Add” and enter your subdomain (e.g., mail.contoso.lk) for the Address with a cost of 1. Click OK.
  • On the Network tab, select “Route mail through the following smart hosts”. Click Add and enter the IP address of the Zimbra server in brackets such as []. Click OK.
  • On the Source Server tab, be sure all your Hub Transport servers are selected. Click OK.

Create send connector for ZIMBRA server.

  • Connector Name -* ZIMBRASEND*
  • Address space – mail.contoso.lk (ZIMBRA Server FQDN).

image imageimage image

  • Modify the existing Send Connector to have a higher cost(10)


Ø Steps to be followed.

  • In the Exchange Management Console, navigate to “Server Configuration/Hub Transport/Receive Connectors”.
  • Click “New Receive Connector”. Enter a name for this connector (“Zimbra”) and click next twice.
  • Under “Remote Network Settings”, click Add. Enter the IP address of your Zimbra MTA Server(s).
  • Highlight the default Remote Network Setting ( and click the red X to delete it. Click Next.
  • Click New and Finish.
  • Highlight the new Receive Connector and click Properties.
  • Select the Authentication Tab and click “Externally Secured”.
  • Select the “Permissions Group” tab. Check the “Anonymous Users” check box and the “Exchange Servers” check box and click OK.

Ø Add new Receive Connector.

  • Connector Name – *ZIMBRAR*
  • Remote network setting IP Address – (ZIMBRA Server IP).
  • Authentication Tab – Externally Secured
  • Permissions Group tab – “Anonymous Users” and “Exchange Servers”.

image imageimage image

Ø Exchange Users (Creating mail contact in Exchange server for ZIMBRA users)

For each user hosted on the Zimbra server, a mail user will need to be associated with the Active Directory account. While the command can be performed from the Exchange Management Console, the Exchange Management Shell command is shown below (test-zimbra is the name of the Active Directory Account):. This has to be done in order to exchange mail between Exchange server and ZIMBRA.

[PS] C:\>Enable-MailUser -Identity ‘test-zimbra@mydomain.com’ -Alias ‘test-zimbra’ -ExternalEmailAddress ‘SMTP:test-zimbra@zimbra-server.mydomain.com’ -PrimarySMTPAddress ‘test-zimbra@mydomain.com’

[PS] C:\>Enable-MailUser -Identity ‘dilshan@contoso.lk’ -Alias ‘dilshan’ -ExternalEmailAddress ‘SMTP:dilshan@mail. contoso.lk’ -PrimarySMTPAddress ‘dilshan@contoso.lk’


Ø Zimbra mail server as the primary server – the zimbra server will route all outbound email directly to the internet

Add new domain to ZIMBRA mail.sdb.lk (ZIMBRA Server FQDN)

  • Go to ZIMBRA admin console.
  • Click Domains.
  • Add new.
  • Enter mail and continue the wizard.

 image image


Ø Theses commands need to run on the Terminal Console or PUTTY

  • Su – zimbra


  • $zmprov md mydomain.com zimbraMailCatchAllAddress @mydomain.com
  • $zmprov md contoso.lk zimbraMailCatchAllAddress @contoso.lk


  • $ zmprov md mydomain.com zimbraMailCatchAllForwardingAddress @mydomain.com
  • $ zmprov md sdb.lk zimbraMailCatchAllForwardingAddress @contoso.lk


  • $ zmprov md mydomain.com zimbraMailTransport smtp:exch-server.mydomain.com:25
  • $ zmprov md contoso.lk zimbraMailTransport smtp:EXCH-2007.contoso.lk:25


  • For each user on Zimbra, create an alias to accept email from Exchange and deliver to users on Zimbra
  • $ zmprov aaa account@mydomain.com account@zimbra-server.mydomain.com
  • $ zmprov aaa dilshan@contoso.lk dilshan@mail.contoso.lk


Note: So far we have done things to make mail flow in between zimbra and exchange servers and to internet

Migrate users by using Microsoft Transport Suit

The installation process is straightforward, download Microsoft Transporter, the version should be the newest one.

The tool can be installed in either 32bit or 64bit versions of Windows Server 2003, Windows Vista or Windows XP. The software requirements are .Net Framework 2.0, MMC 3.0, PowerShell 1.0 and Exchange Server 2007 SP1.

To install the Microsoft Transporter tool:

  • On the first screen click on Next.
  • End-User License Agreement. Click I accept the terms in the License Agreement and click next.
  • Select Components and Install Location. In our case we are not going to play with Lotus Domino, then let us install only Transporter for Internet Mail, and then click on Next, as shown in Figure 01


  • Ready to install. Just click on Install button to start the Microsoft Transporter installation and Final screen of the wizard, just click on Finish.

Note : The process is totally straightforward and the Microsoft Transporter Suite can be installed in a workstation or on the Exchange Server 2007 box as well.

Ø Configuring Exchange Server 2007 permissions

  • In order to migrate from POP3/IMAP4 the user must have the Exchange Recipient Admin and Exchange Impersonation rights in at least a single CAS Server.
  • To validate if the current user belongs to the Exchange Recipient Admin we can run the following command: Net user <User Name> /domain.
  • To configure Exchange Impersonation we need to figure out first what the Distinguished Name of the CAS Server is. Run the following Get-ClientAccessServer cmdlet Get-ClientAccessServer | select name,distinguishedname | fl


  • The Exchange Impersonate permission can be assigned to a single CAS Server or all of them, if we are going to specify the CAS during the mailbox migration wizard. To add the permission use the Add-ADPermission cmdlet

Add-ADPermission – Identity (Get-ExchangeServer).DistinguishedName –User (Get-User –Identity Administrator | Select-Object).Identity –ExtendedRight ms-Exch-EPI-Impersonation


Ø Create mailbox for each migrating user.


Ø Generating the .CSV file to be used by Microsoft Transporter

We will now move data from a generic POP3 Server to Exchange Server 2007, in order to accomplish this task we have to create a .CSV file with the following columns:

  • SourceIdentity: The e-mail account that the user has in the POP3 Server
  • SourceServer: The name or IP of the POP3 Server
  • SourceLoginID: the account user name used to connect on the POP3 server
  • SourcePassword: the user’s password
  • TargetIdentity: the Exchange Server 2007 identity will receive the data from the previous POP3 Server settings.

Sample .csv file is given below,


The TargetIdentity must exist before using the Microsoft Transporter tool, the value of TargetIdentity can be any e-mail address (Primary or secondary). We can use the same CSV file to create the users or mailboxes in case of a new environment.

Ø Migrating from POP3 Server to Exchange Server 2007.

Next, we are going to copy content from a generic POP3 Server to Exchange Server 2007. The user list was created in the previous section and now we are going to import them into the tool and use the migration wizard later on in order to copy the content. Before starting the copy we will see the current information that a user has in the generic server which supports POP3.

Okay, now we know the content that we are going to move, let us use the Microsoft Transport to copy the content:

  1. Open Microsoft Transporter Suite for Internet Mailboxes.
  2. In the main screen click on Add Mailboxes... button.


3. Add Mailboxes. Select the CSV file created in the Excel and click on Import. (Figure 07)


4. Security Warning. A message informing us that the password information contained in the CSV will be stored in a file called InternetMailbox.tbin. Just click OK.

5. On the main screen we have three different views to work with: All Mailboxes, Mailboxes Ready for Migration and Mailboxes Already Migrated. Let us click on All Mailboxes to see all the mailboxes imported from the CSV file and let us start the migration of a single user, click on a single user and click on Migrated Selected Mailboxes.


6. Select Mailbox Type. Select POP and we are not going to use a secure connection to the POP3 Server (995 SSL), we also going to specify which CAS (Client Access Server) and in our case that CAS was the only one that we gave Exchange Impersonate permissions. Click on Next. (Figure 09)


7. Select Data Range. We can specify a time range to migrate from the POP3 server to Exchange Server 2007. We will get all the content, click on All e-mail and click on Next.


7. Review Selected Mailboxes. A summary is shown. Just click on Migrate.

8. Migration Complete. The final page displaying the migrated data, just click on Finish.

Now, it is time to test if our migration went well. Log in using the user Hasitha (the same user whose mailbox was on the generic POP3 server) and we can validate that the current content in OWA is the same as the POP3 server (Figure 11). Microsoft Transporter preserves the following characteristics:   attachments, rich content, status information (read or unread).

Note : Once the migration completed you should delete or disable the user mail account in ZIMBRA server






Categories: Exchange
  1. Bill
    July 3, 2012 at 7:27 pm

    I have started testing a move from Zimbra 7.1.3 to Exchange 2010. I have been able to follow your instructions all the way to adding the alias to the zimbra server (zmprov aaa command). This will not find the extension I added to the exchange server. I can ping the name, MX record setup for new address, this email domain does not exist on the zimbra server. Can you provide a bit more information behind the reason for adding the alias? It makes since as you must have a common email account between them in order to have email connection.

    • July 7, 2012 at 4:18 am

      Hi Bill,

      First of all i have to tell, you should not migrate your mail system from ZIMBRA to Exchange 2010. You should first migrate it to Exchange 2007 and then to Exchange 2010. If you want to directly migrate to Exchange server 2010 i can propose you a solution. There is a tool call TRANCEND MIGRATOR, by using this tool you can export ZIMBRA mailboxes as .pst’s and later you can inject all mailboxes to Exchange 2010 batch wise (using New-MailboxImportRequest ps command). I have done this practice for one of my client which had 600+ mailboxes.

      For you question the answer is, the reason for adding alias is, i have assign the Exchange server to accept the incoming traffic and route all the out going traffic through the exchange server. So you need to have an alias to get it done. Hope the below article will help for you.


  2. Mohamed Bahloul
    July 9, 2012 at 5:16 pm

    i have the same scenario but always transporter tools give me errors
    first in the SSL Certificate i fix it then it back againd

    my external domain is xx.gov.uk
    my internl domain is mm.gov.sa different

    is that reason for the certificate by the way i have self sign certificate.


    Summary: 1 item(s). 1 succeeded, 0 failed.
    Elapsed time: 00:03:09


    SSL certificate error(s) were found and ignored.
    Error source: CN=mail.ku.edu.sa, OU=Zimbra Collaboration Suite, O=Zimbra Collaboration Suite, L=N/A, S=N/A, C=US
    Subject distinguished name: CN=mail.ku.edu.sa, OU=Zimbra Collaboration Suite, O=Zimbra Collaboration Suite, S=N/A, C=US
    Serial number: 1312810113
    Effective from: 8/8/2011 6:28:38 AM
    Expires on: 8/7/2012 6:28:38 AM
    Certificate issuer: CN=mail.ku.edu.sa, OU=Zimbra Collaboration Suite, O=Zimbra Collaboration Suite, L=N/A, S=N/A, C=US

    A certificate chain could not be built to a trusted root authority.

    An item has failed property validation and will be ignored.
    Error details:Required property is empty.

    An item has failed property validation and will be ignored.
    Identifier:(Name:Emailed Contacts)
    Error details:Required property is empty.

    An item has failed property validation and will be ignored.
    Error details:Required property is empty.

    An item has failed property validation and will be ignored.
    Error details:Required property is empty.

    • July 12, 2012 at 1:17 am

      Hi Mohamed,

      I’m not much clear about your requirement. But I must say one thing about the certificate. You should have a public certificate which is purchased from third party vendor when it comes to external. For internal purpose you can uses the self-sign certificate.
      Could you please explain me from which ZIMBRA version to which Exchange version you are going to migrate and how many mailboxes currently in your ZIMBRA server?
      Did you consider about the tool which I mentioned in the previous reply?

  3. April 4, 2013 at 12:45 pm

    With Zimbra 8 and Exchange 2013, the steps is the same ? Thanks

    • April 13, 2013 at 8:13 pm

      There is nothing much differ in 2013 when it comes to migration……. Kindly inbox me your email address i will let you know soon….

  4. Oki Setiawan
    April 25, 2013 at 1:42 pm

    What about migration from Zimbra to Office 365 ? please let me know if you have the steps. Thanks.

  5. May 2, 2013 at 8:32 pm

    I think the admin of this site is genuinely working hard in favor of his web
    site, because here every data is quality based information.

  6. May 8, 2013 at 9:42 am

    great points altogether, you just gained a logo new reader.
    What would you recommend about your publish that you just made a few
    days in the past? Any sure?

  7. June 21, 2013 at 7:17 am

    I was curious if you ever considered changing the page
    layout of your website? Its very well written; I love
    what youve got to say. But maybe you could a little
    more in the way of content so people could connect with it better.
    Youve got an awful lot of text for only having 1 or two images.
    Maybe you could space it out better?

  8. July 2, 2013 at 1:52 pm

    I like the helpful info you provide for your articles.
    I will bookmark your weblog and take a look at once more right here
    frequently. I am quite certain I will learn many new
    stuff right right here! Good luck for the following!

  9. July 8, 2013 at 1:44 pm

    Thank you a lot for sharing this with all of us you really know what
    you are speaking approximately! Bookmarked. Kindly also discuss with my website =).
    We could have a hyperlink trade contract among us

  10. July 9, 2013 at 12:33 am

    Have you ever thought about publishing an e-book or guest authoring on other sites?
    I have a blog centered on the same information you discuss
    and would really like to have you share some stories/information.

    I know my readers would value your work. If you’re even remotely interested, feel free to send me an e-mail.

  11. July 9, 2013 at 4:47 pm

    Hi i’m glad to accept your invitation… 🙂

  12. July 9, 2013 at 7:32 pm

    Hello there! Quick question that’s entirely off topic. Do you know how to make your site mobile friendly? My blog looks weird when browsing from my iphone. I’m trying to find a theme or plugin that might be able
    to correct this issue. If you have any suggestions, please
    share. Thanks!

  13. July 10, 2013 at 9:25 am

    Hey! I know this is kind of off topic but I was wondering
    which blog platform are you using for this site? I’m getting sick and tired of WordPress because I’ve had
    issues with hackers and I’m looking at options for another platform. I would be fantastic if you could point me in the direction of a good platform.

  14. July 10, 2013 at 1:03 pm

    I’m using wordpress and as you can see i have used a very simple design template..

  15. July 22, 2013 at 6:07 am

    Admiring the time and energy you put into your website and in depth information you provide.
    It’s great to come across a blog every once in a while that isn’t the same out of date rehashed information.

    Excellent read! I’ve bookmarked your site and I’m adding your RSS
    feeds to my Google account.

  16. August 6, 2013 at 9:41 pm

    Hey. I noticed your blog title, “ZIMBRA TO EXCHANGE SERVER 2007 MIGRATION GUIDE | DILSHAN’S BLOG” does not really reflect the content of your site.

    When composing your website title, do you believe it’s best to write it for Search engine optimization or for your readers? This is one thing I’ve been struggling with
    because I want great search rankings but at the
    same time I want the best quality for my visitors.

  17. August 20, 2013 at 10:00 pm

    You can certainly see your expertise in the work you write.
    The sector hopes for even more passionate writers such as you who are
    not afraid to mention how they believe. All the time follow your

  18. April 20, 2014 at 11:33 am

    Wow, amazing blog layout! How loong have you been blgging for?
    you make blogging look easy. The overall look of your website is wonderful, as well as the content!

  19. April 22, 2014 at 7:18 pm

    I was recommended this web site by my cousin. I am not sure whether this
    post is written by him as nobody else know such detailed about my
    problem. You’re wonderful! Thanks!

  20. June 15, 2014 at 8:58 am

    When someone writes an paragraph he/she retains the thought of a user in his/her brain that how a user can understand
    it. Therefore that’s why this article is great.


  21. July 23, 2014 at 4:20 am

    Pretty section of content. I just stumbled upon your site and in accession capital to
    assert that I get in fact enjoyed account your blog posts.
    Anyway I’ll be subscribing to your augment and even I achievement you access consistently fast.

  22. July 25, 2014 at 5:38 am

    I think that this is a magnificent webpage and I will
    be coming back again to learn even more.

  23. July 25, 2014 at 3:46 pm

    Examining this blog post assisted me to understand various things I was uninformed of!

  24. July 25, 2014 at 10:00 pm

    Later today, I should type a document concerning this topic, therefore, you saved me considerable time with your valuable facts.

  25. July 25, 2014 at 10:19 pm

    Browsing this article helped me to comprehend a number of things I was unaware of!

  26. July 26, 2014 at 12:45 pm

    Browsing this page really helped me to figure out a
    handful of points I was uninformed of!

  27. July 26, 2014 at 8:20 pm

    I signed to your feed; I will be awaiting for much more info like this.

  28. July 29, 2014 at 4:24 pm

    I just like the helpful info you provide on your
    articles. I will bookmark your blog and test once
    more here frequently. I am rather certain I will learn many new stuff proper
    here! Good luck for the following!

  29. July 30, 2014 at 9:13 am

    Great web site. Plenty of helpful info here. I’m sending it to a few friends ans additionally sharing in delicious.

    And naturally, thank you in your sweat!

  30. August 1, 2014 at 4:30 am

    I like the helpful information you supply on your articles.
    I’ll bookmark your blog and take a look at again here frequently.
    I am reasonably certain I will learn a lot of new stuff right
    right here! Best of luck for the following!

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: