Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

It's preferable for Ubersmith-related email to be handled by the local mail container rather than communicating directly with a remote SMTP host. Mail delivery is quicker, with superior logging, and avoids the need for the Ubersmith web interface to 'pause' or 'wait' for the mail delivery actions to complete. Ubersmith's mail container runs the Postfix MTA. This configuration is confirmed to work with Office 365, Sendgrid, and Amazon SES.


Ubersmith Mail container for Ubersmith 4.x

The following instructions assume that Ubersmith has been installed to /usr/local/ubersmith and that Ubersmith is being configured to relay mail to Office 365. Be sure to use the specific relayhost configuration for the provider you plan to have Ubersmith send mail to. Retrieve the latest copy of cacert.pem  from curl.haxx.se and place it in /usr/local/ubersmith/conf/mail:

  • cd /usr/local/ubersmith/conf/mail
  • curl -L -O https://curl.haxx.se/ca/cacert.pem

 Open a shell within the mail container:

  • cd /usr/local/ubersmith
  • docker-compose exec mail bash

Within the mail container, modify /etc/postfix/main.cf to uncomment and edit the following variables to the appropriate settings:

/etc/postfix/main.cf Configuration Options

relayhost = [smtp.office365.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
 
smtp_send_dummy_mail_auth = yes
smtp_always_send_ehlo = yes
smtp_tls_security_level = may
smtp_use_tls = yes
smtp_tls_CAfile = /etc/postfix/cacert.pem
 
# debug options
# debug_peer_list = smtp.office365.com

Still within the container, create /etc/postfix/sasl_passwd and generate sasl_passwd.db:

  • Edit /etc/postfix/sasl_passwd to contain the following:
    • [smtp.office365.com]:587    smtp-user@example.com:password
  • To generate /etc/postfix/sasl_passwd.db, run:
    • postmap /etc/postfix/sasl_passwd

Exit the container, and run:

Edit /usr/local/ubersmith/docker-compose.override.yml to add the following volumes to the mail service:

- "/usr/local/ubersmith/conf/mail/cacert.pem:/etc/postfix/cacert.pem"
- "/usr/local/ubersmith/conf/mail/main.cf:/etc/postfix/main.cf"
- "/usr/local/ubersmith/conf/mail/sasl_passwd:/etc/postfix/sasl_passwd"
- "/usr/local/ubersmith/conf/mail/sasl_passwd.db:/etc/postfix/sasl_passwd.db"

Recreate the mail container:

  • cd /usr/local/ubersmith; docker-compose up -d mail

Verify mail is flowing properly by examining the log output from the mail container:

  • tail -f /var/log/ubersmith/mail/docker.log

Legacy Instructions for Ubersmith 3.x

These instructions also appear to work for relaying to Exim and postmarkapp.com.

This guide is functional on CentOS 6, which runs a pretty ancient version of Postfix – so it should hopefully also work with newer versions and OS'es.

  • Install the cyrus-sasl-plain package (or equivalent for the OS in question):
    • yum install cyrus-sasl-plain
  • Grab a copy of cacert.pem and drop it off in /etc/postfix
    • cd /etc/postfix; curl -L -O http://curl.haxx.se/ca/cacert.pem
  • Edit /etc/postfix/main.cf and include/update the following configuration options:
    /etc/postfix/main.cf Configuration Options

    relayhost = [smtp.office365.com]:587
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    smtp_sasl_security_options = noanonymous
    smtp_sasl_tls_security_options = noanonymous
     
    smtp_send_dummy_mail_auth = yes
    smtp_always_send_ehlo = yes
    smtp_tls_security_level = encrypt
    smtp_use_tls = yes
    smtp_tls_CAfile = /etc/postfix/cacert.pem
     
    # debug options
    # debug_peer_list = smtp.office365.com

  • Edit /etc/postfix/sasl_passwd to contain the following:
    • [smtp.office365.com]:587    smtp-user@example.com:password
  • Run:
    • postmap /etc/postfix/sasl_passwd
  • Restart Postfix:service postfix restart


Panel
borderColor#8181AA
bgColor#FDFDFD
titleColor#8181AA
titleBGColor#2F304F
borderStylesolid
titleOn this page:

On this page:

Table of Contents
indent10px


Related Topics 
Anchor
Related Topics
Related Topics

Forwarding Emails




Page properties
hiddentrue


Document Stage
Audience
Author
Reviewer
Created Date
Updated Date
Version
Links
Graphics