2012-05-11, 15:05 | #1 (permalink) |
高级会员
注册日期: 2011-07-06
帖子: 109
|
电子邮件系统发送邮件的基本过程
下面介绍一封电子邮件从邮件系统中的发信人发到收信人手中的过程。 1、名词介绍 在介绍邮件传递过程前,先介绍一下在
下面介绍一封电子邮件从邮件系统中的发信人发到收信人手中的过程。 1、名词介绍 在介绍邮件传递过程前,先介绍一下在邮件传递过程中涉及的几个概念。 邮件用户代理(Mail User Agent,MUA):即通常所说的邮件客户端软件,它帮助用户读写和管理邮件。 邮件传输代理(Mail Transport Agent,MTA):在邮件传递过程中经过的一系列中转服务器的统称,它们将邮件发给最终收件服务器或其他的中转服务器。 邮件投递代理(Mail Deliver Agent,MDA):即收件服务器,它负责接收并保存发给用户的邮件。 2、电子邮件发送过程 通常一次完整的邮件发送过程包括以下3个阶段。 (1)发件人将邮件通过MUA提交给邮件发件服务器(发送MTA). 和一般人的思象不同,实际电子邮件在发送时一般并不是直接从发件人计算机上的MUA发到保存收件人邮箱的MDA的。在RFC 2821协议中并没有限制这种做法,但是实际上.客户端软件往往都不会这么做,这主要是最初简化客户端设计时考虑尽最简化。 (2)发件服务器将邮件发送给收件人邮箱所在服务器(收件服务器)。 在这一步中,发件服务器会通过SMTP协议将邮件提交给收件服务器。根据SMTP协议的规定,如果发件服务器无法直接连接收件服务器,可以请求其他的邮件服务器帮助进行转发。如果转发的邮件系统服务器也无法直接连接收件服务器,也可以由其他服务器进一步进行转发.依此类推.直到邮件最终到达收件服务器;或者由于转发时间过长或转发次数过多,系统自动判定收件服务器不可抵达为止。这种转发的方法固然增加了邮件系统的灵活性和对网络故障的容错能力,但也造成了严重的安全隐患。特别是很多邮件系统服务器对转发邮件的来源不加限制,任何服务器都可以通过它来转发邮件,即所谓的开放式转发(Open Relay)。由于在邮件头中只记录了域名信息,而没有IP地址信息,因此经过转发之后无法得知邮件初始发出的IP地址。很多垃圾邮件制造者就利用这一点结合伪造域名信息来隐藏自己的实际发信地址。 邮件到达收件人邮件系统服务器后,收件服务器会按照系统和用户设置的规则对邮件进行处理。例如,安装了反垃圾邮件网关或者反垃圾邮件系统的服务器会首先对邮件进行反垃圾邮件检查,通过检查的正常邮件才会被保存到用户邮件系统中。再如,有些开通了短信通知的服务器会在保存邮件的同时,向用户手机发送邮件到达短信。还有.263等Web邮箱会按照用户设置的垃圾邮件过滤规则对邮件进行相应处理。 随着技术的进步和用户对邮件系统功能需求的不断增力口,越来越多的处理步骤也被增加到这一环节中。对于反垃圾邮件而言,这一环节是服务器端反垃圾邮件技术的主要应用环节,绝大多数的反垃圾邮件技术都是在这一环节中应用的。 (3)收件人MUA从MDA上收取自己的邮件。 邮件被MDA保存到用户邮箱之后,用户就可以收取这些邮件了。与邮件发送的第一步一样,根据用户所使用的MUA和MDA的不同,不同的用户可能会使用不同的协议来收取邮件。常见的邮件收取协议有POP3和IMAP协议等。邮件被收取后,MUA软件可能还会再进行一些后续处理,如进行客户端反垃圾邮件检查、应用邮件过滤规则等。 从上面的介绍中可以看出,邮件系统的整个投递过程是一个比较复杂的过程,中间涉及客户端和服务器,以及多个邮件系统服务器之间的相互协作,最终才能完成整个邮件的投递。特别是在邮件系统服务器之间的投递环节中,可能会涉及多个服务器间的投递过程。再加上邮件头中的信息没有任何加密保护和验证措施,很容易被篡改和伪造,这就使得追查邮件原始来源成为了一件非常困难的事悄。这也是反垃圾邮件技术研究中的难点之一。 |