前言
邮件已成为日常工作中必备的工具,常常作为正式交流的一种方式,那发送一封邮件是如何到达目标邮箱的呢?
相关协议
邮件系统中各组件之间交互使用的协议。
SMTP
Simple Mail Transfer Protocol
,即简单邮件传输协议,用来发送邮件。
POP3
Post Office Protocol
,邮局协议第3版,用于支持使用客户端远程管理在服务器上的电子邮件。
IMAP4
Internet Mail Access Protocol
,因特网邮件访问协议第4版,和POP3类似,但要高级些,例如,IMAP4可以通过客户端直接对服务器上的邮件进行操作,而不需要把邮件下载到本地。
相关组件
MUA
Mail User Agent
,接收、查看、编写邮件所使用的邮件客户端,使用SMTP、IMAP、POP3协议与邮件服务器通信;例如foxmail。
MTA
Mail Transfer Agent,即邮件传送代理。负责邮件在邮件服务器之间的传递,包括发送邮件、中转邮件、接收邮件,通过SMTP协议实现。
MDA
Mail Delivery Agent,即邮件投递代理,主要的功能就是将MTA接收的信件依照信件的流向,将该信件放置到本机账户下的邮件文件中。涉及邮件的存储和投递,另外它还具有邮件过滤等功能。
MRA
Mail Receive Agent,负责实现IMAP与POP3协议,与MUA进行交互;相当于让你的邮件账户支持离线邮件收取,而不是电脑打开才能收取邮件。
发送邮件流程
同域内发送邮件
例如网易邮箱发送到网易邮箱。
- MTA里的SMTP是SMTP协议的客户端,SMTPD是SMTP协议的服务端
WebMail
不需要安装MUA就能使用邮件功能
不同域内发送邮件
例如网易邮箱发送到谷歌邮箱。
邮件传递
邮件可能会经过多个MTA进行传递,这些MTA称为中继服务器,用于协助邮件的传递、路由和过滤。以可以提高邮件系统的可用性、性能和安全性。邮件传递中继通常在以下情况下需要:
- 如果存在多个邮件服务器,中继服务器在前面起到路由、负载均衡的作用。
- 作为邮件流量的中继点,在防火墙或安全策略限制下,与互联网上的邮件通信
- 控制入向和出向的邮件流量,可进行过滤垃圾邮件、拦截敏感邮件。
参考
- MUA、MTA、MDA、MRA的区别
- Linux中Postfix邮件原理介绍(一)
- 《鸟哥的linux私房菜》第二十二章、邮件服务器:Postfix
- ChatGPT
Post Views: 13