1.4. 它是如何工作的?
客户端系统中的 Red Hat Update Agent 或者 Package Updater 不直接与 Red Hat Network 服务器联络。相反,客户端(或者很多客户端)是轮流与连接到 Red Hat Network 服务器或者 RHN Satellite Server 的 RHN Proxy Server 连接。因此,客户端系统不需要直接访问互联网,它们只需要访问 RHN Proxy Server 即可。
重要
Red Hat 强烈建议您将客户端连接到运行最新版本 Red Hat Enterprise Linux 的 RHN Proxy Server 以保证正确的连接。
直接访问 RHN 的客户端是由 RHN 服务器验证的。访问 RHN Proxy Server 的客户端仍然由 RHN验证,但在这种情况下 Proxy 同时为 RHN 提供验证和路由信息。成功验证后,Red Hat Network 服务器会通知 RHN Proxy Server 可以为该客户端执行特定动作。RHN Proxy Server 会下载所有更新的软件包(如果它们还没有出现在其缓存中)并将其发送到客户端系统。
虽然来自客户端系统中的 Red Hat Update Agent 或者 Package Updater 的请求仍然需要在服务器方进行验证,但是软件包的传送速度会大大加快。这是因为该软件包已被缓存在 HTTP Proxy Caching Server 或 RHN Proxy Server(本地软件包)中,且客户端系统只通过 LAN 进行进行访问,因此访问速度只受本地网络限制。
验证是通过以下步骤进行的:
- 在客户端会话开始时执行登录动作。这个登录会通过一个或多个 RHN Proxy Server 直到连接到 Red Hat Network 服务器。
- Red Hat Network 服务器尝试对这个客户端进行验证。如果验证成功,服务器会通过 RHN Proxy Server 发送回一个会话令牌 (session token)。这个令牌包括了一个签名、过期的时间、用户信息。其中用户信息包括了订阅的频道,用户名等等。
- 每个 RHN Proxy Server 会在它的本地文件系统的
/var/cache/rhn/中保存这个令牌。这样做可以减轻 Red Hat Network 服务器对客户端进行验证的负担并可以大大提高 Red Hat Network 的性能。 - 这个会话令牌会最终传递给客户端系统,这个客户端系统使用它来进行 Red Hat Network 的后续操作。
从客户端系统的角度来看,一个 RHN Proxy Server 和一个Red Hat Network 服务器并没有区别。从 Red Hat Network 服务器的角度来看,RHN Proxy Server 就是一个特殊类型的 RHN 客户端系统。因此客户端不会受到发往 Red Hat Network 服务器路由的影响。所有逻辑都是在在 RHN Proxy Server 和 Red Hat Network 服务器中实现的。
另外,可安装 RHN Package Manager 并将其配置为服务于定制软件包。所有非官方的红帽软件包,包括为某个机构特别编写的自定义软件包只能通过专用软件频道(也就是自定义软件频道)提供服务。在创建了一个专用 RHN 频道后,通过把软件包的标题上传到 RHN 服务器来将自定义 RPM 软件包与专用频道相连。只有标题会被上传,实际的软件包文件并不会被上传。标题包括了 RPM 的重要信息(如软件包的依赖信息),RHN 在进行软件包自动安装的时候需要这些信息。实际的定制 RPM 软件包存储在 RHN Proxy Server 中并通过机构的局域网发送到客户端系统。
将计算机网络配置为使用 RHN Proxy Server 非常简单。客户端系统中的 Red Hat Network 应用程序必须被配置为与 RHN Proxy Server 连接,而不是与 Red Hat Network 服务器连接。请参阅《RHN 客户端配置指南》来获得详细的信息。在代理服务器一端,必须指定代理服务器链中的下一个代理服务器(这个代理服务器链最终会连接到 Red Hat Network 服务器)。如果使用了RHN Package Manager,客户端系统必须订阅到专用的 RHN 频道。