您所在的位置:读书频道 > 操作系统 > Linux > 19.4.4 信件传送流程与收信、Relay等重要观念

19.4.4 信件传送流程与收信、Relay等重要观念

2007-12-06 19:01 鸟哥 机械工业出版社华章公司 字号:T | T
一键收藏,随时查看,分享好友!

《鸟哥的Linux私房菜——服务器架设篇》(第二版)第19章的主要介绍的是以Postfix为主的邮件主机架设。本文主要介绍的是信件传送流程与收信、Relay等重要观念。

AD:

19.4.4  信件传送流程与收信、Relay等重要观念

相信您对于MTA的设置与收发信件应该有一定程度的了解了,不过要妥善设置好您的MTA,尤其是想要了解到整台MTA是如何收发信件时,您最好需要知道MTA是如何接收来源主机所传来的信件,以及将信件转发到下一台主机去的整个流程。一般来说一封邮件的传送会经过如下流程。

(1)送信端与收信端这两台主机间会先经过一个握手(ehlo)的阶段,此时送信端被记录为发信来源(而不是Mail from)。通过握手后就可以进行信件标头(header)的传送。

(2)此时收信端主机会分析标头的信息,若信件的“Mail to: 主机名称”为收信端主机,且该名称符合mydestination的设置,则该信件会开始被接收到队列,并进一步送到Mailbox中;若不符合mydestination的设置,则终止联机且不进行信件内容(body)的传送。

(3)若“Mail to:主机名称”不是收信端本身,则开始进行转发(Relay)的分析。

(4)转发过程首先分析该信件的来源是否符合信任的客户端(这个客户端为步骤1所记录的发信主机),即来源是否符合mynetworks的设置值,若符合则开始接收信件到队列中,并等待MDA将信件再转发出去,否则继续下一步。

(5)分析信件来源或目标是否符合Relay_domains的设置,若符合则信件将被接收至队列,并等待MDA将信件再转发出去。

(6)若这封信的标头数据都不合乎上述的规范,则终止联机,并不会接收信件的内容数据。

也就是说,标头分析通过后,您的信件内容才会开始上传到主机的队列,然后通过MDA来处理该信件的流向。而不是将信件完整的传送到主机后才开始分析。而通过上述的流程后,在暂不考虑Access以及MDA的分析机制、一台MTA想要正确的收、发信件时,电子邮件必需要符合以下需求。

收信方面:需要符合以下需求。

• 发信端必须符合$inet_interfaces的设置。

• 信件标头的收件者主机名称必须符合$mydestination的设置,或者收件主机名称需要符合$virtual_maps(与虚拟主机有关)的设置。

转发方面:需要符合以下需求。

• 发信端必须符合$inet_interfaces的设置。

• 发信端来源必须为$mynetworks的设置,发信端来源或信件标头的收件者主机名称符合 $Relay_domains的设置内容。

同样的原理与想法您可以将它用在SendMail的设置中。不过很多垃圾信却是利用这个默认的收发管道来发送的,请看下面的两道例题。

例题1:在我的主机上面竟然发现这样的广告邮件,即利用我的主机发送广告邮件给我自己。为什么这样也可以呢?

答:首先,您必须熟悉上述的流程,由步骤2可知,当主机收到一封信且这封信的目标是自己,且符合mydestination的设置时,该信件就会被收下来而不必验证客户端是否来源于mynetworks。所以,任何人都可以用这个流程来寄信给您。不过,您的MTA并不是Open Relay,不会帮别人发送广告邮件的,不用担心。

例题2:我的主机明明没有Open Relay,但很多其他的MTA管理员发信给我,说我的主机的某个账号持续发送广告邮件,但是我的主机明明没有那个账号。这是怎么回事?

答:仔细看一下流程的步骤12,确认该封信能否被收下来与发信端、收信端的主机名称有关。而我们知道在邮件的header里还有一个Mail from的标头设置项目,这个标头设置是在查阅邮件时看到的“回邮地址”,这个数据是可以伪造的。而且它与收发信件的数据无关。所以,您应该告知对方MTA管理员,请他提供详细的log数据,才能够判断该封信是否由您的主机所发送出去的。一般来说,目前的广告业者很多都是利用这种欺敌的方式来处理的,所以您必须请对方提供详细的log file数据,以供查验。

【责任编辑:董书 TEL:(010)68476606】

回书目   上一节   下一节

分享到:

  1. Linux服务器配置全程实录
  2. 揭秘--优秀PPT这样制作

热点职位

更多>>

热点专题

更多>>

读书

高质量程序设计指南:C++/C语言(第3版)
本书以轻松幽默的笔调向读者论述了高质量软件开发方法与C++/C编程规范。它是作者多年从事软件开发工作的经验总结。本书共17章,

51CTO旗下网站

领先的IT技术网站 51CTO 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 51CTO学院