Delivery through google

Discuss your pilot or production implementation with other Zimbra admins or our engineers.
Post Reply
ntrone
Posts: 4
Joined: Thu Dec 14, 2017 5:05 pm

Delivery through google

Post by ntrone »

So, today I tried to change the "zimbraSmtpHostname" to send to google(aspmx.l.google.com). And it exploded!

I noticed that while composing an email, it started to complain that any local user email was "invalid" upon hitting send and it would show a popup with a java error and at the top said "Multiple destination domains per transaction is unsupported. Please"
I immediately reverted my settings back to defaults because I was out of time for our maintenance window. Do you know what happened and why it said that? There's suprisingly little out there on this, I found one thing from years ago, but it never had any solution posted, and it was closed.

Code: Select all

2018-02-16 06:50:02,306 WARN  [qtp1446826388-261:https://192.168.2.10:443/service/soap/SendMsgRequest] [name=user@domain.com;mid=1265;ip=192.168.1.5;ua=ZimbraWebClient - FF58 (Mac)/8.0.6_GA_5922;] smtp - Failed to send message
com.zimbra.cs.mailclient.smtp.InvalidRecipientException: RCPT failed: Invalid recipient user@domain.com: 451 4.3.0 Multiple destination domains per transaction is unsupported.  Please
        at com.zimbra.cs.mailclient.smtp.SmtpConnection.rcpt(SmtpConnection.java:680)
        at com.zimbra.cs.mailclient.smtp.SmtpConnection.sendInternal(SmtpConnection.java:564)
        at com.zimbra.cs.mailclient.smtp.SmtpConnection.sendMessage(SmtpConnection.java:496)
        at com.zimbra.cs.mailclient.smtp.SmtpConnection.sendMessage(SmtpConnection.java:479)
        at com.zimbra.cs.mailclient.smtp.SmtpTransport.sendMessage(SmtpTransport.java:221)
        at com.zimbra.cs.mailbox.MailSender.sendMessageToHost(MailSender.java:1076)
        at com.zimbra.cs.mailbox.MailSender.sendMessage(MailSender.java:1001)
        at com.zimbra.cs.mailbox.MailSender.sendMimeMessage(MailSender.java:616)
        at com.zimbra.cs.mailbox.MailSender.sendMimeMessage(MailSender.java:448)
        at com.zimbra.cs.mailbox.MailSender.sendMimeMessage(MailSender.java:403)
        at com.zimbra.cs.service.mail.SendMsg.doSendMessage(SendMsg.java:234)
        at com.zimbra.cs.service.mail.SendMsg.handle(SendMsg.java:166)
        at com.zimbra.soap.SoapEngine.dispatchRequest(SoapEngine.java:522)
        at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.java:385)
        at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.java:258)
        at com.zimbra.soap.SoapServlet.doWork(SoapServlet.java:294)
        at com.zimbra.soap.SoapServlet.doPost(SoapServlet.java:210)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at com.zimbra.cs.servlet.ZimbraServlet.service(ZimbraServlet.java:208)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:654)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1320)
        at com.zimbra.cs.servlet.CsrfFilter.doFilter(CsrfFilter.java:78)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
        at com.zimbra.cs.servlet.RequestStringFilter.doFilter(RequestStringFilter.java:52)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
        at com.zimbra.cs.servlet.SetHeaderFilter.doFilter(SetHeaderFilter.java:57)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
        at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:82)
        at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:256)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
        at com.zimbra.cs.servlet.ETagHeaderFilter.doFilter(ETagHeaderFilter.java:45)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
        at com.zimbra.cs.servlet.ZimbraQoSFilter.doFilter(ZimbraQoSFilter.java:114)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
        at org.eclipse.jetty.servlets.DoSFilter.doFilterChain(DoSFilter.java:474)
        at org.eclipse.jetty.servlets.DoSFilter.doFilter(DoSFilter.java:345)
        at org.eclipse.jetty.servlets.DoSFilter.doFilter(DoSFilter.java:316)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:443)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:556)
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1044)
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:372)
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:189)
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:978)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
        at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
        at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
        at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:317)
        at org.eclipse.jetty.server.handler.DebugHandler.handle(DebugHandler.java:81)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
        at org.eclipse.jetty.server.Server.handle(Server.java:369)
        at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:486)
        at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:944)
        at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1005)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
        at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
        at org.eclipse.jetty.io.nio.SslConnection.handle(SslConnection.java:196)
        at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
        at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
        at java.lang.Thread.run(Thread.java:744)
2018-02-16 06:50:02,313 INFO  [qtp1446826388-261:https://192.168.2.10:443/service/soap/SendMsgRequest] [name=user@domain.com;mid=1265;ip=192.168.1.5;ua=ZimbraWebClient - FF58 (Mac)/8.0.6_GA_5922;] mailop - Deleting Message (id=8502).
2018-02-16 06:50:02,426 INFO  [qtp1446826388-261:https://192.168.2.10:443/service/soap/SendMsgRequest] [name=user@domain.com;mid=1265;ip=192.168.1.5;ua=ZimbraWebClient - FF58 (Mac)/8.0.6_GA_5922;] SoapEngine - handler exception
com.zimbra.cs.mailbox.MailServiceException: Invalid address: user@domain.com.  com.zimbra.cs.mailbox.MailSender$SafeSendFailedException: MESSAGE_NOT_DELIVERED; chained exception is:
        com.zimbra.cs.mailclient.smtp.InvalidRecipientException: RCPT failed: Invalid recipient user@domain.com: 451 4.3.0 Multiple destination domains per transaction is unsupported.  Please
ExceptionId:qtp1446826388-261:https://192.168.2.10:443/service/soap/SendMsgRequest:1518781802426:96f3e9d3b64923f7
Code:mail.SEND_ABORTED_ADDRESS_FAILURE Arg:(invalid, STR, "user@domain.com")
        at com.zimbra.cs.mailbox.MailServiceException.internal_SEND_FAILURE(MailServiceException.java:517)
        at com.zimbra.cs.mailbox.MailServiceException.SEND_ABORTED_ADDRESS_FAILURE(MailServiceException.java:521)
        at com.zimbra.cs.mailbox.MailSender.sendMimeMessage(MailSender.java:680)
        at com.zimbra.cs.mailbox.MailSender.sendMimeMessage(MailSender.java:448)
        at com.zimbra.cs.mailbox.MailSender.sendMimeMessage(MailSender.java:403)
        at com.zimbra.cs.service.mail.SendMsg.doSendMessage(SendMsg.java:234)
        at com.zimbra.cs.service.mail.SendMsg.handle(SendMsg.java:166)
        at com.zimbra.soap.SoapEngine.dispatchRequest(SoapEngine.java:522)
        at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.java:385)
        at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.java:258)
~~SNIP~~
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
        at java.lang.Thread.run(Thread.java:744)
Caused by: com.zimbra.cs.mailbox.MailSender$SafeSendFailedException: MESSAGE_NOT_DELIVERED; chained exception is:
        com.zimbra.cs.mailclient.smtp.InvalidRecipientException: RCPT failed: Invalid recipient user@domain.com: 451 4.3.0 Multiple destination domains per transaction is unsupported.  Please
        at com.zimbra.cs.mailclient.smtp.SmtpTransport.notify(SmtpTransport.java:298)
        at com.zimbra.cs.mailclient.smtp.SmtpTransport.sendMessage(SmtpTransport.java:230)
        at com.zimbra.cs.mailbox.MailSender.sendMessageToHost(MailSender.java:1076)
        at com.zimbra.cs.mailbox.MailSender.sendMessage(MailSender.java:1001)
        at com.zimbra.cs.mailbox.MailSender.sendMimeMessage(MailSender.java:616)
        ... 59 more
Thank you
phoenix
Ambassador
Ambassador
Posts: 27272
Joined: Fri Sep 12, 2014 9:56 pm
Location: Liverpool, England

Re: Delivery through google

Post by phoenix »

ntrone wrote:So, today I tried to change the "zimbraSmtpHostname" to send to google(aspmx.l.google.com). And it exploded!
What were you expecting it to do? Here's what it's actually for: https://serverfault.com/questions/54542 ... stallation

I'm guessing that you're trying to relay though an external server? If you are then I'd suggest you go to the wiki and search for the words 'external relay' and read up on what's needed.

It does help if you give some context when posting a question th these forums and also the version of ZCS that in use by giving the full output of the following command:

Code: Select all

zmcontrol -v
Regards

Bill

Rspamd: A high performance spamassassin replacement

Per ardua ad astra
ntrone
Posts: 4
Joined: Thu Dec 14, 2017 5:05 pm

Re: Delivery through google

Post by ntrone »

phoenix wrote:
ntrone wrote:So, today I tried to change the "zimbraSmtpHostname" to send to google(aspmx.l.google.com). And it exploded!
What were you expecting it to do? Here's what it's actually for: https://serverfault.com/questions/54542 ... stallation

I'm guessing that you're trying to relay though an external server? If you are then I'd suggest you go to the wiki and search for the words 'external relay' and read up on what's needed.

It does help if you give some context when posting a question th these forums and also the version of ZCS that in use by giving the full output of the following command:

Code: Select all

zmcontrol -v
We were trying to get internal email, stuff sent between people within the domain, to reach a second server. We can't seem to get zimbra to send ALL mail to a legacy server, in case of emergency, we want to have a separate system, on a different architecture, and mail server software, running so that we will always have one up. Google is our second legacy mail server, we have a google apps. We already have google configured properly to send everything inbound back to zimbra, so the backend can deliver that back to clients within our network. I must have read the entire wiki at least 4 times now. I've seen thousands of posts about setting legacy systems, relays, and all manner of strange ways they are doing things. Most of those solutions look like they are trying to get rid of zimbra and are one time solutions that just move to another system, which isn't what we want. I know this is so simple, but I cannot get it to work.
I apologize for not being on the ball here, I've spent so many nights off work hours researching this, I can't keep this up. I need a solution asap, I'm losing my mind.

Zimbra Version:
Release 8.0.6.GA.5922.UBUNTU12.64 UBUNTU12_64 NETWORK edition.
OS:
Ubuntu precise (12.04.4 LTS)

Again, sorry for the vague post. If you need any other information, please ask, I'll get you anything you need.
rodria
Posts: 2
Joined: Tue Nov 13, 2018 5:01 pm

Re: Delivery through google

Post by rodria »

I have the same problem, and the fault is google, not zimbra, if do u use another transport as postfix or sendmail, it work.
andrey.ivanov
Advanced member
Advanced member
Posts: 50
Joined: Wed Aug 08, 2018 8:44 am

Re: Delivery through google

Post by andrey.ivanov »

I guess this is what you want:

Code: Select all

zmprov desc -a zimbraMtaRelayHost
zimbraMtaRelayHost
    Value for postconf relayhost. Note: there can be only one value on
    this attribute, see bug 50697.

               type : astring
              value : 
           callback : MtaRelayHost
          immutable : false
        cardinality : multi
         requiredIn : 
         optionalIn : globalConfig,server
              flags : serverInherited
           defaults : 
                min : 
                max : 256
                 id : 199
    requiresRestart : mta
              since : 
    deprecatedSince :
Post Reply