Our current setup is exim4 with the vexim addon. Since we have to move our mailserver to another server and into a VM we wanted to do it right and switch to another mailserver if that is suggested.
Somethings we are looking for:
- (POP3/)IMAP and SMTP
- Multidomain, Multiuser and all configurable in a MySQL DB, so that we can even create mailboxes from a web app
- encrypted passwords only
- Good resources so that setup is easy, the more to read the better ;)
- Run on debian lenny
- We want it on our own servers so no we don't want to use Google
- Optimally I would want Exchange capability, so that we can sync our contacts, calendar etc to our palm pres and iphones and sync with Thunderbird and Outlook
Have you considered using something like Zimbra? Just about the only thing it doesn't have from your list of requirements is SQL database based configuration that you can interface with in your app, though there are command line provisioning utilities that you could no doubt arrange to call from your web app. It has the advantage of over exim+vexim++ in that it is an integrated solution that you don't need to put together.
I run the F/OSS edition for my own mail server (serving my domains and those of a few friends) and we also use it for the office's mail where I work, and I've found it to be very reliable and stable. You'd need the paid-for edition for the Outlook sync support though (but you can, of course, use the mail facility with Outlook via IMAP or POP). The official forums aren't bad for solving problems you may hit, sometimes you'll get a useful response much faster than some commercial support contracts offer, though if the mail you are serving is machine critical you might again consider the paid-for version as this comes with official support with, IIRC, response time guarantees and such. I've only ever had minor issues though, and they've been resolved to my satisfaction via the forum.
Scalix is another option, available under very similar conditions: a free version and a paid-for edition with extra features and proper support, and I'm told it is noticeably less resource intensive for small installs than Zimbra, but I've never used it fully myself (I had did a test install to play with some time ago, but decided on Zimbra instead (I forget the full list of reasons why, and things are likely to have changed in that time anyway)).
If exim+vexim is working well for you though I might suggest that you don't fix what isn't broken. Unless there is something you want or need that another product or arrangement provides, you might be better off not giving yourself a new system to learn the ropes on.
If you do more to something else, and it doesn't have built-in migration support, I recommend IMAPsync for transferring mail over once you have installed the new system and provisioned the accounts.