本章节说明了如何让你的邮件服务器更加安全。SMTP 服务处理所有发送/接受的邮件。
由于SMTP 协议和Internet 网络协议的开放性,很难把有危害性的邮件或是你不想要的
邮件和正常的邮件区分开来。不管如何,有一些技术可以让你保证你的Imail 服务器的
安全。本章所讨论的选项,大多数你可以在SMTP Security 标签找到。
SMTP协议安全的技术背景
如果你不了解垃圾邮件和其他相关技术术语,我们将下面做一些背景介绍。.
为Internet 传递消息所设计的SMTP 允许电子邮件从Internet 上的一台电脑主机传递
到另外一台电脑主机直到电子邮件到达目的地。这在Internet 早期是必须的。因为,当
时的电子邮件必须跨越不同的网络才能到达目的地。随着Internet 的发展,电子邮件已
经可以直接被发送到目的地而无须跨越多台电脑主机了。之所以保留这种设计模式,是考
虑到可能需要通过创建一个连接(或多个连接)转发邮件到其他的电脑(或者是成百上千
台电脑),让这些电脑发送邮件。
现在,已经已经有了许多方法对付这些垃圾邮件和有危害的病毒等不速之客。
许多电脑公司或ISP 供应商拒绝接受来自某些地址的邮件。另外,采用防火墙或其他技
术也可以达到相同的目的。一旦那些发送不速之客的邮件服务器被人们知道并且据之门
外。那些邮件服务器的管理员会利用SMTP 的开放性的特征—利用Internet 上的其他的
邮件服务器的转发功能来发送他们的邮件。甚至他们利用这些方法修信息头以隐藏他们的
邮件的真实来源。
当你的邮件服务器被用来做这些垃圾邮件的转发服务器发送到数以万计的邮件地址时,你
的邮件服务器的资源很快的被消耗,影响你的正常邮件的发送。
IMail 服务器采用了几种方法保护您的邮件服务器。以下章节会说明这些安全选项。
安全设置的准备工作
本节就这些安全选项作一番准备工作,让你对他们有一个大概的了解。
邮件转发选项
邮件转发选项。IMail 邮件服务器(或其其它任何邮件服务器) 可以接受目的地是其它主
机的邮件然后把它发送到该主机。这就是邮件转发功能。如果你的邮件用户在他们各自的
电脑上通过你的Imail 邮件服务器发送邮件到其他邮件主机,那么你的Imail 邮件服务
器必须提供转发功能。
本地邮件不需要邮件装发功能。这是因为,一封发往本机的邮件或者产生自本机的邮件不
需要邮件转发功能。所以,如果你的客户都直接在该邮件服务器发送/接受邮件,或者他
们都通过Web 邮件发送/接受,那你可以选择禁止邮件转发功能( No Mail Relay )。
如果你担心那些垃圾邮件制造者使用你的Imail 邮件服务器转发邮件,你可以使用以下
选项限定合法的转发权限。
%26amp;#8226; Relay mail for 选项指定一个或一段范围的IP 地址。从这些地址连接你的Imail
邮件服务器发送邮件的有权限转发邮件。
%26amp;#8226; Relay mail for local hosts only 选项限定只有本地机发送者有权限转发邮件。
Relay mail for local users only 只有Imail 的用户有权限转发邮件。
%26amp;#8226; 当你使用选项“Relay for” 时, 你可能有用户从你未指定的IP 地址发送邮件。你
可以使用SMTP AUTH(SMTP 认证) 命令。确认用户在他们的邮件客户端软件中选择了
“user authorization”(用户认证) 选项(注意,不同的邮件客户端软件有不同的名
字)。SMTP AUTH 会在用户发送邮件是对用户帐号和密码进行认证。对于邮件服务端和
客户端来说,这些操作是透明的。
认证接收的邮件
有很多方法可以用来检查接受的邮件的邮件头和正文信息以过滤垃圾邮件。
%26amp;#8226; 在Kill file 输入垃圾邮件的邮件地址或域名(例如: @domain.com)。
%26amp;#8226; 利用分发规则在接受的邮件的邮件头和邮件正文中搜寻特定的信息。例如,你可以在邮
件头或正文中搜寻“$$$ GET RICH QUICK” 。如果你找到,你可以把这封邮件转移到你
指定的邮箱中。分发分发规则支持强大的表达式搜索。你可以利用规则和信息管理协作转
移那些垃圾邮件到管理员的邮箱中。这样,你的用户就不会收到垃圾邮件了。请参考第四
章“User Mail Accounts”(用户邮件帐号)。
%26amp;#8226; Disable SMTP “VRFY” command 关闭SMTP 验证命令选项.
The SMTP VRFY command(SMTP验证)用来验证一台邮件主机上的合法用户帐号,当然,
也可以用来测试某用户是否为该邮件主机上的合法用户。关闭该命令可以防止垃圾邮件制
造者探测合法的用户帐号然后冒用该帐号发送垃圾邮件。如果你选择该选项,当Imail
邮件服务器受到一个SMTP VERY(SMTP 验证) 请求时,将会返回如下消息:
252 Cannot VRFY user
%26amp;#8226; 采用以下选项之一以确认非法的使用或是检查邮件头.
自动拒绝可能的黑客攻击
拒绝发送者为空(NULL )的邮件
检查合法的发送者
关于这些选项的具体信息,请参阅“Validating Incoming Mail” (检验接受的邮件)
访问控制选项
如果你想拒绝来自某一IP 地址的邮件, 请使用Control Access(访问控制). 相关信息
参考“Setting Access to the SMTP Server”( SMTP 服务的访问设置).
改变SMTP 欢迎消息
当你登入SMTP 时, 该服务将返回一条欢迎消息. 该消息包括邮件服务期的版本信息,发
行商和操作系统信息. 你可以更该欢迎消息以隐藏这些信息. 隐藏这些信息有助于你保护
你的邮件系统免受黑客的攻击或是垃圾邮件制造者的入侵. 参考“Changing Service
Welcome Message for SMTP, POP3, and IMAP4” (改变SMTP,POP3,IMAP4 服务的欢迎
消息).
SMTP 安全设置选项
你可以设置哪些用户有权限访问你的邮件服务器. 你有多种方法可以控制你的SMTP 安全
设置. 本节讨论如何利用SMTP 安全选项防止非法的访问和邮件. 参考本章的
“Security Strategies”(安全计划).
IMail 服务器
如何设置以下这些SMTP 服务的选项:
1 单击SMTP Security(SMTP 安全) 标签. 你可以看到SMTP Security属性页.
2 选择任一各选项(下面的章节会有相关描述)设置SMTP 服务的安全.
3 单击Apply 保存设置. 单击OK to保存你的设置并且退出对话框.
注意
如果你对SMTP 的设定作了任何的改动,你必须停止SMTP 服务然后重新启动SMTP. 这
样,你的修改才会有作用.
Setting Mail Relay Options 设置邮件转发选项
你可以利用Mail Relay Options 邮件转发选项防止未经允许的邮件通过你的邮件服务
器转发. Relay mail for 让你可以控制你的Imail 服务器. 你可以只接受那些产生自本
地的或目的是本地邮箱的邮件. 你可以定义某些系统或地址为被认为是本地的.
在设置邮件转发选项时你必须考虑的
在使用“Relay for” 选项是你必须考虑以下的问题..
%26amp;#8226; 你的邮件用户在发送邮件时,邮件是通过Imail 服务器转发的.所以,你必须让Imail
知道你的邮件用户系统的IP 地址.
%26amp;#8226; 如果你的某一个用户需要从不确定的IP 地址发送邮件,你可以让你的用户在他的邮件
客户软件中使用“user authorization”(用户认证) 选项. 当使用这个选项后, Imail
服务器利用SMTP AUTH(SMTP 认证) 命令检查合法用户的帐号和密码.
%26amp;#8226; 如果你有一台Imail 服务器被设定为某一台远端邮件服务器的备份服务器,并且你想
限制你的服务器转发服务的访问, 使用选项Relay for Addresses (对这些地址的邮件转
发) 指定作为备份服务器的Imail 邮件服务器的主机的地址. 参考
”第三章: IMail 的配置”.
Relay mail for anyone 转发任意发送者的邮件
允许SMTP 服务接受目的地为其他主机的邮件并分发到正确的主机.这是默认的设定.
该设定是你的SMTP 服务对所有的用户开放. 某些垃圾邮件发送者可以通过你的服务器发
送邮件,甚至是他们发送的邮件看上去是从你的服务器上产生的. 参考
“SMTP 协议安全的背景”.
Relay mail for 转发来自指定地址的邮件
允许SMTP 服务转发来自指定的IP 地址的邮件(邮件服务器把这些地址认为是本地的地
址).
如果想指定IP 地址, 单击addresses(地址) 按钮. 然后“Access Control”(访问控制)
对话框出现.
1 单击Add(增加) 按钮. 对话框“Accept as Local”(认为来自本地) 出现.
2 在IP Address(IP 地址) 框中, 输入你指定的IP 地址.
如果想批量增加IP 地址,选择Group of Computers 选项. 在IP Address(IP 地址)
和Subnet Mask(掩码) 框中, 输入IP 地址和掩码.这样,这一段中的IP 地址都将被认
为是本地地址.
例如, 如果你有一个C 类地址156.21.50.0, 输入地址156.21.50.0 和掩码
255.255.255.0. 于是,这一区域中的254个地址将被认为是本地地址. 来自这些IP 地址
的邮件被允许转发邮件.
3 单击OK 把这些IP 地址添加到列中. Imail 将对来自列表中的IP 地址转发邮件.
4 单击OK 保存更该. 注意,你必须停止服务然后重新启动服务以使这些更该生效.
如果那些被认为非本地的系统试图通过你的Imail 邮件系统发送邮件,将会受到以下的信
息: 550 unknown local host %s, not a gateway
No Mail Relay 不允许邮件转发在该选项下, SMTP 服务将拒绝转发所有的来自其他
IP 地址的邮件. 如果你选择了该设定,确认“Disable SMTP Auth Reporting”(关闭
SMTP 认证报告)没有被选中. 该设定将强迫用户认证.
注意
如果你使用的邮件客户端为Outlook 或Eudora, 你必须选择
“my server requires authentication”. 该选项在不同的客户端上有不同的表达方式.
Relay mail for local hosts 只为本地主机转发邮件
检查接受邮件的“From” 地址并确定包含一个正确的Imail 服务器主机名字. 该名字
必须为主机名或者是虚拟主机的名字, 或者是一个主机的正确的存在于该Imail 系统的
别名. 如果不是, 服务器将不会转发该邮件. 如果一个主机有别名,你必须在accept.txt
文件中加入这个别名.
你可以和本选项结合文件accept.txt 使用使Imail 可以接受被命名的远程主机并认为
是”本地”主机.
当你在使用选项” “store and forward” 转发其他邮件服务器的邮件时,你不能使用本
选项.
Relay mail for local users 只为本地用户转发邮件
检查接受邮件的“From” 地址并确定包含一个正确的Imail 服务器主机名字, 然后检
查该主机的用户帐号. 该选项不会检查用户的别名,如果某个用户希望使用别名,该别名
必须存在于accept.txt. 如果该主机的名字或用户帐号不正确,服务器不会转发邮件.
你可以和本选项结合文件accept.txt file 使用使Imail 可以接受远端主机和用户并
把他们认为是”本地”主机和”本地”用户.
当你在使用选项” “store and forward” 转发其他邮件服务器的邮件时,你不能使用本
选项.
Using the accept.txt file 使用文件accept.txt 该文件让你可以告知Imail 哪些主
机和用户希望被认为是”本地” 的. 该文件可以和选项Relay for Local Hosts
Only(只为本地主机转发邮件) 和Relay for Local Users Only(只为本地用户转发) 结
合使用..
如何创建accept.txt 文件:
1 利用Windows 记事本或其它的文本编辑软件,建立一个名字为accept.txt 的文件.
2 每一行输入一个IP 地址或是主机名字. 不要用空格符或是分隔符.
例如,输入主机:
mail1.widget.com
mail5.foo.com
例如,输入用户:
fred@mail1.widget.com
bob@mail5.foo.com
文件accept.txt 使用绝对匹配来匹配主机或是邮件地址. 不支持广义匹配或部分匹配.
3 保存文件accept.txt 到: [IMail Top Directory]\accept.txt
Setting Access to Local Mail Groups 本地邮件组的访问设置
你可以利用以下的选项设置对你的邮件服务器上的本地邮件组的访问(这些选项不影响邮
件列表,标准别名或是其他的程序别名)
Allow remote mail to local groups 允许远端邮件到本地组当选中该项时,SMTP 在接
受到一封远端邮件后将检查一个在Imail Client application( Imail 客户端程序) 中
定义的本地组,如果发现该远端邮件地址存在于本地组时, Imail 将把这封远端邮件重新
发送到本地组中定义的相对应的用户信箱中.
Allow remote view of local groups 允许从远端查看本地组When selected当使用该
选项后, SMTP 服务远端的主机执行命令“EXPN” 查看本地主机中的某个组中的所有用
户名.
注意
以上所描述的设置不会影响邮件列表.对邮件组的别名有影响.如果你想让邮件组的别名可
以正常工作,你必须选中“Allow remote mail to local groups”(允许远端邮件到本地
组)
Validating Incoming Mail 验证接受的邮件
你可以利用以下的选项检查接受的邮件是来自合法的用户或是指定的拒绝访问的邮件地
址.
Refuse NULL Senders 拒绝发信人为空的邮件如果该选项被选中, Imail 服务器将
拒绝接受发信人邮件地址为空()的邮件. 接受发信人地址为空的做法会使垃圾邮件制
造者更容易通过你的邮件服务器发送垃圾邮件. 然而,在Internet 标准协议RFC 822 中
要求邮件服务器可以接受发信人地址为空的邮件. 并且Microsoft Exchange 的
postmaster 发送的邮件的发信人地址是为空的., 所以,当你使用本选项时,会使Imail
邮件服务器的用户无法接受Micorsoft Exchange 的postmaster 发送的邮件.
Check valid sender 检查合法发送者If 如果你使用了该选项, Imail 要求用户在发送
的邮件的MAIL FROM 或是REPLY-TO 中有合法的邮件地址(user@host),
注意为空() 的地址受选项Refuse NULL Senders 的控制.
Auto-deny possible hack attempts 自动拒绝可能的黑客的攻击If 如果SMTP 服务接
收到超过512 字符的SMTP DATA 命令,发送该SMTP DATA 命令的远端IP 将被暂时放
入”deny access”(拒绝访问)文件中直到重新启动服务. 在SMTP 接受的数据中可以有
超过512个字符,但如果SMTP DATA 命令超过512 个字符, Imail 将认为是黑客攻击而拒
绝该远端IP . 您无法在“deny access” 文件中看到该IP ,但您可以在日志文件中看
到.
Disable SMTP ‘VRFY’ command 关闭SMTP ‘验证’命令SMTP VRFY 命令用来验证一
台主机上的用户账号. 如果你使用了该命令,当Imail 服务器接收到SMTP VRFY 命令
后将返回消息: 252 Cannot VRFY user
注意
当你使用“peer” 模式Imail 服务器时, 请不要使用Disable SMTP VRFY 命令. 一
台peer 模式的邮件服务器需要用命令验证存在于其他peer 模式的邮件服务器的用户账
号. 参考“Setting Up “Peer” Imail Servers”(设置Peer 模式Imail 服务器).
Edit kill file. 该文件允许你指定一个邮件地址或邮件主机. 任何来自该邮件地址或
主机的邮件都将被拒收. 单击按钮Edit kill file, 该文件将再记事本中打开, 按照一
下格式输入,一行一条:
userid@host
@host
例如,你可以输入邮件地址fred@widget.com 以拒绝来自该地址的邮件. 你也可以输入
主机名widget.com 以拒绝所有来自该主机的邮件. Imail 服务器将会在接受的邮件中检
查MAIL FROM: user@host ,如果发现存在于kill 文件中是, Imail 将返回消息:
501 unacceptable mail address
文件kill.lst 位于Imail 的目录下.
Setting Access to the SMTP Server 设置对SMTP 服务的访问
你可以设置一个或多个IP 地址,使之有权限访问SMTP 服务,或者被拒绝访问. 没有权限
访问SMTP 服务的将被拒绝连接. 如果你知道那些未被认证得用户的IP 地址时这是十
分有用的. 注意,在大多数的情况下,你不需要使用该命令. 因为你不知道那些发送邮件
给你用户的主机的地址.
如何拒绝来自一台或多台主机的访问:
1 单击Control access. 出现访问控制对话框.
2 选择Granted Access 选项.
3 单击按钮Add . 出现Deny Access On 对话框.
4 在IP Address 框中, 输入你希望拒绝被访问SMTP 服务的电脑的IP 地址. 如果你
希望拒绝多台电脑,选择选项Group of Computers . 在IP Address 和Subnet Mask 框
中, 输入IP 地址和子网掩码, 如此就可以拒绝该网段内的电脑的SMTP 访问连接了.
例如, 如果你想拒绝一个C 类地址156.21.50.0内的电脑的SMTP 访问, 输入IP 地址
156.21.50.0 和子网掩码255.255.255.0. 如此,就可以拒绝该地址段内的254 台系统的
SMTP 访问了.
5 单击按钮OK 增加到列表中. 所有在列表中的电脑都没有权限访问SMTP.
6 单击按钮OK 保存改变. 你必须重新启动服务以使改变生效.
如何使某台或多台电脑有权限访问SMTP 服务:
1 单击按钮Control access. 出现对话框Access Control .
2 Select the Denied Access option.
3 单击按钮Add . 出现对话框Grant Access .
4 在IP Address 框中, 输入你希望有权限访问SMTP 的那台电脑的IP 地址.
如果,想给多台电脑赋予权限,选择选项Group of Computers . 在IP Address 和
Subnet Mask 框中, 输入IP 地址和子网掩码, 如此就可以让该网段内的电脑的SMTP 访
问连接了.
例如, 如果你想允许一个C 类地址156.21.50.0内的电脑的SMTP 访问, 输入IP 地址
156.21.50.0 和子网掩码255.255.255.0. 如此,就可以接受该地址段内的254 台系统的
SMTP 访问了.
1 单击按钮OK 增加该地址到列表中. 所有的电脑都没有权限访问SMTP 服务除了该列
表中的电脑.
2 单击按钮OK 保存改变. 注意你必须重新启动服务以使改变生效.
Copying Inbound and Outbound Mail 产生所有邮件的副本
在SMTP Security 一栏中,你可以设置使所有接收和发送的邮件都产生一副本并且发送
到一个指定的邮箱中。
1 在Copy All Mail 选项中, 在框Mail address 中, 输入你希望接收副本的邮箱地
址。
2 打开Enable 选项。如果你关闭了选项Copy All Mail , 确认你同时关闭了选项
Enable .
3 单击按钮Apply 保存设置 , , ,