参考:企业级邮件服务器实战_哔哩哔哩_bilibili
Linux 平台开源免货的邮件服务器包括: Sendmail、Postix、Omail ;
邮件服务器构成了电子邮件系统的核心,每个收信人都有一个位于某个邮件服务器上的邮箱(mailbox),一个邮件消息的典型旅程是从发信人的用户代理开始,邮件发信人的邮件服务器,中转到收信人的邮件服务器,然后投递到收信人的邮箱中。
DNS 设置,包括 MX记录和 A 记录的设置
整个邮件系统包括: 服务器端和客户端,服务器需要基于 SMTP协议,客户端基于 POP3、IMAP 等协议。SMTP 监听端口为TCP 25端口POP3 监听端口为 110,IMAP 监听端口为 143。
更准确地说,信息被发送到负责传输邮件的服务器 (被称为邮件传输代理 (Mail Transport Agent,MTA) ,经过若千MTA后,最终到达收件人的 MTA。在互联网上,MTA 之间使用 SMTP 协议进行通信,也称为SMTP服务器。
收件人的 MTA 会将电子邮件投递给邮件接收服务器(被称为邮件投递代理 (Mail Delivery Agent,MDA) ,MDA 会保存邮件并等待用户收取。MDA 主要有两种协议: POP (Post Office Protocol)
MUA: 用户代理端,即用户使用的写信、收信客户端软件。 MTA: 邮件传送端,即常说的邮件服务器,用于转发、收取用户邮件。 MDA: 邮件代理端,相当于 MUA和MTA 的中间人,可用于过滤垃圾邮件。
POP:邮局协议,用于MUA 连接服务器收取用户邮件,通信端口 110。 IMAP: 互联网应用协议,功能较 POP多,通信端口 143。 SMTP: 简单邮件传送协议,MUA 连接 MTA或MTA 连接 MTA 发送邮件使用此协议,通信端口 25。
postfix安装实践
Postfix可以使用发件人的账号密码来发送邮件,但这并不是必需的。Postfix可以配置为使用SMTP服务器来发送邮件,而不需要身份验证。这通常称为“匿名访问”或“无凭据访问”。然而,如果您需要使用特定的发件人地址来发送邮件,并且该地址需要身份验证,那么您需要配置Postfix使用发件人的账号密码来发送邮件。
编辑 postfix 主配置文件,vi /etc/postfix/main.cf
postconf -e mydestination=test.com
postconf -e myhostname=mail.test.com
postconf -e alias_database=hash:/etc/postfix/aliases
postconf -e alias_maps=hash:/etc/postfix/aliases
newaliases
/etc/init.d/postfix restart
测试:
echo "test"|mail -s "test" aa@163.com
echo test | mail -s "test message" -a "From: user1@test.com" aa@qq.com
日志:tail -f /var/log/mail.log/mail
邮件mailbox:/var/mail/
DNS相关命令:nslookup, dig
nslookup -query=txt test.com
dig test.com txt
问题:
Postfix怎么配置用户名密码,
Postfix使用SMTP服务器发送邮件被当成垃圾邮件拦截的原因很多,其中包括域名解析、SPF记录、DKIM签名等