Migrating from Axigen
The purpose of this article is to document my experience in migrating a <500 user Axigen mail server setup to Zimbra (Open Source Edition). I'm not including every single step; rather, I will note only the Axigen-specific changes I needed to make to the other migration processes documented in this wiki.
The source Axigen mail server is a single Centos 5.8 server. The destination Zimbra setup is composed of three servers: one mailbox server and two LDAP/MTA/proxy servers. They all run on CentOS 6 and be installed according to other guides in this wiki.
The migration was done by cloning our Axigen VM, running an initial imapsync against the clone, and running an additional imapsync against the live Axigen VM after we cut over to Zimbra.
Since I found no good method of migrating calendar entries, tasks, signatures, public files, or filters, I notified my users ahead of time that they will have to be transferred manually. Contacts also require manual intervention to migrate, but they may be easily exported from Axigen's AJAX webmail interface in CSV format and imported into Zimbra.
Notes on imapsync
Imapsync is great if you know everyone's username and password. We authenticate our mail users against Active Directory, so it's not so great for us. However, it is possible to make Axigen authenticate against Zimbra's LDAP server for imapsync purposes. Of course, you will also have to obtain a list of usernames and passwords for Zimbra LDAP; Zimbra makes this easy if you use the migration tool to create accounts from Active Directory. I recommend you set one complex password for all accounts instead of letting it generate a random password for each account. The password generator uses some special characters that imapsync and/or Axigen is allergic to.
If you are authenticating your users against Active Directory, you may set up that authentication in Zimbra ahead of time as long as you check the "If fail, fall back to local password management" box in the Authentication tab of your domain config. It is strongly recommended that you uncheck this box after you finish the migration!
Configuring Axigen to authenticate against Zimbra
You have to create a custom schema file for Axigen's LDAP connector to use. This is easy:
accountObjectClass = "organizationalPerson"
Just make this file, save it somewhere Axigen can read it, and tell Axigen to use it in the LDAP connector.
You will also need to alter your LDAP search parameters in Axigen:
* Use Administrative DN: uid=zmpostfix,cn=appaccts,cn=zimbra (password is your Postfix LDAP password -- find it in /opt/zimbra/conf/ldap-scm.cf) * Account base DN: OU=people,DC=example,DC=com * Check "Use custom schema" and point it to the schema file you just created.
You should now be able to log in to Axigen webmail using credentials set for matching accounts in Zimbra. Check the Axigen webmail and userdb logs for errors if it doesn't work.
Now that Axigen is authenticating against Zimbra and you have imported your accounts from Active Directory (you did save that CSV when you imported, didn't you?) it's time to run imapsync. Please refer to other guides on how to operate imapsync. The only adjustments I had to make for Axigen were changing the IMAP login settings to permit any kind of unencrypted logon. You can probably get around this by adjusting imapsync settings, but I didn't have time.
One thing that bears repeating: be careful with the --delete1 and --delete2 imapsync flags! I found --delete2 to be very useful for removing deleted messages up to the point of cutover to Zimbra, as I ran multiple imapsyncs before cutover, but after that it will only hurt.