So, redirecting URLs to the new mailstore works just great for the web client, but not so well for Outlook or phones. When I first moved my mail, there was no problem using the web client, but my iPhone lost all connectivity. That's because it was pointed at the wrong server now. One answer is to reconfigure all the clients. Another is to install and configure zimbra-proxy.
The beauty of zimbra-proxy is that you can move mailboxes around however you like and never have to touch a phone or workstation. The problem is that correctly configuring it has caused me confusion.
It seems that there is a bug out there that was causing me greif...
Make sure that `zmhostname` matches the URL of the proxy server.
I also learned that if you run zmproxyinit it will reset your TLS settings back to http. So if your proxy target is set to https or redirect, it will fail.
[zimbra@host1 ~]$ zmhostname
[zimbra@host1 ~]$ zmprov md mydomain.tld -zimbraVirtualHostname mail.mydomain.tld
[zimbra@host1 ~]$ libexec/zmsetservername mail.mydomain.tld
[zimbra@host1 ~]$ /libexec/zmproxyinit -e -w -m -H mail.mydomain.tld
[zimbra@host1 ~]$ zmcontrol stop; zmcontrol start
I also had some issues with outbound mail. It's important to double check all the suggestions from this wiki article.
[zimbra@host2 ~] zmtlsctl http
[zimbra@host2 ~] zmcontrol stop; zmcontrol start
I think it's possible to configure things such that host1 acts as the sole MTA in the system. However, since my plan involves migrating those roles anyway, I installed zimbra-mta and configured the web relay to be localhost and the outbound relay to be mail.mydomain.tld. Obviously I had to re-check trusted network settings.
As soon as proxy and relay were working I closed up the firewall on host2 to all outside traffic. The only allowable communication is between host1 and host2. Everything continues to work just fine; the proxy service functions correctly. So, without changing my iPhone settings at all, not even looking at them, I was able to send from my Zimbra to my Yahoo! account and vice versa.
I will start moving all the users from mydomain.tld to host2 and see how that goes. Next will creating a secondary LDAP, then our customers' domains.