Configuring Email Settings Estimated Reading Time: 2 Minutes 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. 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]:587smtp_sasl_auth_enable = yessmtp_sasl_password_maps = hash:/etc/postfix/sasl_passwdsmtp_sasl_security_options = noanonymoussmtp_sasl_tls_security_options = noanonymous smtp_send_dummy_mail_auth = yessmtp_always_send_ehlo = yessmtp_tls_security_level = maysmtp_use_tls = yessmtp_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: docker cp ubersmith-mail-1:/etc/postfix/main.cf /usr/local/ubersmith/conf/mail docker cp ubersmith-mail-1:/etc/postfix/sasl_passwd /usr/local/ubersmith/conf/mail docker cp ubersmith-mail-1:/etc/postfix/sasl_passwd.db /usr/local/ubersmith/conf/mail 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: Older versions of Ubersmith: tail -f /var/log/ubersmith/mail/docker.log Newer versions of Ubersmith: /usr/bin/journalctl -f -t ubersmith/mail