SMTP Auth Problems
|This article applies to the following ZCS versions.|
SMTP Authentication allows POP3 and IMAP clients to send mail from arbitrary remote networks. Authentication may fail if you change the zimbraMailMode server configuration attribute (with the zmtlsctl command) or if you change the webmail access port server configuration attribute (zimbraMailPort or zimbraMailSSLPort) for the Jetty server (if you are using ZCS 4.5, this is the Tomcat server), since the zimbraMtaAuthURL is not automatically recreated. The solution is to regenerate the zimbraMtaAuthURL with the command given in step 4 below.
Note: The example commands use a Zimbra server named "zimbra.domain.com". Make sure to use your server's name, which you can find by running zmhostname.
Checking and Configuring SMTP Authentication on the command-line
If POP3 and IMAP clients are unable to send mail, check the auth settings and mail mode of the server:
$ su - zimbra $ zmprov getServer zimbra.domain.com | grep Auth zimbraMtaAuthEnabled: TRUE zimbraMtaAuthHost: zimbra.domain.com zimbraMtaAuthURL: https://zimbra.domain.com:443/service/soap/ zimbraMtaTlsAuthOnly: TRUE $ zmprov getServer zimbra.domain.com | grep Mode zimbraMailMode: mixed
1. In order to use smtp authentication, zimbraMtaAuthEnabled must be set to TRUE. You can set that like this:
zmprov modifyServer zimbra.domain.com zimbraMtaAuthEnabled TRUE
2. If zimbraMtaTlsAuthOnly is also TRUE, the POP3 and IMAP clients must be configured to use ssl/tls for smtp auth. Similarly, this can be set like this:
zmprov modifyServer zimbra.domain.com zimbraMtaTlsAuthOnly TRUE
3. In a multi-node installation, make sure that zimbraMtaAuthHost and zimbraMtaAuthURL are set to a mailbox server. If not, the following command will set them appropriately (assuming there is a mailbox node named "mailbox.domain.com"; be sure to use the zmhostname of a mailbox node in your installation).
zmprov modifyServer zimbra.domain.com zimbraMtaAuthHost mailbox.domain.com
4. Make sure the url in the zimbraMtaAuthURL will work with the zimbraMailMode. For example, if the MailMode is "https" or "mixed", the AuthURL must begin with "https://" (so that auth will be attempted over ssl), but if the MailMode is "http" (the mail server is only listening on http), the AuthURL must begin with "http://".
If the URL is wrong, re-set the hostname like this in order to regenerate the AuthURL:
zmprov modifyServer zimbra.domain.com zimbraMtaAuthHost zimbra.domain.com