System Administration & Network Administration
email postfix email-server exim zimbra
Updated Thu, 01 Sep 2022 22:23:30 GMT

Testing Zimbra email routing


I am an experienced Exim user and just recently testing Zimbra Open Source, and I am loving it already.

However, I am used to this command whenever I wanted to test email routing in the email server, whether I am testing for the routing of local users, local email addresses and external email addresses:

root@localhost# exim -bt alias@localdomain.com
user@thishost.com
    <-- alias@localdomain.com
  router = localuser, transport = local_delivery
root@localhost# exim -bt user@thishost.com
user@thishost.com
  router = localuser, transport = local_delivery
root@localhost# exim -bt user@remotehost.com
  router = lookuphost, transport = remote_smtp
  host mail.remotehost.com [1.2.3.4] MX=0

Got the above cheatsheet years ago from http://bradthemad.org/tech/notes/exim_cheatsheet.php.

How can I do this with Zimbra/Postfix? I am searching everywhere on how to do this, but couldn't found any.

Thanks!




Solution

Try this command

/usr/sbin/sendmail -bv address.

sendmail binary from postfix has special options -bv

-bv    Do not collect or deliver a  message.  Instead,  send  an  email
       report  after  verifying each recipient address.  This is useful
       for testing address rewriting and routing configurations.

This command also can be found in postfix documentation:

Excerpt from the page

Postfix version 2.1 and later can produce mail delivery reports for debugging purposes. These reports not only show sender/recipient addresses after address rewriting and alias expansion or forwarding, they also show information about delivery to mailbox, delivery to non-Postfix command, responses from remote SMTP servers, and so on.

Unlike utility from exim which give result in the stdout, postfix will send the report to user who invoke above command. Also zimbra will place sendmail binary in its unusual directory, so you must invoke it by issuing the full path command.

/opt/zimbra/postfix/sbin/sendmail -bv address




Comments (2)

  • +0 – This works great, however, since I can't receive local emails, I am just checking the result in /var/log/maillog. Exim's way is much cleaner, but this command works well. Thanks! — May 30, 2016 at 21:06  
  • +1 – You can create two symlinks on your system to enable local mail: ln -s /opt/zimbra/postfix/sbin/sendmail /usr/sbin/sendmail and ln -s /opt/zimbra/postfix/sbin/sendmail /usr/lib/sendmail — Jun 01, 2016 at 12:48