作者 Brien M. Posey,
TechRepublic.com 的MCSE 在许多公司中,电子邮件已经很快就成为一个任务关键的应用程序。不幸的是,为了发送电子邮件和从外界接收它,你的Microsoft%26reg; Exchange Server必须与Internet相连接。正如你可能知道的那样,Internet经常为那些可能破坏你的服务器的人提供机会。因此,成功地运行Microsoft Exchange server的关键之一是决不要给那些人损害你的服务器的机会。在本文中,我将向你显示一些技术,可以用来帮助保护你的Microsoft Exchange Server。
我将针对什么进行保护?
你也许想要知道一个恶毒的人可能对一个电子邮件服务器产生什么样的损坏。毕竟Microsoft Exchange servers通常不是域控制器,不经常包含敏感应用程序数据。然而,这样的人可能进行大量的破坏行为。
攻击Microsoft Exchange Server的最常用的方式叫做"服务拒绝"攻击。服务拒绝攻击是通过向服务器充灌邮件消息直到服务器装不下而拒绝处理合法的邮件信息。
其他安全性破坏可能会使黑客窃取信息。黑客可以通过侵入服务器获得到包含敏感信息的文件夹的访问权来达到这一目的。黑客还可能通过使用包鼻探器(packet sniffer),当包流过线路时进行截取来窃取信息。
最后,你将会想要保护你自己不被哄骗。哄骗是当一个黑客以合法用户的姿态出现时发生的。尽管哄骗可以用来窃取信息,但是他还可以用来散布错误信息。例如,一个骗子可以很容易地发送通知,就好象是来自一个合法用户。这些通知可能说像"我离开了","这个公司的经理是一个 大的,肥的,愚蠢的性情古怪的人"或"如果不满足我的要求,下午2:00在这栋楼里将有一个炸弹爆炸"之类的事情。正如你能看到的,哄骗可能是十分有害的。幸运的是,有一些技术你可以用来保护你的服务器防止这三种类型的破坏。
基本要素
一些你可以用来保护你的Microsoft Exchange servers的最有效的技术是最基本的。但是,正如你可能知道的那样,只有基本要素并不能足够地好。最佳的安全性来自使用基本和高级安全性技术的结合。在下面的部分中,我们将回顾一些基本内容并介绍一些更高级的技术。
Microsoft Windows NT
正如你已经知道的那样,Microsoft Exchange Server运行在Microsoft Windows NT%26reg;上。因为Microsoft Exchange利用许多Windows NT的安全特性,所以保证Microsoft Windows NT尽可能安全是很重要的。
Windows NT的复杂性已经使有关安全性的主题必须以整个一本书才能说清楚。尽管由于空间有限不允许我们深入地专研这个主题,你还是要记住几点。
首先,保证任何包含与Microsoft Exchange相关的文件的容量都被格式化为NTFS。当某人多次企图进入Windows NT Server时,他们将会试着通过网络共享进入。尽管你不可能去掉缺省的网络共享,记住文件容许(通过NTFS分配)向你的服务器加入一个额外的安全层。当文件容许和共享容许矛盾时,Microsoft Windows NT使用更严格的容许。例如,假设一个为授权的用户获得到一个网络共享的访问权。如果这个用户拥有对这个网络的完全控制,但是在文件层只有读容许,Microsoft Windows NT将会看到这个矛盾并赋予这个用户只读容许,因为它是两者之中更严格的一个。
微软服务包
微软服务包(Microsoft Service Packs)对提高安全性大有帮助。在Windows NT服务包发布以后,微软不断搜索安全性漏洞。这些安全性漏洞的补丁以hot fixes的形式发布,hot fixes发布在微软的FTP站点上。当发布一个新的微软服务包时,所有以前的hot fixes都被结合到这个新的微软服务包中。在写本文的时候,当前的Windows NT服务包是Service Pack 5。最新的Microsoft Exchange 5.5 服务包是Service Pack 2。
加密
并不是同等地创建所有的服务包。随 Microsoft TechNet而来得服务包提供40位的加密。这个美国政府允许出口的最大的加密长度。不用说,40位加密不是太难破解。
但是,如果生活在美国或加拿大,你可以在你的服务包中获得128位的加密。为此,在连接到一个拥有在美国或加拿大注册的域名的计算机时你必须下载这个服务包。因为许多美国人和加拿大人下载高加密服务包时有困难,你可以直接从美国以极其微小的费用在CD-ROM上订购他们。
病毒保护
当使用任何其他应用程序时,你必须保护你的Microsoft Exchange Server防止病毒入侵。在许多环境中,病毒很猖獗,通过电子邮件而在记录时间内散布。例如,有谁没有在他们的电子邮件中收到一个好的笑话后把它转发到20个最亲近的朋友?你的每个朋友可能都会将这个消化传递给另外20多个人。如果这个消息碰巧有一个包含病毒的附件,在几个小时内,就可能有成百上千的人受到影响。
每个好的网络管理员都知道,你需要在每个工作站上都有最新的防病毒软件。然而,这样做仍然为人为错误留有空间。例如,假设你打开一个受病毒影响的电子邮件附件。许多防病毒程序将会让你选择,修复这个病毒,删除这个文件,或完全忽略这个消息。如果用户忽略病毒警告,那么防病毒软件基本上就没有什么用。
幸运的是,围绕这个问题有一个方法:运行在Microsoft Exchange Server上,并在到达目的接收者之前扫描所有的入站消息。如果这个软件探测到一个病毒,它立即隔离这个文件。甚至一些包将警告消息的发送者。一个这样的产品是Symantec公司的用于Microsoft Exchange的Norton Anti-Virus。
服务账号
正如你可能意识到的,Microsoft Exchange Server依赖于一个服务账号来与Windows NT的安全系统相互作用。这个服务账号是一个很大的安全漏洞,因为他有权向Microsoft Exchang做太多的事情。不幸的是,你不能使服务账号无效或降低它的权限而不发生问题。因此,你最好按下面的办法来解决这个问题。
当你安装Microsoft Exchange时,选择一个不明显服务账号名。例如,你可以选择一个混入所有其他用户账号的名字。你有一个不与你共同工作的亲密的朋友吗?如果有,可以考虑通过以他们的名字命名服务账号。例如,你可能分配这个服务账号一个像Kendall_Hensley或 HensleyK的名字,这依赖于你的其他用户账号名字的格式。
除非你确切知道你正在做什么,否则你不应该重新命名一个已有的服务账号,指出这一点很重要。这样做会使 Microsoft Exchange发生偶尔故障。
你还应该为这个服务账号使用一个强壮的密码。在Internet上有许多程序可以用来解开密码。其中的一些程序,将你的口令的哈希(从注册表中提取)与一个字和名字的字典相比较。其他的程序强迫尝试所有可能的集合。因此,越长,越晦涩,并且编码优良的密码,就越好。密码最好将大小写字母与符号和数字混合起来。
Internet连接
迄今为止,我们已经向你显示了可以用来在Windows NT层次上保护Microsoft Exchange的一些基本方法。然而,因为最大的威胁来自Internet,所以保护你的Internet连接是一个好主意。
代理服务器
保护网络连接防止Internet用户破坏的一个好方法是通过使用微软代理服务器。代理服务器需要一个"multi-homed" Windows NT Server。这个意味着这个服务器必须有两个网络适配器。一个适配器连接到网络连接,而另一个是配器连接到网络的其他部分。所有通过Internet进出的业务必须通过这个代理服务器。使用代理服务器的优点是Internet用户只能在你的网络上看到一个ip地址--代理服务器的地址。所有其它IP地址都被这个代理服务器保护起来,永远不会通过Internet。从Internet外部用户的角度来看,来自你的网络的业务看起来都是从这个代理服务器产生的。由于所有的IP地址都被隐藏,如果某人想利用TCP/IP调用来进入你的网络就非常困难了。利用微软代理服务器,你还拥有使各种TCP/IP端口和协议失效的能力。通过只使需要的端口和协议有效,你可以降低有人利用不明显得TCP/IP组件来破坏你的网络的风险。
Microsoft Exchange结构
正如我们已经解释的那样,保护你的Microsoft Exchange Server的最好方法是保护Windows NT并将你的网络从所有的Internet流氓屏蔽开来。然而,无论你封锁或过滤什么,总是存在机会,某些人将会采用迂回的办法破坏你的网络。幸运的是,有一个简单的办法来进一步保护你的Microsoft Exchange Server。
为此,你需要Microsoft Exchange Server的一个额外的拷贝,专门用于SMTP(simple mail transfer PRotocol,简单邮件传输协议)路由。将这个新的拷贝简单地调入一个空闲服务器。使这个服务器成为已有站点的一部分。这个新的服务器应该是一个只带有Internet邮件连接器的服务器。所有的邮箱和公共文件夹应该位于站点中的其他服务器
这个新的服务器将自动将入站的SMTP业务传递到相应的邮箱。如果有人执行一个服务否认攻击,服务器将只是关闭保护服务器。这个攻击对包含邮箱和公共文件夹的服务器不会有任何影响。用这种方法设置Microsoft Exchange也是对信息窃取和哄骗的一个好的安全防卫,因为内部的办公室业务永远不会接触直接与外界连接的服务器。
你也许想知道这样的技术效果究竟怎样。保护服务器毕竟必须要运行TCP/IP连接到Internet。同样,你的其他服务器和工作站也必须运行TCP/IP连接到Internet。因此,如果一个黑客通过你的代理服务器进入保护服务器,他们就也可能进入其他Microsoft Exchange服务器,这是顺理成章的事。
我们刚才介绍的技术能够工作的原因是由于通信的类型,这些通信可以用于网络的各个部分。你的防火墙将封锁大部分TCP/IP端口。因此,一个人如果企图窃取电子邮件,哄骗账号,执行服务否认攻击,将可能会利用SMTP调用来企图获得到这个服务器的访问权。即使他们确实进入了这个服务器,Microsoft Exchange并不是利用SMTP在本地服务期间进行通信。而是利用RPC(remote procedure calls,远程过程调用)。因此,包含邮箱和公共文件夹的服务器将不承认SMTP通信。因此,你的数据就不会受到这样的攻击。图A 显示了一个框图,说明这样安排时你的网络看起来的样子。
图A可以设计网络的结构使进入你的Microsoft Exchange服务器非常困难。
Microsoft Exchange中的安全性设置
在Microsoft Exchange中你还可以调节两个参数来帮助防止安全性破坏。例如,我们提到服务否认攻击是由于某人向你的服务器猛灌消息超过这服务器的处理能力。只是由于你孤立SMTP业务不意味着你想要保护服务器不断地由于这样的攻击而停机。防止这样的攻击的一个方法是在入站消息上放置一个尺寸限制。
为此,打开Microsoft Exchange Administrator并导航到Organization | Site | Configuration Servers | Server Recipients,如图B所示。接着,选择一个接收方并从File菜单选择Properties。当你看到用户的属性页时,选择Limits标签。正如你在图C中所能看到的,你可以利用Limits标签来为每个用户设置最大的如站消息尺寸。因此,你可以为大多数用户设置相对比较小的尺寸,而对于频繁接收大的附件的用户将尺寸设置为无限。
图B打开Microsoft Exchange Administrator并导航到Organization | Site | Configuration Servers | Server Recipients。
图 C 你可以利用Limits标签为每个用户设置最大的入站消息尺寸。
结论
电子邮件系统通常是恶意的Internet用户的目标。因此,保护你的Microsoft Exchange服务器防止基于Internet的攻击是很重要的。在本文中,我已经解释了一些技术,你可以用来帮助增强Microsoft Exchange的安全性。
Brien M. Posey是一个MCSE,并且是一个自由技术作家,写本文时他正在为TechRepublic工作。他也是国防部的一个网络工程师。你可以通过电子邮件与他联系,地址
Brien_Posey@xpressions.com。(由于他收到的电子邮件太多,不可能都回复。不过,他确实每封信都读了。)
,