Instant Messaging(即时消息)是在Microsoft Exchange 2000 Server中首次被引入的重要组件。它实现了企业级的即时消息,与Microsoft提供的即时消息(Hotmail或者MSN)不同之处在于,每个企业为自己提供消息服务。
大家都知道,即时消息是以电子邮件作为登录名,而企业用户的电子信箱也是一致的格式,这样使每个雇员可以更方便地联系到企业中的其他联系人。相信大家对Instant Messaging在企业内部网(Intranet)中的部署已经比较熟悉,较Exchange 2000 Server中的其他组件来说,Instant Messaging在Intranet中是一个易于安装、易于使用的组件,本文旨在讨论Instant Messaging在企业网中部署的基础上,实现通过防火墙后,运行于Internet上的Instant Messaging。在本文中,我们部署的即时消息以单一电子邮件域为准,如果您的企业中有多个电子邮件域,或者说企业中有多个即时消息服务器,请参照文章中提供的相关链接。
1、Internet即时消息部署的基本准备
Exchange 2000 Server中的Instant Messaging提供了联系人之间即时会话、即时沟通服务,联系人之间通过联系人当前状态可得知相互之间的在线状况,因此,它提供了一种更好的服务响应能力。
为支持Internet用户登录到您企业中的Exchange即时消息服务器,您必须联系您的ISP(Internet Service Provider),将您申请的域名解析到相应的IP地址。有两种方式来实现Internet即时消息,第一种就是在Internet上放置一台Exchange服务器,使用即时消息路由器来实现与企业内部Exchange即时消息服务器的通讯,但这台直接暴露在Internet上的Exchange是十分不安全的。因此我们需要考虑的是另外一种,即客户端通过企业防火墙直接登录到企业内部的Exchange服务器,也就是说,您的域名解析到您防火墙的外部IP地址即可。[注释1]
众所周知,Exchange 2000中的服务是与Windows 2000中的IIS5.0紧密集成的。在您配置Exchange 2000的即时消息组件后,在IIS在默认Web站点中有一个名称为InstMsg的虚拟目录,通过这个虚拟目录的配置决定验证客户身份的方式。为提高即时消息服务器的响应能力,您可以在同一台服务器上创建一个即时消息专用的IIS虚拟服务器,您需要为这个站点指定IP地址,主机头[注释2],身份验证方式等。针对即时消息使用的IIS站点,您应该配置为“Windows集成验证”方式。创建这个新的IIS虚拟服务器后,请在浏览器中使用指定的主机头访问这个站点,确保这个站点的默认页可以正常显示。
在企业网络中,除了Exchange 2000扮演了消息传递的重要角色外,ISA Server在安全方面也起到了不可估量的作用。今天在此我们不是要讲ISA的安全配置,而是在ISA上需要发布即时消息服务器,以提供Internet用户访问。关于如何发布一个Web站点,此处不再一一讲述,推荐您参照微软PSS文档:Configure the Web Publishing Service to Work with Internet Security and Acceleration Server in Windows 2000,http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q313072,其中不同之处在于,当ISA需要您指定内部web服务器时,您不可以使用DNS中的主机名来访问,必须使用IP地址,结果应该与图1类似:
图1:指定IP地址
发布Web站点后,请先尝试在Internet上是否可以通过mycorp.com(一个假设的域名,下文相同)访问到这个即时消息服务器站点,这一步对即时消息在Internet上的成功部署很重要。
最后,关注一下Windows 2000中的名字解析问题。假设您创建一个Windows 2000域时使用的域名是mycorp.com,在您运行ping mycorp.com时,返回的IP地址是DC(Domain Controller)的IP地址。如果您的即时消息服务器恰好在DC上,那么您不需要做额外的工作;如果您的即时消息服务器在其他计算机上,您必须在DNS中创建一条新的记录,可以使mycorp.com这个域名解析到内部的即时消息服务器,而且mycorp.com恰好是即时消息使用的IIS虚拟服务器的主机头,下文也会提及,其实这个记录恰好是即时消息服务器所需要的RVP记录[注释3]。
到此为止,我们有一点需要注意一下:即内外域名一致性问题。假设您在InterNIC注册的域名是mycorp.com,那么您企业网络中Windows 2000域的其中一个域名也应该为mycorp.com,并且mycorp.com这个域名应为即时消息服务器的IIS站点的主机头,只有这样,Internet用户才可以通过域名来传递身份验证信息。
上面所列的几个准备工作,对于成功实现Internet即时消息是必不可少的,尤其是内外域名的一致性及域名的解析问题上,在即时消息中,不正确的DNS解析往往导致即时消息客户端登录失败。在您继续阅读之前,请先确认这些问题已经不复存在,同时请确认指定的即时消息IIS站点可以正常访问。
[注释1]默认情况下,ISP可能会把www.domain.com这个FQDN,即完全合格域名解析到您的IP,在下文会讲到,即时消息客户需要使用与mycorp.com相对应的IP,因此,必须将domain.com解析到与www.domain.com同一个IP或者另外一个IP地址。
[注释2]这个主机头并不是一个普通的A记录,它应该是您企业网络中Windows 2000的DNS域名,格式为mycorp.com。
[注释3]RVP记录,即rendezvous protocol,这是一个WebDAV协议扩展的子集,所有与即时消息服务器相关的通讯,都需要通过RVP。
2、配置Internet即时消息服务器
首先,我们创建一个最基本的Exchange 2000即时消息环境,创建这台即时消息虚拟服务器[注释4]后,他可以为企业内部网提供强大的消息通讯功能。
1.创建即时消息虚拟服务器
我们假设您在安装Exchange 2000时已经安装了即时消息服务。下面的过程将帮助您创建一台即时消息虚拟服务器:
启动Exchange System Manager管理器,依次打开Administrative GroupsàFirst Administrative GroupsàServersàServer NameàProtocols,右击Instant Messaging(RVP)àNewàInstant Messaging Virtual Server,启动创建即时消息虚拟服务器向导。创建过程中,在选择IIS站点时,选择您创建的为即时消息单独配置的IIS站点,然后系统将自动显示Windows 2000的DNS域名,这个域名应该恰好是这个IIS站点的主机头,也是您企业电子邮件域的后缀,接下来一个很重要的步骤是,确保选择了”Allow this server to host user accounts”,如图2所示,这样这完成了即时消息虚拟服务器的创建,同时,您也相当于完成了RVP记录的创建,RVP记录默认使用的IP可能会与您实际使用的即时消息服务器的IP不符,您需要在DNS管理程序中修复它。打开DNS管理程序,依次打开“正向搜索区域àmycorp.comàTCP”,确认RVP记录存在,并且IP与目标IP相符。
图2:配置虚拟服务器
2.设置密码策略
即时消息使用与用户信箱一样的密码。为支持用户在企业内部与Internet环境下使用即时消息,必须把域密码策略设置为:Store password using reversible encryption for all users in the domain[注释5]。启动“活动目录用户与计算机”管理程序,右击默认的DNS域名à属性à组策略à编辑默认域策略,依次打开Computer ConfigurationàWindows SettingsàSecurity SettingsàPassword Policy,双击Store password using reversible encryption for all users in the domain,结果应与图3相类似:
图3:设置域密码策略
然后在DC上运行secedit /refreshpolicy MACHINE_POLICY /enforce,确保组策略被刷新。
3.启动用户访问即时消息
默认情况下,用户是被禁用即时消息功能的,您需要为每个用户启用即时消息服务。打开“活动目录用户与计算机”管理程序,选择您希望启用即时消息功能的用户,右击用户名àExchange TaskàEnable Instant Messaging,此时需要您在活动目录查找即时消息服务器[注释3]。如图4所示:
图4:查找即时消息虚拟服务器
4.为Internet访问做准备
为支持Internet用户通过防火墙登录到企业中的Exchange计算机,您的即时消息服务器必须支持“轮询”功能。Exchange 2000 SP1以前的任何一个版本都不支持该功能。即时消息客户端通过HTTP 80端口登录到即时消息服务器,然后服务器使用大于或者等于1024的一个随机端口号发送通知到客户端,结果因为数据包被防火墙阻挡,导致无法正常连接,如图6所示:
图5:不支持轮询的即时消息
为此,微软在Exchange 2000 SP1解决了这个问题。SP1支持客户端在指定的时间内保持与服务器的连接,当服务器需要投递通知给客户时,直接通过现有的连接传递到客户端,而无须再随机产生端口来传递消息。图5显示的是启用轮询功能后,即时消息用户通过防火墙与服务器的通讯过程:
图6:支持轮询的即时消息
为实现即时消息的轮询功能,您需要在即时消息服务器上修复注册表。强烈建议您在修改注册表之前先进行备份,运行regedit32.ext,打开注册表编辑器,浏览到下列路径:
\\HKEY_LOCAL_MACHINE\Software\Microsoft\Exchange\InstantMessaging,如果没有InstantMessaging键,请首先创建这个键。表格1列出了需要添加的注册表项,添加所有的值后,务必重新启动Exchange计算机,使这些值生效。
键名称 数值 其他说明
PollSupport
文章来源于领测软件测试网 https://www.ltesting.net/
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073