Postfix SMTP 邮件服务器 外部 smtp 中继

Postfix SMTP 邮件服务器 外部 smtp 中继

如何配置 postfix smtp?

  • 外部 smtp 中继
  • Smtp 身份验证
  • 电子邮件发送速率限制
  • 安排电子邮件

答案1

如果你去https://help.ubuntu.com并在搜索框中输入“postfix”,你会得到很多有用的文章,包括这篇https://help.ubuntu.com/community/Postfix帮助安装和配置 postfix。

答案2

我使用了 SendGrid 的免费计划帐户和我的 Office 365 Outlook 邮箱。

外部 SMTP 服务器配置

  1. 转到 sendgrid 并登记配置文件
  2. 发件人身份验证并创建一个新的发件人(图片
    指定一些非免费的电子邮件(我使用了office 365在线账户),这样发件人就可以通过SendGrid进行验证。
  3. 检查您的邮箱并点击验证单个发件人字母中的按钮(图片
  4. SMTP 中继集成页面并创建一个 apikey,你将把它放入 postfix 的sasl_passwd文件中(图片)。在插入验证页面并验证之前,请勿关闭验证页面。在应用 Postfix 设置并添加新 API 密钥后,重新启动 Postfix 并测试电子邮件发送:在此处输入图片描述

Postfix 配置:

安装一些软件包并配置 postfix

sudo apt install postfix mailutils

按照以下方式配置/etc/postfix/main.cf文件,添加或修改以下几行:

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
compatibility_level = 2
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_security_level=may

smtp_tls_CApath=/etc/ssl/certs
smtp_tls_security_level=encrypt
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = localhost.localdomain

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, localhost
relayhost = [smtp.sendgrid.net]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_tls_security_options = noanonymous

创建/etc/postfix/sasl_passwd文件(进一步获取api密钥):

[smtp.sendgrid.net]:587 apikey:SG.kjaksdjkfajskdk_ASDk.lkjaoIO_Kjkoaofs3i99asfd_kkjasdof99882348IKII

应用设置:

sudo postmap /etc/postfix/sasl_passwd
sudo systemctl restart postfix

在 SendGrid 验证期间测试电子邮件发送

  1. 点击接下来验证集成按钮。您将让我们测试您的集成页。

  2. 点击验证集成按钮

  3. journalctl -f使用命令运行不同的终端窗口来查看日志

  4. 在终端中运行命令来测试邮件发送,使用单一发件人-r在创建参数之后外部 SMTP 服务器配置部分。

     echo "Test Email message body" | mail -r [email protected] -s "Email test subject" [email protected]
    

结果,我的 gmail.com 邮箱收到了一封测试信。我还将其发送到我的 yahoo.com 帐户,经过一段时间的延迟后,它也被收进了垃圾邮件文件夹。

相关内容