终端服务的工作原理

 

本部分内容

终端服务的体系结构

终端服务的物理结构

终端服务的过程和交互方式

终端服务使用的网络端口

相关信息

终端服务 (Terminal Services) 提供了在 Microsoft Windows Server 2003 上同时承载多个客户端会话的能力。终端服务器 (Terminal Server) 能够直接承载运行于各种 Windows 或非 Windows 硬件之上的兼容多用户客户桌面。基于 Windows 的标准应用程序无需做任何修改便可在终端服务器上运行,而且可以使用所有标准的 Windows Server 2003 管理基础结构和技术管理客户端桌面系统。

返回页首

终端服务的体系结构

终端服务由以下四个组件构成:Windows Server 2003 多用户内核、远程桌面 (Remote Desktop) 客户端、终端服务授权 (Terminal Services Licensing) 服务以及会话目录服务 (Session Directory Services)。具体来说:

多用户内核。多用户内核扩展(起初为 Windows NT 4.0 Server Terminal Server Edition 开发)得到了进一步增强,并且作为一个标准部件完全集成在 Windows Server 2003 系列产品的内核之中。无论是否启用了终端服务,它们都始终驻留在服务器之上。

远程桌面客户端:客户端软件是一个应用程序,该程序可以在客户端和运行终端服务的服务器之间建立连接并对连接加以维护。

终端服务授权服务:该系统允许终端服务器为连接到终端服务器的设备和用户获得及管理终端服务器客户端的访问许可证 (TS CAL) 令牌。

会话目录服务:会话目录 (SD) 保存了一个会话列表,该列表按照用户名进行索引,允许用户在会话断开后重新到当初断开会话时的服务并恢复会话。

终端服务的体系结构

终端服务的体系结构

下表描述了终端服务的体系结构组件。

终端服务的组件

组件

描述

CSRSS.exe

“客户端/服务器运行时子系统”是一个针对所有登录会话的进程和线程管理器。

RdpDD.sys

捕获 Windows 用户界面并将其转换为一种可被 RDPWD 转换为 RDP 协议的格式

RdpWD.sys

解包多通道数据,然后将其传输给相应的会话。

SMSS.exe

会话管理器创建并管理所有会话。

Termsrv.exe

管理客户端连接,以及创建和关闭连接的上下文。

Termdd.sys

RDP 协议,在 TCP 端口上侦听 RDP 客户端连接。

Tdtcp.sys

将 RDP 协议打包到底层网络协议 TCP/IP 上。

Wlnotify.dll

在会话的 WinLogon 进程中运行,以在用户会话中创建进程。

Win32k.sys

通过获取鼠标和键盘输入并将它们发送到相应程序,对 Windows GUI 环境进行管理。

WinLogon.exe

该系统服务处理用户的登录和注销,并且处理特殊的 Windows 组合键 Ctrl-Alt-Delete。WinLogon 负责启动 Windows 外壳(通常是 Windows Explorer)。

终端服务的体系结构

在 Windows Server 2003 Terminal Server 启动并加载核心操作系统之时,终端服务器服务 (termsrv.exe) 启动并开始等待会话连接。每个连接都被赋予了一个唯一的会话标识符,或者说“会话 ID”(SessionID),此标识符代表了一个到终端服务器的会话,而会话中创建的每个进程都使用关联的 SessionID 进行了“标记”,以便与其他会话命名空间区分开。

控制台会话(终端服务键盘、鼠标和视频)总是第一个被加载,并且被视为客户端连接的一个特例,并总是被赋予 SessionID0。控制台会话作为正常的 Windows Server 2003 会话启动,同时会加载配置好的 Windows 显示器、鼠标和键盘驱动程序。

在创建控制台会话之后,终端服务服务将调用 Windows Session Manager(Windows 会话管理器,SMSS.EXE),以创建两个空闲的客户端会话并等待客户端连接。为了创建空闲会话,会话管理器将启动“客户端/服务器运行时子系统”(CSRSS.EXE),并未该进程分配一个新的 SessionID。此外,CSRSS 进程还使用新关联的 SessionID 调用 WinLogon 进程 (WINLOGON.EXE) 以及 Windows Manager 和 GDI 内核模块 (Win32k.sys)。

通过映像标头中预定义的位设置,Windows 映像加载程序将该 Win32k.sys 识别为一个可加载的 SessionSpace 映像。然后,它将映像的代码部分重新定位到物理内存中,并且将指针指向该会话的虚拟内核地址空间(如果尚未加载 Win32k.sys)。根据设计,如果在内存中已经存在一个映像(被其他活动的应用程序或会话所加载),它总是会附加到一个先前已加载映像的代码 (Win32k.sys)。然后,该映像的数据(或非共享)部分被分配到新会话,该会话来自于新创建的 SessionSpace 可分页内核内存区段。

与控制台会话不同,终端服务器客户端会话被配置为加载不同的显示器、键盘和鼠标驱动程序。显示器驱动程序是远程桌面协议 (RDP) 显示设备驱动程序 (rdpdd.dll),而鼠标和键盘驱动程序则被替换为 RDP 驱动程序 Rdpwd.sys。这些驱动程序允许以远程方式使用 RDP 客户端会话和与其进行交互。最后,终端服务器还调用 RDP 协议的连接侦听程序线程 (Termdd.sys),该线程在 TCP 端口上侦听 RDP 客户端连接。

此时,CSRSS 进程使用它自己的 SessionID 命名空间,而且根据每个进程的需要实例化其数据。使用该 SessionID 创建的任何进程都会在 CSRSS 进程的 SessionSpace 内自动执行。这样可防止具有不同 SessionID 的进程访问其他会话数据。

返回页首

终端服务的物理结构

终端服务允许通过“瘦客户端”软件远程访问 Windows 桌面,并且允许客户端计算机作为一个终端枚举器。它为分发基于 Windows 的程序提供了一种有效且可靠的方法,为能够访问 Windows Server 2003 操作系统桌面的多个用户提供单一的系统,这些用户可通过这个系统运行程序,保存文件和使用网络资源,就如同坐在这台计算机前一样。

运行 Windows Server 2003 操作系统的计算机已经内置了终端服务客户端程序(远程桌面连接)。Windows Server 2003 操作系统还为运行 16 位和 32 位操作系统的计算机提供了终端服务客户端软件。

终端服务客户端的存在形式多种多样。运行基于嵌入式 Windows 操作系统的瘦客户端硬件设备可以运行终端服务客户端软件,以连接到运行终端服务的服务器计算机。Windows、Macintosh 或 UNIX 计算机可运行终端服务客户端软件连接到终端服务服务器,以显示基于 Windows 的应用程序。多种终端服务器客户端的组合使得用户几乎能够从任何操作系统访问基于 Windows 的应用程序。

 

 

终端服务器授权

Windows Server 2003 操作系统系列提供了一个称作“终端服务器授权”(Terminal Server Licensing) 的客户端许可证管理系统。该系统允许终端服务器为连接到终端服务器的设备和用户获得及管理终端服务器客户端的访问许可证 (TS CAL) 令牌。“终端服务器授权”是 Microsoft® Windows Server™ 2003 标准版、Windows® Server 2003 企业版以及 Windows Server 2003 数据中心版的组件服务。它可管理未许可、临时许可以及获得客户端访问许可的客户端,并且支持运行 Windows Server 2003 和 Windows® 2000 Server 操作系统的终端服务器。因此,它极大简化了系统管理员的许可证管理工作,同时最大限度减少组织购买的许可证数量不足或过多的情况。终端服务器授权只能与终端服务器配合使用,而且不能与 Remote Desktop for Administration 一起使用。

返回页首

会话目录

终端服务是一种允许用户在基于 Micorosft Windows Server 2003 的远程计算机上运行 Windows 程序的技术。在基于终端服务器的计算环境中,所有应用程序的执行和数据处理都发生在服务器上。在负载平衡环境中,终端服务器场平均地为场中的服务器分配传入的会话连接。会话目录 (SD) 保存了一个会话列表,该列表按照用户名进行索引,允许用户在会话断开后重新到当初断开会话时的服务并恢复会话。

终端服务的物理结构

终端服务的物理结构

终端服务组件

组件

描述

终端服务器

为客户端计算机托管应用程序。

终端服务器授权服务

向发出请求的终端服务器发放 TS Device CAL 令牌。

会话目录

维护一个用户名列表,列表中的用户名与连接到负载平衡终端服务器群集中的服务器的会话 ID 相关联。

远程桌面连接

客户端软件,允许用户连接到某台远程服务器。

远程桌面 MMC 管理单元

管理员使用的客户端软件,可同时连接到多台远程计算机。

远程桌面 Web 连接

ActiveX RDP Web 浏览器客户端。

返回页首

终端服务进程和交互方式

终端服务仅将程序的用户界面传送给客户端,客户端计算机则通过网络和使用“远程桌面协议”(Remote Desktop Protocol) 将击键和鼠标运动信息发送到服务器。然后,它以简单(且不占用过多带宽)的 GDI 事件的形式发送屏幕信息,并根据需要返回位图信息,以正确显示桌面状态。

每位用户在登录后,只能看到他们自己的会话,会话由服务器操作系统透明进行管理,并且独立于其它任何客户端会话。终端服务器提供了切实有效管理 Windows 会话的能力,因此用户可以完全将会话视作他们自己的个人计算机加以使用。

远程桌面客户端

共有三种终端服务客户端:远程桌面连接 (Remote Desktop Connection)、远程桌面管理单元 (Remote Desktops Snap-In)、以及远程桌面 Web 连接 (Remote Desktop Web Connection)。客户端软件是一个很小的软件应用程序,可以在客户端和运行终端服务的服务器之间建立连接并对连接加以维护。每个客户端都将用户的所有输入传送到服务器,例如击键操作和鼠标运动,并将服务器的所有反馈传送到客户端,例如应用程序的显示信息和打印流。远程桌面 Web 连接具有远程桌面连接软件的大多数功能;但是它不需要使用专用网络,也不需要使用虚拟专用网连接。有关远程桌面 Web 连接的内容将在下一章节中进行介绍。

使用远程桌面连接的连接

使用远程桌面连接的连接

远程桌面连接和远程桌面管理单元

终端服务客户端现在有了一个新名称:终端桌面连接 (Remote Desktop Connection)。远程桌面连接可以在所有 Windows 95、Windows 98、Windows Millennium Edition 或 Win32 平台上安装和运行(可通过 Citrix Metaframe 加载项产品为非 Windows 客户端提供支持)。

客户端通过 TCP 端口 3389 发起到终端服务器的连接。终端服务器的 RDP 侦听器线程检测到该会话请求并创建新的 RDP 堆栈实例,以对新的会话请求进行处理。侦听器线程将传入的会话移交给新的 RDP 堆栈实例,并继续侦听 TCP 端口上的其他连接企图。每个 RDP 堆栈都在连接客户端会话时创建,以处理会话配置细节的协商工作。

首先,为该会话确定一个加密级别。周功能端服务器最早支持三种加密级别:低、中和高。

“低级加密”仅仅加密从客户端发送到终端服务器的数据包。这种“仅加密输入信息”的做法旨在保护用户输入的类似密码这样的敏感数据。“中等加密”与“低级加密”一样,会对客户端发送的出站数据包进行加密,但它还会加密服务器返回给客户端的所有显示信息数据包。这种加密方法可保护敏感数据的安全,因为这些数据需要通过网络传输才能在远程屏幕上显示。低级加密和中等加密都使用 RC4 算法(40 位密钥)。“高级加密”加密客户端和服务器之间的双向数据包,但是它使用行业标准且不允许出口的 128 位高级别加密。

此时,在将任何登录画面呈现给最终用户之前,将对许可授权的详细信息进行协商。首先,客户端得到一个 Windows Server 2003 客户端访问许可证。然后,在正在连接的计算机上对 Windows Server 2003 桌面系统许可证进行验证,如果无法对任何许可证进行有效性验证,将向非 Windows 客户端提供一个连接许可证,允许它们连接到终端服务器。

在会话细节协商完毕后,服务器上针对该连接的 RDP 堆栈实例被映射到某个空闲的现有 Win32k 用户会话,并向用户显示 Windows Server 2003 登录屏幕。如果配置了自动登录,经过加密的用户名和密码会被发送到终端服务器,登录过程将继续。如果当前不存在任何空闲的 Win32k 会话,终端服务器服务则调用会话管理器(Session Manager,SMSS)为新会话创建新的用户空间。大部分 Win32k 用户会话都使用共享代码,而且在先前已加载过一个实例之后,其加载速度会得到显著提高。

在用户输入其用户名和密码后,经过加密的数据包被发送到终端服务器。Winlogon 进程执行必要的帐户身份验证工作,确保用户具有足够的登录凭证,并将用户的域和用户名传递给终端服务器服务,因为该服务保有一个包含域/用户名和 SessionID 的列表。如果 SessionID 已经与该用户进行了关联,则会重新将它们映射到现有命名空间中,而先前会话堆栈则会被重新载入。否则,按正常过程继续连接过程,终端服务器服务创建一个新的“域/用户名”-SessionID 映射。如果处于某些原因,该用户激活了不止一个会话,则会显示会话列表,由用户决定重新连接哪个会话。

对于远程管理多台服务器或终端服务器的管理员,“远程桌面”管理单元是理想选择。您可以使用“远程桌面”MMC 管理单元创建到多个终端服务器的“远程桌面”连接,或者创建到运行 Windows 2000 Server 或 Windows Server 2003 系列操作系统的“远程桌面”连接。可通过一个可导航的树视图在连接之前轻松切换。

返回页首

远程桌面 Web 连接

远程桌面 Web 连接的功能与远程桌面连接几乎完全相同,但是它通过 Web 提供这些功能。当嵌入在网页中时,远程桌面 Web 连接可以与远程计算机建立远程桌面会话,即便客户端计算机中并未安装远程桌面连接。远程桌面 Web 连接必须安装在启用了 Internet 信息服务 (IIS) 和 Active Server Pages (ASP) 的 Web 服务器上。

远程桌面 Web 连接是一个 ActiveX 控件,它具备的功能与 Windows XP 和 Windows Server 2003 操作系统系列中内置的远程桌面连接客户端软件相同。和默认安装的远程桌面连接一样,远程桌面 Web 连接允许用户连接到终端服务器。在指定计算机上安装远程桌面 Web 连接时,会安装一个 ActiveX 控件和 ASP 页面示例。远程桌面 Web 连接 ActiveX 控件需要通过 Internet 信息服务交付给用户使用。该 ActiveX 控件可从 Internet Explorer 内部启动到终端服务器的远程桌面会话。

ActiveX 控件在 IE 中启动远程会话

返回页首

远程桌面 Web 连接的工作原理

远程桌面 Web 连接可通过如下操作连接到终端服务器:

1.

用户打开 Web 浏览器并请求启动远程桌面 Web 连接的 (DHTML) 登录页面。

2.

IIS 服务器发送该页面,如果这是客户端首次进行连接,将提示用户下载远程桌面 ActiveX 控件。

3.

用户填写包括终端服务器名称在内的连接信息。

4.

客户端计算机使用端口 3389,创建一条直接通往终端服务器计算机的连接。

连接过程

远程桌面 Web 连接是一个由 ActiveX 控件和 DHTML 页面组成的 Web 应用程序。DHTML 页面仅用来向远程桌面 ActiveX 控件传递参数。在信息从 DHTML 页面传递给 ActiveX 控件后,Web 页面和 Web 服务器在此过程中便不再有任何作用了。Internet 信息服务仅仅是提供 ActiveX 控件的一种机制。当用户单击连接时,参数从 DHTML 页面传递到控件,并且建立一条到终端服务器的远程桌面连接。

在您连接到提供远程桌面 Web 连接页面的 IIS 计算机时,您使用端口 80 进行连接。通过该 Web 页面连接,ActiveX 控件被下载到您的客户端计算机并保存在 Internet Explorer 中保存已下载控件的默认位置 - %systemroot/Downloaded Program Files。在提供的 Web 页面示例中,终端服务器的名称和显示器分辨率作为参数传递给 ActiveX 控件。在传递这些参数之后,将调用控件的 connect 方法,然后启动到终端服务器计算机的会话。然后,客户端计算机上的 Active X 控件通过 TCP 端口 3389 创建一条直接通往终端服务器计算机的连接。

注意

Web 客户端就像是没有配置界面的完整远程桌面连接客户端。它包含来自远程桌面 Web 页面的这些属性,而且不和任何 IIS 计算机自身进行通信。

返回页首

会话断开

如果用户决定断开会话,进程和所有虚拟内存空间都会保留,并且在其他进程需要使用内存时会被移到物理硬盘上。由于终端服务器持有域/用户名和 SessionID 之间的映射,当同一个用户重新进行连接时,会重新载入现有会话并使其重新变得可用。RDP 的另一个好处是:能够根据用户对会话的要求更改会话屏幕的分辨率。例如,假如用户原先以 800 X 600 的分辨率连接到某个终端服务器会话,然后断开会话。如果用户随后转移到另一台仅支持 640 x 480 分辨率的计算机上,并重新连接现有会话,那么桌面会重新进行绘制以支持新的分辨率。

返回页首

自动重新连接

自动重新连接为 Windows Server 2003 中的远程桌面连接客户端增加了弹性。它的设计目的在于:在由于网络问题而导致临时性连接丢失时恢复会话。自动重新连接使得已经断开的终端服务会话可自动重新接受终端服务器的身份验证,而不提示用户输入凭证。

移动用户将极大地受益于此功能。例如,在先前版本的终端服务器客户端中,使用无线笔记本电脑的用户会不时丢失连接和因此导致会话断开,在会话断开时,他们会得到这样的提示:“连接由于网络故障而中止”。“请重新尝试连接到远程计算机。”现在,由于有了自动重新连接功能,用户无需重新输入密码就可以恢复原先的会话。

重新连接过程:

使用发送到客户端的 Cookie 来管理自动重新连接过程。在客户端上进行重新连接时,会将此 Cookie 作为验证连接合法性的令牌发送到服务器。自动重新连接 Cookie 在服务器端生成,并在用户每次登录到某个会话或会话被重置时清除和重新生成。这样可确保:当用户从不同计算机连接到该会话后,原始计算机无法重新进行连接。此外,只要会话处于活动状态,服务器会每隔一小时便让先前的 Cookie 失效和重新更新它,随后服务器将更新后的 Cookie 发送到客户端。

返回页首

用户注销

用户从会话中注销后,所有与该 SessionID 关联的进程都将被终止,为该会话分配的所有内存也被释放。当然,如果用户正在运行 Microsoft Word 这样的 32 位程序,并且从会话中注销,那么该程序将继续保留在内存中,直到最后一位用户退出该程序。

返回页首

终端服务授权服务

Windows Server 2003 操作系统系列提供了一个称作“终端服务器授权”(Terminal Server Licensing) 的客户端许可证管理系统。该系统允许终端服务器为连接到终端服务器的设备和用户获得并管理终端服务器客户端的访问许可证 (TS CAL) 令牌。终端服务器授权是 Microsoft® Windows Server™ 2003 标准版、Windows® Server 2003 企业版以及 Windows Server 2003 数据中心版的组件服务。它可管理未许可、临时许可以及已获得客户端访问许可的客户端,并且支持运行 Windows Server 2003 和 Windows® 2000 Server 操作系统的终端服务器。因此,它极大简化了系统管理员的许可证管理工作,同时最大限度减少组织购买的许可证数量不足或过多的情况。终端服务器授权只能与终端服务器配合使用,而且不能与 Remote Desktop for Administration 一起使用。

TS 授权不能用于远程桌面

终端服务器授权

Windows Server 2003 中的终端服务器(原先 Windows 2000 Server 中的应用程序服务器模式)通过其应用程序服务器模式为用户提供了部署和管理应用程序的能力。在运行 Windows Server 2003 的终端服务器上启动会话的每台设备或每个用户都必须拥有以下许可证之一:

1.

Windows Server 2003 终端服务器设备客户端访问许可证。

2.

Windows Server 2003 终端服务器用户客户端访问许可证。

3.

Windows Server 2003 Terminal Server External Connector(终端服务器外部连接器)。

注意:可能还需要其它许可证,例如微软或其它应用程序、操作系统和客户端访问许可证。上述列表中的许可证是必需的,即使在 Windows Server 2003 上使用其他加载项产品也是如此。

终端服务器授权服务仅与终端服务器客户端的许可授权相关。它不会对其它任何应用程序或服务进行许可,不会替换其它任何组件的许可服务或与其交互,也不会改变您的任何最终用户许可协议 (EULA) 授予您的权利和义务。并不能因为有了终端服务器授权服务而停止购买 TS CAL。

TS CAL 令牌是真实许可证的电子表示形式,但是并不代表实际的许可证本身。因此,即使丢失了许可证令牌,也不意味着您丢失了实际的许可证。如果您有文档记录能够证明您购买了实际许可证,我们会重新向您发放许可证令牌。反过来,仅仅因为您拥有许可证令牌并不意味着必须将其映射到某个实际的合法许可证。

终端服务授权的设计目的在于管理这些许可证令牌,以允许管理员更准确地评估组织的许可证购买需求。但是,在某些情况下,许可证令牌不应被映射到实际的许可证。管理员应努力决定是否属于这种情况,并在需要时购买额外的许可证(但是不安装对应的许可证令牌)以解决这种矛盾的状况。

返回页首

终端服务授权的工作方式

许可证发放过程中的所有通信都发生在客户端和终端服务器之间,以及终端服务器和许可证服务器之间。终端服务器客户端永远不会直接与许可证服务器进行通信。

如果客户端设备尝试连接到处于“按设备发放”模式的终端服务器,则终端服务器会确定客户端是否拥有许可证令牌。终端服务器客户端在以下注册表键中保存许可证令牌:

HKEY_LOCAL_MACHINE/Software/Microsoft/MSLicensing

如果客户端没有许可证令牌,终端服务器将尝试联系其已发现许可证服务器列表中的许可证服务器如果未能建立联系,终端服务器将重新启动发现过程。如果没有任何许可证服务器做出响应,设备将不能连接到终端服务器,除非它处于终端服务器的宽限期内。

如果某台许可证服务器做出了响应,终端服务器将为设备请求一个临时令牌,因为这是该设备第一次连接到终端服务器。然后,终端服务器将此临时令牌推送给设备。在用户提供有效凭证并成功登录后,终端服务器将指示许可证服务器将已发放的临时令牌标记为已经过验证。

当用户下一次尝试连接到处于“按设备发放”模式的终端服务器时,终端服务器会为该设备请求一个 Windows Server 2003 TS Device CAL 令牌。如果许可证服务器拥有可用的 TS Device CAL 令牌,它将从可用的许可证令牌池中删除一个令牌,将其标记为已发放给该设备,记录设备名称、设备的用户名以及发放日期,随后将 TS Device CAL 令牌推送给设备。

如果许可证服务器没有可用的 TS Device CAL 令牌,它将首先查看其所在的域、工作组或站点中的其它许可证服务器。许可证服务器知道其它可访问的许可证服务器的位置以及它们是否拥有可用的许可证令牌。如果其它许可证服务器可以访问并且有可用的许可证令牌,则第一台许可证服务器将从第二台许可证服务器请求一个许可证令牌,并将其发送给终端服务器,而由终端服务器将令牌传递给客户端设备。如果没有可用的 TS Device CAL 令牌,设备可使用临时令牌继续连接到终端服务器。

临时令牌允许设备在 90 天期限内建立连接,然后令牌将过期。TS Device CAL 尽管代表永久性许可证,但是也被设置了从发放之日算起的 52-89 天的有效期。在这些令牌到期前的 7 天内,终端服务器总是尝试更新这些令牌。系统这样做的目的是恢复那些由于硬件故障或操作系统重新安装这样的事件而丢失的 TS Device CAL。

按用户发放客户端许可证

如果终端服务器被配置为“按用户发放”(Per User) 模式,终端服务器必须能够在宽限期结束后查找到许可证服务器。尽管可以在许可证服务器上安装 TS Per User CAL 令牌,但是当前还没有任何方法向特定用户帐户指派 TS Per User CAL 令牌。

返回页首

外部连接器的客户端许可证发放

目前,终端服务器授权或 Microsoft Clearinghouse 不支持外部连接器。为了使用外部连接器许可证,需要将终端服务器配置为“按用户发放”模式。

返回页首

终端服务器授权的工作模型

终端服务器授权工作于如前图所示的几个组件之间。这些组件包括:支持终端服务器授权的许可证服务器、Microsoft Certificate Authority and License Clearinghouse、一台或多台终端服务器以及终端服务器客户端。单许可证服务器可支持多个终端服务器。域中(或站点范围内)有一台或多台许可证服务器。

返回页首

Microsoft Certificate Authority and License Clearinghouse(证书颁发和许可授权中心)

Microsoft Clearinghouse 是由微软维护的设施,旨在激活许可证服务器和向许可证服务器发放客户端许可密钥包。客户端许可证密钥包是一组客户端访问许可证令牌的数字表示形式。可通过终端服务授权管理工具访问 Microsoft Clearinghouse。可以通过互联网、网页或电话直接与其进行联系。

返回页首

许可证服务器

许可证服务器是安装了终端服务器授权的计算机。许可证服务器保存了为一组终端服务器安装的所有 TS CAL 许可证令牌,并且对已经发放的许可证令牌进行跟踪。一台许可证服务器可以同时为多台终端服务器提供服务。终端服务器必须能够连接到某台已激活的许可证服务器,以便向客户端设备发放永久性的许可证令牌。已经安装但尚未激活的许可证服务器只能发放临时性的许可证令牌。

返回页首

终端服务器

终端服务器是安装了“终端服务器”(Terminal Server) 服务的计算机。它允许客户端访问完全运行在服务器上的、基于 Windows 的应用程序,并且支持服务器上的多个客户端会话。当客户端连接到终端服务器时,终端服务器将确定客户端是否需要一个许可证令牌,从许可证服务器那里请求一个许可证令牌,然后将该许可证令牌传送给客户端。

返回页首

终端服务会话目录服务

在基于终端服务器的计算环境中,所有应用程序的执行和数据处理都发生在服务器上。在负载平衡环境中,终端服务器被分组到多个场中,每个场都以单个计算机名和一个 ID 地址出现在客户端计算机面前。执行负载平衡的设备根据其负载平衡算法,将传入的会话连接重定向到场中的每台计算机上。通过对终端服务器使用负载平衡解决方案,会话可平均分步到场中的各台服务器上,从而提高服务器的性能表现。终端服务会话目录 (Terminal Services Session Directory) 已包含在 Windows Server 2003 企业版中,能够为负载平衡解决方案提供支持。

会话目录是一种负载平衡功能,允许用户轻松地重新连接到运行终端服务的服务器场上的已断开会话。会话目录是一个数据库,能对负载平衡终端服务器上运行的用户会话进行跟踪。在用户试图重新建立连接时(在主动断开连接或者由于网络故障断开连接之后),它能提供相关信息,保证用户能够重新连接到原有会话,而不是创建一个新会话。会话目录现在能够支持数千个会话,并且具有群集意识。会话目录与 Windows Server 2003 的负载平衡服务兼容,并且受第三方外部负载平衡产品的支持。

会话目录和负载平衡兼容性

对终端服务会话目录的管理能够与负载平衡服务协调进行,可保证用户透明地重新连接到承载已断开终端服务器会话的原始服务器。

终端服务会话目录的组件包括:

网络负载平衡解决方案

从逻辑上分组到一个终端服务器群集中的两台或更多的终端服务器

会话目录服务器

网络负载平衡,包含在 Windows Server 2003 企业版和 Windows Server 2003 数据中心版中的一项群集技术,可使服务器具备更优异的性能和为它们提供故障转移保护。网络负载平衡将 IP 流量分散到 TCP/IP 服务(例如终端服务器或 IIS)的多个副本(或者说实例)中,每个副本都运行在群集内的单个主机上。客户端使用一个或多个虚拟 IP 地址访问群集;NLB 群集将客户端请求平均分配给所有主机。从客户端的角度看,群集就如同单台服务器一样。在企业通信量需要增加时,网络管理员只需在群集中添加更多服务器即可。

在负载平衡环境中,每个终端服务群集在客户端计算机面前都像是使用一个 IP 地址的一台计算机。根据负载平衡算法,执行负载平衡功能的设备或服务将连接重定向到群集中的各个服务器(节点)。

负载平衡使用 TCP/IP 网络协议将几台服务器的处理资源保存在一个池中,同时由会话目录跟踪群集中已断开的会话,确保用户能够重新连接到相同的会话。

会话目录成员只能为企业版和数据中心版终端服务器。运行 Windows Server 2003 标准版的计算机无法加入会话目录,因为他们缺少必需的群集技术;但是,运行 Windows Server 2003 标准版的计算机可充当会话目录服务器。

会话目录的工作原理

1.

传入到群集的连接被负载平衡到某个节点,该节点负责提供登录提示。

2.

在用户登录到终端服务器群集后,最初收到客户端登录请求的终端服务器将用户名发送给会话目录服务器。

3.

会话目录服务器对照数据库检查用户名,并将结果发送到发出请求的服务器。会话目录数据库是一个 Jet 数据库,包含按用户名进行索引的会话列表。

4.

如果用户没有曾经断开的会话,承载初始连接的服务器上的登录进程将继续。

5.

如果用户在其他服务器上拥有断开的会话,最初承载会话的服务器将把必需的客户端信息发送给它,并继续针对承载该断开会话的服务器进行身份验证。从一台服务器到另一台服务器的转换对于用户来说是透明的。

6.

当用户登录到已断开会话中时,会话目录将被更新。

无论何时,只要用户登录、注销或断开会话,都会对终端服务器会话目录数据库进行更新。

注意

会话目录的重定向功能依赖于所使用远程桌面连接的版本。为使会话目录正常发挥作用,至少应使用随同 Windows XP 一起发布的远程桌面客户端。Windows 2000 和 Windows NT 4.0 终端服务器客户端不具备会话目录意识,因此当会话位于其他节点时,客户端会话不会被重定向到已断开的会话。

返回页首

网络负载平衡

使用会话目录的目的是为了解决终端服务器群集的一个问题。可使用各种解决方案对这些群集进行负载平衡处理。本节讨论了一些实行负载平衡时适用于任何解决方案的通用做法。以下是终端服务器群集的一些常规考虑事项:

考虑在两个网络适配器间分割网络流量:一个网络适配器用于终端服务连接,而另一个则用于访问其他网络资源和基础结构。这样,在绑定到群集的适配器变得不可用时,仍能够通过网络访问该服务器。

从简化管理的角度看,应将所有负载平衡终端服务器放在一个组织单位 (OU) 中,然后对该 OU 应用组策略设置。

主目录和其他用户数据存储区的配置方式应当使用户能够轻松访问他们的数据,而无论他们登录到哪一台服务器。

网络负载平衡 (NLB) 原先的安装方式是:作为网络连接的一项服务添加到系统中,并需要在每个节点上逐个配置网络组件。Windows Server 2003 中的 NLB Manager(NLB 管理器)是新增的集中式管理单元,添加该管理单元的目的在于更加轻松地配置和维护 NLB 配置。

虽然仍然可以通过直接修改网络连接属性来配置 NLB 群集,但是最佳做法是使用 NLB Manager。此外,不建议在使用 NLB Manager 的同时通过修改网络属性来配置 NLB 群集。

返回页首
Remote Desktop for Administration

可使用 Remote Desktop for Administration(用于管理目的的远程桌面)以类似图中所示的配置方式来远程管理网络。

使用 Remote Desktop for Administration

Remote Desktop for Administration 允许用户使用终端服务的远程桌面协议 (RDP),通过 3389 端口来远程访问服务器桌面。RDP 将用户界面传送给客户端会话,并将键盘和鼠标操作从客户端传送到服务器。最多可创建两个并发远程连接。您登录的每个会话都独立于其他客户端会话以及服务器控制台会话。大体来说,可使用 Remote Desktop for Administration 远程登录到服务器,就如同在本地登录一样。

如果需要远程连接服务器控制台会话(例如,为了访问只将用户界面定向到控制台的应用程序),既可以使用远程桌面管理单元,也可以通过命令行使用远程桌面连接。当您试图连接到控制台会话时,无论是远程登录还是本地登录,如果已经有用户登录到控制台会话,都会对您进行通知。在验证了您的登录凭证之后,将显示该通知信息,信息中还包括了已登录到控制台会话的用户的相关信息,包括该用户的用户名、登录位置(本地或远程)以及会话状态(使用中、锁定或空闲)。

注意

应意识到远程登录的安全风险。远程登录的用户可执行各项任务,就像他们坐在控制台前一样。所以,您应该确保服务器位于防火墙之后。您应要求执行远程连接的所有用户都使用强密码。

与 Remote Desktop for Administration 的连接使用 TCP/IP,可以通过现有网络连接或远程访问建立连接。运行 Windows Server 2003 操作系统的远程访问服务器提供了两种不同类型的远程访问连接:

网络和拨号连接

虚拟专用网

下图展示了如何使用远程访问从某个远程位置连接到运行某种 Windows Server 2003 操作系统的计算机。

对 Windows Server 2003 计算机的远程访问

 

远程管理 Windows Server 2003 操作系统系列

在连接到运行某个版本的 Windows Server 2003 操作系统的服务器之后,可使用 Remote Desktop for Administration 远程管理该服务器及其本地计算机。Remote Desktop for Administration 允许您访问用于配置和管理计算机的各种管理工具。通过终端服务会话,能够访问 Microsoft Management Console (MMC)、Active Directory、Systems Management Server、网络配置工具和大多数其他管理工具。

Remote Desktop for Administration 非常有用,因为能够通过它远程访问通常无法远程配置的大多数配置设置(包括控制面板)。此外,还可以使用 Remote Desktop for Administration 非常方便地诊断问题和快速测试多种解决办法。

您可以通过广域网 (WAN)、局域网 (LAN) 或拨号连接,从世界的任何一个角落访问服务器。您可以启动耗时的批量管理作业(例如,磁带备份),然后断开连接并在稍后的事件重新连接到企业网络检查作业进度。

可通过远程方式完成服务器应用程序和操作系统的升级,以及执行那些往常必须坐在控制台前才能完成的工作,例如域控制器的提升/降级和整理磁盘碎片。与服务器的文件系统有关的工作,例如复制大量文件和病毒扫描,可以非常高效地在 Remote Desktop for Administration 会话中执行,因此无需使用从客户端计算机上执行的实用工具。

管理工作变得更加快捷,也比使用命令行工具更加直观,虽然仍然需要打开一个命令外壳。

注意

对于某些第三方程序,无法在终端服务会话中看到弹出信息。这是由于已连接会话所处的安全上下文或桌面不同,在这些环境中不显示应用程序弹出信息。在这些情况下,弹出信息会直接发往控制台。如果需要看到这些信息,请使用远程桌面连接从命令行或远程桌面管理单元中连接到控制台会话。

返回页首

终端服务使用的网络端口

终端服务器使用 RDP 在客户端和服务器计算机间进行通信。RDP 仅能在 TCP/IP 连接上工作,例如局域网 (LAN)、广域网 (WAN)、拨号、集成化服务数字网络 (ISDN)、数字用户线路 (DSL) 或者虚拟专用网 (VPN) 连接。您仍然可以使用其他协议,例如 Internetwork Packet Exchange (IPX) 或 NetBIOS Extended User Interface (NetBEUI),作为非终端服务器通信的传输协议,例如网络文件或打印机共享,或者客户端/服务器应用程序的客户端部分及其服务器之间的传输协议。

终端服务的端口分配

服务名

UDP

TCP

远程桌面协议 (RDP)

3389

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值