From b15eeb10c59247ebb28386eb9c5cb7b5390ba678 Mon Sep 17 00:00:00 2001 From: Son NK Date: Tue, 3 Mar 2020 10:48:55 +0100 Subject: [PATCH] If POSTFIX_SUBMISSION_TLS, use port 587 --- app/email_utils.py | 10 +++++++--- email_handler.py | 8 +++++++- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/app/email_utils.py b/app/email_utils.py index 6aa864b9..21787731 100644 --- a/app/email_utils.py +++ b/app/email_utils.py @@ -22,6 +22,7 @@ from app.config import ( DKIM_HEADERS, ALIAS_DOMAINS, SUPPORT_NAME, + POSTFIX_SUBMISSION_TLS, ) from app.log import LOG from app.models import Mailbox, User @@ -174,7 +175,7 @@ def send_cannot_create_domain_alias(user, alias, domain): def send_email( - to_email, subject, plaintext, html, bounced_email: Optional[Message] = None + to_email, subject, plaintext, html=None, bounced_email: Optional[Message] = None ): if NOT_SEND_EMAIL: LOG.d( @@ -187,8 +188,11 @@ def send_email( LOG.d("send email to %s, subject %s", to_email, subject) - # host IP, setup via Docker network - smtp = SMTP(POSTFIX_SERVER, 25) + if POSTFIX_SUBMISSION_TLS: + smtp = SMTP(POSTFIX_SERVER, 587) + smtp.starttls() + else: + smtp = SMTP(POSTFIX_SERVER, 25) if bounced_email: msg = MIMEMultipart("mixed") diff --git a/email_handler.py b/email_handler.py index 15b86c84..aa87be7a 100644 --- a/email_handler.py +++ b/email_handler.py @@ -46,6 +46,7 @@ from app.config import ( ALIAS_DOMAINS, ADMIN_EMAIL, SUPPORT_EMAIL, + POSTFIX_SUBMISSION_TLS, ) from app.email_utils import ( get_email_name, @@ -525,7 +526,12 @@ class MailHandler: LOG.debug("Rcpt to %s", envelope.rcpt_tos) message_data = envelope.content.decode("utf8", errors="replace") - smtp = SMTP(POSTFIX_SERVER, 25) + if POSTFIX_SUBMISSION_TLS: + smtp = SMTP(POSTFIX_SERVER, 587) + smtp.starttls() + else: + smtp = SMTP(POSTFIX_SERVER, 25) + msg = Parser(policy=SMTPUTF8).parsestr(message_data) for rcpt_to in envelope.rcpt_tos: