CSDN博客

img jackal3

实现SMTP服务

发表于2004/9/24 19:50:00  2187人阅读

SMTP服务概述
鉴于本课程的默认读者群是那些对Internet的使用已经比较熟悉的老用户,所以我们在此并不打算花很多时间介绍e_mail的使用常识,如果读者对于收发e_mail的操作碰巧还存在不明确的地方,请参阅其他关于Internet基本操作的课程。本节我们着重讨论e_mail通信的原理及其在较低网络层次上的实现机制,我们将试图在读者头脑中建立有e_mail在Internet中传送原理的最基本认识。
我们知道e_mail用户的唯一性标识是邮件地址,形如uesrname@domain.com,即名为uesrname的用户使用域名为domain.com的邮件服务器进行邮件的发送和接收。用户通常使用客户端邮件软件(例如foxmail、Outlook Express等)联系服务器进行邮件收发。客户将邮件提交给邮件服务器之后,还需要由服务器进行一系列复杂的传递操作,这才能将邮件传送到目的地址所在的邮件服务器主机。这一传的过程的实现就依赖于SMTP服务,SMTP定义了一套有效的邮件传递规则,它以协议的方式规定了网络中全部邮件服务器共同遵守的准则。
这里我们要指出,我们所熟悉的电子邮件服务除了依赖于SMTP协议之外,还需要POP协议的支持,而POP协议是IIS所不能支持的,所以使用IIS服务器并不能实现完整的邮件服务,这需要大家明确。笼统的说,SMTP负责邮件的传递,例如从客户机到邮件服务器,以及服务器之间的传递工作。而POP协议能够让客户检索到由SMTP发送来的邮件,并将新的邮件下载的用户本地。
右图显示了SMTP和POP协议在电子邮件传递过程中的作用。SMTP以文件夹的方式存储邮件,用户只要将需要发送的邮件投入SMTP服务器上指的文件夹中即可实现邮件的发送,但是,用户不得不自行检索相应的文件夹得到自己的新邮件(实践中并不用这种方法)。
现在我们来看POP,POP的含义是邮局协议(Post Office Protocol),一般的,人们习惯于使用POP协议的版本号称呼POP服务器,目前在Internet上的大多数POP服务器为POP3服务器。如右图,SMTP服务器将邮件发送给POP3服务器。用户使用客户端邮件软件联系POP3服器,使用账号和密码进行身份验证之后,用户将待发邮件从本地发送到服务器,POP3服务器将用户邮件发送到用户本地。这一过程中,POP3服务器本身也是一台SMTP服务器,但它能够 为每一用户指定一个单独的文件夹,这是纯粹的SMTP服务器所不能做到的。
上述内容并非大多数电子邮件服务提供商所实际使用的方式,作为补充,我们再次简要介绍一下公用邮件服务提供商通常(例如freemail.263.net、hotmail.com)使用的工作方式。它们通常同时使用两个邮件服务器地址,如freemail.263.net:它的POP3服务器为263.net ,SMTP服务器为smtp.263.net。用户通过客户端邮件软件(需要配置SMTP及POP3服务器地址)连接到263免费邮件服务器之后,先要通过账号身份验证,然后进行邮件收发。这里涉及两个过程:SMTP和POP3。用户使用SMTP,通过TCP端口25发送邮件;而POP3检索用户的新邮件并使用TCP端口110将新邮件发送到用户本地。由此可见,完善的邮件服务需要SMTP和POP3的共同作用。但是鉴于IIS并不支持POP3,所以我们将不介绍很多POP3的内容。说到这里,读者应该清楚的了解IIS在邮件服务方面的限制,不过在某些场合,SMTP还是有它存在的价值。
SMTP工作原理
前文已经提到,IIS所支持的SMTP服务存在许多功能或性能的限制,这是由SMTP服务本身的限制所决定的。事实上,即使是IIS所支持的SMTP服务也只是Microsoft的其他邮件产品,如Exchange、Site Server,所提供的SMTP服务的简版。与其说存在技术上的瓶颈,还不如说是Microsoft的一种产品策略,毕竟IIS是随Windows 2000免费附送的,而Exchange、Site Server或其他公司等邮件(群件)产品(如Notes等)都是价值不菲的软件。同时,对于小型商业企业、政府、教育机构来说,IIS的SMTP所实现的功能已经足够了。同时,在某些只需发送邮件的场合(宣传、营销等),使用SMTP还有意想不到的作用。为了弥补SMTP服务不能主动接收邮件的缺陷,某些系统管理员还通过自己写一些ASP代码实现邮件检索功

能(通过CDO for NTS库),从而可以读取SMTP文件夹中的简单邮件等。
SMTP通过文件夹方式实现邮件的传送,一封邮件在存送的各个不同过程(状态)下被SMTP放入不同文件夹中。例如,用户只需将待发送的邮件投入发送文件夹就可以由IIS实现自动发送,而用户收到的新邮件也是被IIS投放到收件文件夹中。
由IIS自动生成的默认SMTP站点具有如右图所示的缺省文件夹,它们位于inetpub目录下的mailroot文件夹中,主要的功能文件夹有:
● Pickup:拾取待发送邮件,用户将待发邮件投入此文件夹。
● Queue:保存传送过程中的邮件,因网络繁忙、目标服务器无响应等原因不能一次发送成功的邮件暂存在此等待继续发送。
● Drop:接收所有传入邮件。
● Badmail:存放不能投递且不能返回发送者的邮件(称为死信)。
● Route、SortTemp、MailBox:IIS使用这些目录对发往其他服务器的邮件进行排序和重组,从而使投递过程有序、快捷。
注意:上述文件夹中,除了Badmail和Drop可以移到其他分区外,其余文件夹必须保存在NTFS分区上。
SMTP服务的工作原理如右图所示,一旦用户将待发邮件投放到Pickup文件夹中,IIS即时将信邮件拾获并加入Queue文件夹,然后由IIS判断邮件的目标地址,根据收件人位于本地或远程判断下一步工作:
● 本地邮件传送:如果邮件是送交本地收件人的,IIS将其从Queue文

件夹直接移动到Drop 文件夹中,一旦邮件存放到Drop目录,SMTP的邮件传送循环就算完成了。
● 远程邮件传送:对于收件人账号位于远程邮件服务器商的邮件,SMTP服务将进行如下操作:
1.SMTP服务将邮件进行编组,以便在发送时能够一次将多个邮件同时发送出去,以优化网络资源消耗。
2.IIS负责检验远程邮件服务器是否做好接收邮件的准备,一旦准备妥当即可进入下一步。否则,邮件将重新进入待发邮件队列(Queue文件夹),随后,IIS将每隔一定时间从新尝试联系目标服务器,尝试次数与收件间隔可在SMTP服务属性中设置(详见下文)。

2.IIS负责检验远程邮件服务器是否做好接收邮件的准备,一旦准备妥当即可进入下一步。否则,邮件将重新进入待发邮件队列(Queue文件夹),随后,IIS将每隔一定时间从新尝试联系目标服务器,尝试次数与收件间隔可在SMTP服务属性中设置(详见下文)。
3.IIS将邮件实际发送到Internet(Intranet)中,等到目标邮件服务器返回一个成功收到邮件的信息之后,邮件的发送工作就算圆满完成了。此步骤中可选的高级功能包括SSL加密、使用智能主机转发、指定特殊路由等将待稍后详述。
4.一旦目标邮件服务器不能接受邮件(主要因为目的地址不存在或邮件据收),IIS将尝试将邮件返回给发送用户,如果返回操作不成功,该邮件将作为死信投递到Badmail文件夹中。
上述过程就是IIS中SMTP服务的工作原理,除了IIS服务器之外,客户机还需安装客户端邮件程序。

配置SMTP服务器
在上文阐述的SMTP服务工作原理基础上,我们在本节中将讨论配置SMTP服务器的具体方法和技巧。SMTP服务器的创建、管理和配置工作是在IIS中完成的,其中SMTP服务器属性表单和域属性表单是对SMTP进行配置的主要界面。
创建SMTP虚拟服务器
SMTP服务也有虚拟服务器的概念,通过创建SMTP虚拟服务器可以在同一台计算机上实现多个SMTP邮件服务器。当然,不同虚拟服务器的缺省目录(邮件文件夹)是不同的。
在网络中唯一区分SMTP服务器的标识有IP地址和TCP端口号,SMTP服务的缺省TCP端口号为25。通常在IIS安装完成之后(安装过

程中已选择SMTP服务),系统自动生成一个默认SMTP站点,它与默认Web服务器和默认FTP服务器共用系统缺省的IP地址。
以下我们将新建一个SMTP虚拟服务器站点:
1.在IIS管理控制树中右击计算机节点,如右上图所示,在弹出菜单中指向【新建】单击【SMTP虚拟服务器】。
2.在【SMTP虚拟服务器创建向导】对话框中指定新站点的标识,在【SMTP虚拟服务器描述】栏中添入的名称实际用于在IIS内部区分站点,注意,这一名称并非SMTP服务器的域名。单击【下一步】。

3.如左上图所示,在【选则IP地址】对话框中指定SMTP虚拟服务器使用的IP地址。单击【下一步】。
4.右上如图所示,在【选择主目录】对话框中,单击【浏览】指定服务器主目录,上文提到的SMTP服务文件夹都包含在服务器主目录下。注意,SMTP主目录必须位于NTFS分区中,否则向导将不予认可,但Badmail和Drop文件夹可以稍后移动到其他分区中。单击【下一步】。
5.如中图所示,在【选择默认域】对话框中,指定当前SMTP虚拟服务器的默认域名称,默认域将继承全部的站点属性,一个SMTP虚拟服务器只能有一个默认域,该域将不能被删除,除非预先将默认域职责转移到其他域中。IIS将使用这里指定的域名命名默认域。
6.单击【完成】结束SMTP虚拟服务器创建工作。

创建SMTP作用域
SMTP虚拟服务器至少包含一个域,即本地默认域,用于标记一般性消息。本地默认域只有一个,并且不能删除。默认域的名称是这样规定的:如果IIS计算机在其设置的DNS服务器(从【控制面板】、【网络】、【TCP/IP属性】对话框中设置)中注册了一个DNS域名,则本地默认域自动使用这一名称,即使这一名称被更改过,IIS仍然能够在下一次计算机启动时自动与之同步;如果IIS计算机没有设置DNS域名,则本地默认域名就是服务器的计算机名。
创建SMTP作用域的方法如下:
1.在IIS管理控制树中右击虚拟SMTP服务器节点下一级的【域】子节点,在弹出菜单中指向【新建】单击【域…】。
2.如右上图所示,在【新建SMTP域向导】对话框中,制定新建域类型,别名域是本地默认域的一个副本域,它使用与本地默认域相同的系统文件夹(Drop等目录);远程域是为了方便对远程站点进行管理而设置的域。单击【下一步】继续。
3.如右下图所示,在【选择域名】对话框的【名称】栏中,指定用户由此域接收/发送的电子邮件所使用的域名,即用户电子邮件地址中"@"字符后面的域名部分。单击【完成】结束配置。此时,新建的域出现在SMTP虚拟服务器地域列表中。
在SMTP虚拟服务器的域节点中,提供了全部域的列表,双击域图标可以打开域属性对话框,对其属性进行配置。由于别名域是本地默认域的副本(影像),故其属性不可配置。
SMTP虚拟服务器常规属性
SMTP虚拟服务器属性表单提供了对SMTP虚拟服务器属性进行详细配置的操作界面。在属性表单的【常规】选项卡中,可以对一般性的虚拟服务器参数进行指定,其执行步骤如下:
1.在IIS管理控制树中右击SMTP虚拟服务器节点,在弹出菜单中单击【属性】,打开SMTP站点属性表单。
2.如右上图所示,在属性表单【常规】选项卡的【名称】栏中,可以修改在创建站点时指定的虚拟服务器标识,图中的默认SMTP虚拟服务器是在IIS安装时创建的。
3.在【IP地址】下拉列表中,指定此站点使用的IP地址(缺省以25为端口号)。一般情况下为一个虚拟服务器指定一个IP地址完全能够满足用户要求,但是有时我们也需要复杂的IP地址及TCP端口号设置,例如同时使用多个IP地址作为虚拟服务器的可用地址,或者指定同一(乃至多个)地址的多个TCP端口号,这时,就要配置高级IP地址属性。在左图中单击【高级】,打开高级地址设置对话框。
4.如右下图在【高级】对话框中的【地址】列表中,缺省列出了单一IP地址和默认的端口号25。单击【添加】,指定额外可用的IP地址和TCP端口号。同一虚拟服务器的标识在数量上是不受限制的。但是,如果这里指定的非缺省(25)端口号,客户端邮件程序则需要额外配置。完成后单击【确定】。
5.在【常规】选项卡中选择【起用日志记录】复选框,指定活动日志格式,并单击【属性】设定日志的记录时间及方式等参数。有关日志记录方面的问题,我们在WWW以及FTP服务的章节中已经花了不少笔墨进行介绍,故在此不再详述。


SMTP连接限制
SMTP连接限制类似于WWW服务中的带宽截流功能,其目的都是提高站点的可用性。在SMTP虚拟服务器属性表单的【常规】选项卡中单击【连接】,打开如左图所示的【连接】对话框。
SMTP连接属性包括传入和传出两部分,分别限制传入和传出虚拟服务器的连接限制数和连接超时。连接限制数是指同时连接到当前SMTP虚拟服务器的传入(收邮件)和传出(发邮件)连接用户数目的上限。之所以要将传入和传出连接进行分别限制,是因为对于一个邮件服务器而言,既要保证接收邮件的传送质量,还要保证邮件发送用户的响应速度。
如右图,在【连接】选项卡中的【传入】栏中选择【限制连接数为】复选

框,使连接限制功能生效,然后指定最多同时接收的传入连接用户数,这一数值缺省为1000。对于【传出】栏中指定的邮件传出限制,可以分别设置每个域或者整个虚拟服务器的同时邮件传出数目。所谓连接超时,是指每一连接连续空闲一段时间之后自动与服务器断开连接。缺省的超时时间为10分钟(传入)和25分钟(传出)。连接对话框中还可以更改TCP端口号。
设置邮件属性
通过邮件属性,SMTP虚拟服务器可以对用户邮件的大小、数量进行限制。这种限制的核心目的在于合理的分配网络资源,尤其带宽资源。例如对用户邮件大小的限制,避免了单个用户独占网络流量;又如对邮件的收件人数量限制,有效的控制了垃圾邮件。
SMTP服务器的邮件属性是在虚拟服务器属性表单的【邮件】选项卡中进行配置的,如右图所示。默认时,全部限制统统有效。下面我们先来看看这里的四种邮件限制:
限制邮件大小:限制SMTP服务器所能够接收的最大邮件尺寸,以KB为单位(缺省为2048KB)。当客户邮件程序试图发送一个大于此限制的邮件时,将收到一条未发送报告(NDR),随后将邮件退回客户端。对于远程邮件服务器,如果其支持EHLO,则在实际发送邮件之前会检查此限制,发现邮件过大时自动生成NDR并报告发件人。而不支持EHLO的服务器则试图发送过大的邮件,直到超过此

限制而被迫结束发送并声称NDR。若不想对此值进行限制,在此应取消选择【限制邮件大小为】复选框,以下皆如此。

限制会话大小:限制一个连接中的全部邮件大小的总和,亦即一次连接过程中的总数据流量大小。设置该值时应考虑邮件代理(MTA)反复提交邮件的效应。该值的单位是KB,默认的最大邮件限制为10240KB。
限制每个连接的邮件数:限制邮件客户在一次连接中最多可以发送的邮件数目,默认是20。超出这一限制的邮件将被拒绝发送。限制此值时应考虑对大通讯量邮件用户所造成的性能限制,用户为了完成大量的邮件发送工作,将不得不重新建立连接。
限制每个邮件的收件人数:限制每封邮件的收件人数上限,默认为100。超出该上限的邮件将退回发件人,并附上一个未发送报告(NDR)。有些客户机会再将带有NDR的邮件再次返回SMTP服务器,这时SMTP服务器将不再拒收,而是重新建立一个连接发送这些邮件。
【邮件】选项卡中还可以设置【将未发送报告的副本发送到】这样的值,该值指定了一个mail地址,SMTP服务器所产生的全部NDR报告都将以副本的形式发送给该地址,通常由SMTP服务器管理员处理这些报告。另一个可设定值是【死信目录】,死信是既不能成功发送,又不能返回发件人的邮件,死信目录用于存储这些死信。

设置SMTP传递属性
在前文阐述的SMTP工作原理中,我们尚未提到如果邮件一次发送不能够成功,SMTP服务器将如何处理这些邮件。事实上,一封邮件在其实际发送的过程中,所遇到的情况是相当复杂的,如何处理在各种情况下邮件的命运,就是SMTP邮件传递属性。
如右图所示,SMTP邮件传递属性是在虚拟服务器属性表单中的【传递】选项卡进行设置的。邮件传递属性分为出站属性和本地属性两部分。
邮件的出站传递属性中可以设置一系列参数值,与上一小节的邮件限制参数不同,这些参数不是可选的,也就是说,管理员必须指定传递参数或者使用默认值。
第一、第二、第三次重试间隔:一旦IIS打开某一连接,并且接收服务器已准备好接收数据,则邮件就可以被发送出去。但是如果SMTP服务器第一次尝试联系邮件接收服务器失败后,SMTP服务器如何处理邮件呢?这里的三个参数

就定义了一旦邮件没能成功发送,SMTP服务器再次尝试联系收件服务器的间隔时间,缺省值为15、30、60分钟。就是说,对于一封首次传递不成功(联系目标服务器失败)的邮件,SMTP服务器将在首次尝试发送的15分钟后,进行一次重试;一旦还不成功则在30分钟后再次尝试(第二次重试);第三次重传间隔以此类推。这里所谓重传,实际上就是IIS将这些邮件从新投放到邮件队列文件夹(Drop)中。

后续重传间隔:定义前三次重传之后,(如果还不成功)SMTP将以均匀的间隔时间进行重新传递尝试,默认的后续重传间隔为240分钟。
现在,我们来考虑重传时间的长短对邮件用户和SMTP服务器所造成的影响。应该说邮件用户希望邮件能够快速、准确的到达收件人的服务器,由于总的重传次数是固定不变的(48次),所以较小的重传间隔额可以提高邮件传递的及时性;而较大的重传间隔则可以提高邮件重传的可靠性。但是,在很短的时间间隔内将邮件重新进行发送往往并不会成功,这是由于传递失败的原因多在于远程邮件服务器的状态。故如果将重传间隔设置的很小,除了给SMTP系统造成更大的带宽压力之外,并不会改善邮件的传递性能。在预定的重传次数达到之后,如果邮件仍然未能寄交收件人,SMTP服务器就会将邮件返回给发件人,同时附加一份NDR(未传递报告)。
以下两个参数对于本地和出站邮件属性都有效。
延迟通知:为了允许本地和远程邮件系统之间的时间延迟(在网络上传递信息需要时间),在此设置一个默认的网络延迟时间,SMTP服务器在发送诸如NDR之类的报告时,会考虑到这一延迟时间。该值默认为12小时,我们可以以分钟、小时、天为单位设置研制时间,最大值为9999天。
过期超时:前面提到的邮件最大重传次数并不是限制邮件重传的唯一标准,这里指定的过期超时就是在一定时间之后,SMTP服务器自动放弃邮件的发送,而不考虑重传的次数。默认的过期超时是2天,与延迟通知参数一样,我们可以在1分钟和9999天之间指定该值。

上述指定的传递属性可以一般性的满足邮件发送要求,而对于高级的邮件传递属性,我们则要单独的在【高级发送】对话框中进行设置。在虚拟服务器属性表单的【传递】选项卡中单击【高级】,打开如右上图所示的【高级发送】对话框。其中可以指定的参数如下:
最大跳数:跳数(hops)是报文在Internet上通过路由器的数量,最大跳数指定了一封邮件在传送到收件人服务器的过程中所通过的路由器数目的上限,默认为15,即邮件在传过15个路由器之后,将被自动放弃继续传送,返回发送服务器并附交NDR。跳数的限制基于Internet本身的设计缺陷,某些路由可能是循环的,从而形成死循环。跳数限制的实现方式是在邮件上附加一个跳数计数器,每过一个路由器,计数器自动减一,减到0时即认为发送失败。
虚拟域:我们知道在SMTP协议中规定邮件的包头包含一个"mail from"值,该值指示邮件的发送主机域名,虚拟域的值就是在"mail from"中代替真实域名的别名。这种方式有效的解决了域名安全保密问题,甚至可以使用中文。
完全规范域名:在DNS服务器上的两种记录可以对邮件服务器的域名进行解析:MX记录和A记录。MX(邮件交换)记录用于在邮件服务器的完全规范域名(FQDN)和IP地址之间做出映射;A(地址)记录用于映射主记名和IP地址。两种记录在DNS服务器上共同使用时可以有效的解决解析问题。指定一个SMTP虚


拟服务器的完全规范域名由两种方式:在Windows 2000系统属性中的【网络标识】选项卡中指定;或者在这里输入一个不同的FQDN。新指定的FQDN必须是在DNS服务器中有效的完全规范域名,为了检验其有效性,输入FQDN后单击【检查DNS】,则IIS会自动在DNS服务器上检查名称是否有有效。成功验证域名的提示对话框如右下图所示。

中继主机:通过中继主机可以将全部待发邮件交由另一台服务器上的SMTP远程域(也就是前面创建域时指定的远程域)来进行实际发送。在【中继主机】栏中指定中继主机的域名(FQDN)或IP地址以标识之,推荐使用IP地址(且要用"[ ]"括起来)以较少解析时间。
采用中继主机的理由无外乎是费用和安全两点。鉴于网络中主机的接入方式不同,同样数据流量的费用也不同,记费方式更是千差万别,例如DDN接入就要比ISDN专线贵不少。这样,使用流量费用低的计算机做中继主机显然可以节省大笔网络开销。另一个重要原因是安全性,在防火墙普遍使用的网络环境下,将邮件服务器放在防火墙之内(Intranet中),显然会给黑客留下入侵的方便。比较典型的做法是:将一台防火墙之外的主机作为中继主机,而防火墙之内的邮件服务器并不直接发送邮件,只起到转发和管理的作用。此外,作为公司分支机构的小型组织通常也适用中继主机,只不过它们将中继主机设置为位于公司总部的中心邮件服务器,从而使整个公司的邮件得到统一的发送和分布的管理。
对于中继主机,还有一个属性,即【在发送到中继主机之前尝试直接连接】,选择此复选框后,SMTP服务器将优先采用直接发送的方式进行邮件发送,不能直接发送时才使用中继主机方式。采用这一方式无疑增加了系统的可靠性。
对待收的邮件执行反向 DNS 查询:如果选择此复选框,SMTP服务将试图验证客户机的IP地址是否与 EHLO/HELO命令中客户机提交的主机/域名相匹配。如果反向DNS查询成功,则邮件的"已收到"标题将完整保留。如果验证失败,邮件的"已收到"标题中IP地址后面将出现"未验证"的字样。
注意:因为该功能将验证所有接收邮件的地址,所以使用它会极大的影响SMTP服务器的性能。



SMTP服务器安全性设置
邮件安全的重要性对于企业而言并不亚于Web站点的安全性,某些带有商业秘密的邮件甚至关乎企业随生死存亡,所以,我们在此单独用一节的篇幅讨论SMTP服务安全性的问题。
SMTP服务器的安全性保护方式是多种多样的,从邮件发送角度区分,有传入安全和传出安全限制;从客户角度区分,有身份验证和IP地址、域名限制;从主机角度区分,有中继限制和操作员账号限制;从数据加密角度区分,有账号加密和SSL加密以及TLS加密。以下将具体分析这些安全要素的配置。
SMTP服务器的安全性设置主要是在SMTP虚拟服务器属性表单中的【访问】选项卡中设置的,如右图所示。此外,【安全】选项卡中可以指定站点操作员账号;【传递】选项卡中可以对出站安全进行详细设定。

用户身份验证
在SMTP虚拟服务器属性表单中选择【访问】选项卡,单击【身份验证】,打开如右上图所示的【身份验证】对话框。可供SMTP服务使用的用户身份验证方法主要由三种:匿名访问、基本身份验证和Windows安全程序包,以下分别信息介绍之:
匿名访问:选择该选项允许对所有的客户机对此资源下的全部内容进行访问,且不需要提供用户名和密码。通过选择该复选框并取消本地对话框中的其他两项,可以取消对虚拟服务器的身份限制。
基本身份验证:这是一种标准的身份验证方式,要求用户必须是Windows 2000的合法域用户。且使用该方法时,用户账号和密码使用明文(不加密)在网络中传送,并不安全,容易被黑客截获并破解。建议与SSL或TSL共同使用之。
一旦选用基本身份验证,用户不得不承受安全上的风险,IIS也会提出安全性警告,如右下图所示。
使用基本身份验证时,需要为用户指定一个用于验证其账号身份的域,在【默认域】栏中指定。此外,需要邮件进行TLS(传输层安全)加密时,选择相应复选框。
Windows安全程序包:该选项采用Windows 2000提供的安全程序包机制进行安全性用户账号验证,这里的用户密码时经过加密的。这种安全机制是单一、公共的,得到Windows 系统的统一支持。


客户端邮件程序也要支持Windows安全程序包,典型的,Outlook Express支持这种安全机制。

实现SMTP服务


IP地址和域名访问控制
IP地址和域名访问限制是针对邮件客户机的地址来源进行访问控制的方式。在SMTP虚拟服务器属性表单中选择【访问】选项卡,单击【连接】,打开如左上图所示的【连接限制】对话框。我们可以采用两种方式之一进行客户机限制:【仅以下列表】和【仅以下列表除外】,前者规定了所有许可客户机(除此之外均被拒绝),后者则规定了所有拒绝访问客户机(除此之外均被许可)。注意对比WWW或FTP属性表单中的IP地址限制方式。
单击【添加】打开如中图所示的计算机添加对话框,指定被许可或限制的计算机。如右上图,由三种地址指定方式可供选择:单机、计算机组、域。对于单机,除了指定其IP地址的方法之外,还可以在仅知其主机名或FQDN的情况下反向解析出IP地址的功能。方法是,单击【DNS搜索】打开如左图所示的搜索对话框,输入计算机DNS名称,单击【确定】,则IIS调用DNS服务器解析计算机,并将被解析计算机的IP地址加入限制。
除单机方式外,还可使用网络标识(加子网掩码)或者域名指定一组计算机,注意域名限制会增加相同负担。

IP地址和域名访问控制
IP地址和域名访问限制是针对邮件客户机的地址来源进行访问控制的方式。在SMTP虚拟服务器属性表单中选择【访问】选项卡,单击【连接】,打开如左上图所示的【连接限制】对话框。我们可以采用两种方式之一进行客户机限制:【仅以下列表】和【仅以下列表除外】,前者规定了所有许可客户机(除此之外均被拒绝),后者则规定了所有拒绝访问客户机(除此之外均被许可)。注意对比WWW或FTP属性表单中的IP地址限制方式。
单击【添加】打开如中图所示的计算机添加对话框,指定被许可或限制的计算机。如右上图,由三种地址指定方式可供选择:单机、计算机组、域。对于单机,除了指定其IP地址的方法之外,还可以在仅知其主机名或FQDN的情况下反向解析出IP地址的功能。方法是,单击【DNS搜索】打开如右上图所示的搜索对话框,输入计算机DNS名称,单击【确定】,则IIS调用DNS服务器解析计算机,并将被解析计算机的IP地址加入限制。
除单机方式外,还可使用网络标识(加子网掩码)或者域名指定一组计算机,注意域名限制会增加相同负担。

中继主机限制
前文讨论邮件的高级传递属性时,我们曾经描述过中继主机(在SMTP属性表单【传递】选项卡中的【高级】对话框中指定),中继主机是实际发送邮件的计算机,但并非所有计算机都允许其他邮件服务器使用自己进行中继,中继主机限制也是邮件服务器的安全限制之一。限制其他计算机进行中继的步骤如下:
1.在SMTP虚拟服务器属性表单中选择【访问】选项卡,单击【中继限制】栏中的【中继】。
2.如右图所示,在【中继限制】对话框中,指定中继限制方式为下列两种之一:【仅下面的列表】或者【仅下面的列表除外】。其中,前者指定能够使用当前虚拟SMTP服务器进行中继的计算机(其他计算机均不能中继),后者指定不能使用当前虚拟SMTP服务器进行中继的计算机(其他计算机均能中继)。

3.单击【添加】,打开添加计算机对话框,这里我们也可以采用三种方式指定被授权/拒绝的计算机:单机、计算机组、域名。
4.选则某种方式并输入限制参数:单一IP地址(也可以通过计算机进行反向DNS解析)、网络地址及子网掩码、域名,然后单击【确定】。
5.重复上述过程可以添加多项拒绝或许可访问计算机。
6.注意【中继限制】对话框下方的复选框:【允许所有通过身份验证的计算机进行中继,而与上面的列表无关】, 一旦选定该复选框,前述全部配置将不再有效,当前虚拟服务器将自动对验证用户进行中继。
7.单击【确定】完成配置。
出站安全设置
IIS的SMTP服务不仅能够限制连入虚拟服务器用户,采用特定的用户账号验证机制,还能够强制指定出站用户所需要的账号安全验证机制。这就是出站安全性属性。
在SMTP虚拟服务器属性表单中选择【传递】选项卡,单击【出站安全】,打开如右图所示的【出站安全性】对话框。注意,出站安全性设置应与邮件接收服务器所配置的接收(传入)身份验证要求相一致。否则,将造成邮件据收或者不能认证用户身份的错误。
管理员可以采用三种出站安全验证方式之一对出站用户账号进行限制。
匿名访问:使用该选项来禁用出站传送的身份验证。这是默认选项。
基本身份验证:如果使用"基本身份验证"选项,则全部连接到服务器的帐户名和密码将以明文形式在网络中传送。该设置应与接收服务器收到的身份验证

要求相匹配。该选项要求提供用户名和密码。单击【浏览】来选择用户。
Windows 安全程序包:选择该选项来对身份验证使用"Windows 安全程序包"。该设置应与接收服务器收到的身份验证要求相匹配。该选项要求提供 Windows 帐户名和密码。单击【修改】来选择帐户。
对于上述三种验证方式,都可以选择【TLS加密】复选框来指定对邮件进行传输层安全传送(对邮件内容进行数据加密)。
最后,我们要再次强调,邮件发送服务器所设置的传出安全验证方式必须与邮件接收服务器所设置的传入安全验证方式向匹配(一致)。
设置站点操作员
对于如右图所示的站点操作员配置对话框,我们已经不再陌生了,不论是对于WWW虚拟服务器或者FTP虚拟服务器,我们都曾经为其指定站点操作员账号。SMTP虚拟服务器也不例外,在服务器属性表单中的【安全】选项卡配置具有管理当前虚拟服务器的操作员账号。
如左图,单击【添加】,并从【选择用户或组】对话框中指定站点操作员用户账号,单击【确定】即可。
至此,我们已经完成了有关SMTP服务属性配置的几乎全部细节,从本章中学到的知识足以保证一个邮件站点管理员应付一般性的操作。这里,要提醒大家的是,SMTP服务本身是一个双向的过程,涉及至少两台SMTP服务器之间的交互访问。因此,尤其对于是涉及邮件加密、用户验证等排他性的属性设置问题,必须考虑到邮件接收服务器的相关属性设置。
最后,根据Microsoft SMTP服务以及IIS中的SMTP虚拟服务器的特性,

我们来讨论一下SMTP邮件服务器的使用范围。由于SMTP服务器只能自动发送邮件(只需将邮件放入相应文件夹中即可),但是并不能自动接收邮件,也难以采用现有的流行邮件客户端程序接收邮件,因此,如果在邮件环境中没有POP3服务器的支持,难以形成简单、灵活的邮件收发系统。但是在如下情况下,IIS邮件服务,即SMTP服务器仍然有不小的价值:
1.只需发送邮件,不考虑接收的情况下,例如企业宣传、营销、内部通知能领域。
2.小型公司、企业或者政府组织,邮件用户不多,数据流量不大的环境。如果管理员采用ASP等技术编写一个邮件自动接收程序(定期检查收件文件夹),则可以大大加强邮件系统的自动化程度和可用性。

阅读全文
0 0

相关文章推荐

img
取 消
img