sun java system server console学习 (一)

Posted on 2009-05-12 14:17  胡安峰  阅读(282)  评论(0编辑  收藏  举报

第 1 章
Directory Proxy Server 概述

简介

Directory Proxy Server 是用于电子商务解决方案中任何关键任务的目录服务的基本组件。Directory Proxy Server 是 LDAP 应用层协议网关,它使用应用层负载平衡和故障转移来提供增强的目录访问控制、模式兼容性和高可用性。

就其功能来说,Directory Proxy Server 是位于 LDAP 客户机和 LDAP 目录服务器之间的“LDAP 访问路由器”。可以基于在 Directory Proxy Server 配置中定义的规则,对来自 LDAP 客户机的请求进行过滤,并将其路由到 LDAP 目录服务器。同样基于在 Directory Proxy Server 配置中定义的规则,对目录服务器所产生的结果进行过滤并将其传递回客户机。此过程对于 LDAP 客户机是完全透明的,客户机连接到 Directory Proxy Server 就像连接到任何 LDAP 目录服务器一样。

Directory Proxy Server 是为 Extranet 和 Intranet 目录基础结构提供高可用性、安全性和客户机兼容性功能的独特产品,这些功能包括:

  • 自动负载平衡
  • 透明的服务器故障转移和故障回复
  • 自动跟随引用 (referral)
  • Extranet/Intranet 访问控制组
  • 安全的客户机和服务器验证
  • 动态查询和响应过滤
  • 动态模式映射
  • 基于目录或基于文件的配置
  • 可配置的日志记录

Directory Proxy Server 与新建的以及现有的 LDAP 目录基础结构共存,并对它们进行补充,同时,与已经在企业 Extranet 和 Intranet 中部署的启用目录的应用程序进行无缝集成。当对它进行部署后,便可以利用客户的目录基础结构中的现有投资。Directory Proxy Server 可与任何遵守 LDAP 协议的目录服务器进行互操作。Directory Proxy Server 可与任何支持并遵守 LDAP 协议的目录一起工作,无论它是本机 LDAP 目录、支持 LDAP 的 X.500 目录,还是支持 LDAP 的关系数据库。

Directory Proxy Server 实现了 LDAPv3 Internet 规范,并且还支持早期的和功能较少的 LDAPv2 规范,以确保与已部署的启用目录的客户机应用程序(使用 LDAPv2)互相兼容。Directory Proxy Server 是作为 UNIX 平台上单独的系统服务器进程来运行的。服务器是多线程的,并且可以处理数以千计的 LDAP 客户机请求,同时将访问控制规则和协议过滤规则应用到每个请求中。

Directory Proxy Server 可以帮助各个组织保护其专有目录信息,以免受到未经授权的访问;同时,让这些组织能够安全地发布其公共信息。Directory Proxy Server 可用于在 LDAP 目录上精细配置访问控制策略,例如,控制哪些用户能够在目录信息树 (DIT) 的不同部分执行不同类型的操作。也可以配置 Directory Proxy Server 以禁止通常由 Web 拖网者和机器人为了收集信息而执行的某类操作。

与 Web 代理服务器不同,Directory Proxy Server 是以反向代理模式操作的。它不将那些来自防火墙内部的客户机连接转发给 Internet 上的任意服务器,也不缓存搜索结果。这样做的主要原因是由于数据应用访问控制的问题。当前只在维护了访问控制的 LDAP 目录服务器中完成。Directory Proxy Server 不了解目录服务器访问控制。


Directory Proxy Server 功能集

Directory Proxy Server 功能集提供了如下功能:高可用性、负载平衡、故障转移、类似于防火墙的安全性,以及客户机-服务器兼容性。

高可用性

Directory Proxy Server 旨在支持高可用性目录部署,具体方法是:在一组重复的 LDAP 目录服务器中提供自动负载平衡和自动故障转移及故障回复。对于 Extranet 和 Intranet 环境,常常需要确保启用目录且具有关键任务的客户机和应用程序能够全天候地访问目录数据。Directory Proxy Server 对其了解的所有目录服务器的连接状态信息进行维护,并能够在一组已配置的目录服务器上,对 LDAP 操作动态、按比例地执行负载平衡。当一个或多个目录服务器不可用时,负载就会按比例地在剩余服务器之间进行重新分发。当目录服务器重新联机时,负载会按比例、动态地重新分配。

例如,假设目录服务器 A 被配置为接收 40% 的 LDAP 客户机负载,服务器 B 接收 20% 负载,服务器 C 接收 20% 负载,服务器 D 接收 20% 负载。如果目录服务器 B 发生故障,Directory Proxy Server 将意识到服务器 A 所配置承担的负载是服务器 C 和 D 的两倍,则会重新分发来自服务器 B 的 20% 负载,以使服务器 A 现在接收 50% 的负载,服务器 C 接收 25% 的负载,服务器 D 接收 25% 的负载。当目录服务器 B 恢复时,Directory Proxy Server 会自动检测到这种情况,并回复到原来涉及所有四台服务器而配置的负载百分比。

网络层 IP 负载平衡设备无法访问 LDAP 协议层。然而,Directory Proxy Server 将负载平衡与访问控制、查询过滤和查询路由集成,并可以进行智能的应用层访问控制和 LDAP 路由判定。

负载平衡

必须使用定义和管理属性对象中描述的负载平衡属性在 Directory Proxy Server 中配置负载平衡。可以与 Directory Proxy Server 进行通信的每一台后端目录服务器被配置为接收总客户机负载的某个百分比。然后 Directory Proxy Server 自动将客户机查询分发给不同的后端服务器,以满足配置中定义的负载条件。如果某台服务器不可用,Directory Proxy Server 会将该服务器的负载百分比按比例地在可用服务器之间分发(根据它们的负载百分比)。如果所有的后端 LDAP 服务器都不可用,Directory Proxy Server 就会拒绝客户机查询。

Directory Proxy Server 中的负载平衡是基于会话的。这意味着,选择客户机的查询将定向到哪一台特定服务器的决策功能针对每个客户机会话只应用一次;尤其是在客户机会话开始的时候。该会话中的所有后续客户机查询都将被定向到会话开始时选择的服务器。

Directory Proxy Server 可以进行负载平衡的后端 LDAP 服务器的数量取决于多种因素,如运行 Directory Proxy Server 的主机大小、可用的网络带宽、Directory Proxy Server 接收的查询混合、客户机会话的长度,以及 Directory Proxy Server 的配置。一般而言,如果大多数会话持续时间短暂,并且查询的计算量密集,则 Directory Proxy Server 可以支持较少的服务器。计算量密集的查询是那些需要检查整个消息的查询,例如使用特性重命名属性中描述的特性重命名功能时的查询。

Directory Proxy Server 使用监视进程在其后端服务器(包括仅通过 SSL 进行通信的那些服务器)上进行运行状况检查。如果使用了负载平衡,则该功能将自动启用。Directory Proxy Server 每隔 10 秒钟就会为它的每个后端目录服务器对 Root DSE 执行一次匿名搜索操作。如果某个服务器变得不可用或没有响应,则 Directory Proxy Server 就会将其从活动的负载平衡服务器集中移除。当服务器再次可用时,则会再次将它引入到活动的负载平衡服务器集中。

故障转移

当服务器由于以下原因而变得不可用时,Directory Proxy Server 就会进行检测:连接尝试因拒绝连接错误而返回,或者连接尝试出现超时。由于这两种情况均发生在会话初期,并且尚未对该会话进行任何操作,因此 Directory Proxy Server 会将故障转移到另一台服务器(只要这台服务器确实可用)。在连接尝试超时的情况下,客户机在获取响应时可以感觉到明显的延迟。如果 Directory Proxy Server 和后端服务器之间的连接突然丢失,那么 Directory Proxy Server 就会向受影响的客户机返回所有未完成操作的 LDAP_BUSY 错误。随后,Directory Proxy Server 将该客户机会话的故障转移到另一台目录服务器。

为了避免 Directory Proxy Server 成为目录部署的单一故障点,建议您至少使用两台 Directory Proxy Server,在其前面应用一个 IP。

安全性

Directory Proxy Server 提供了灵活的外部目录访问控制功能,这些功能增强了目录服务器提供的基本访问控制。访问控制机制允许不同的用户和用户群体与特定的访问组关联,这些访问组将应用管理员定义的安全限制和查询过滤。管理员可以基于 LDAP 验证信息、IP 地址、域名及其他条件来控制对条目的访问。

Directory Proxy Server 提供的一个重要安全功能是保护 LDAP 客户机和 LDAP 目录服务器之间建立的连接。通过配置 Directory Proxy Server 来监视许多特定的标准,以免 LDAP 目录服务器遭到连接攻击:客户机同时进行的操作数、客户机可以在每个连接请求的操作数,以及特定客户机组的连接数。它还具有使非活动客户机超时的能力。

可以使用特定阈值限制来配置 Directory Proxy Server 不超出给定标准。Directory Proxy Server 将监视这些标准并确保不超出阈值。Directory Proxy Server 保留了多个标准(例如从特定主机打开的连接数、在特定会话上执行的操作数等)来限制可能的目录拖网和拒绝服务攻击。创建系统配置实例中详细描述了这些参数的配置。

Directory Proxy Server 还通过禁止某些类型的通用过滤(如 (cn=A*) 或 (cn>A))来限制拖网。创建和管理组中提供了有关如何配置过滤器的过滤的详细信息。

Directory Proxy Server 允许经过验证的客户机更改其对目录服务的访问控制。这允许经过验证的客户机即使在安全网络之外,也可以对目录信息具有更大的访问权限。

Directory Proxy Server 通过支持安全套接字层 (SSL) 传输协议来提供数据保护。例如,您可以配置 Directory Proxy Server,以使从受保护的网络外面访问目录服务的所有客户机必须建立 SSL 会话。配置安全性中提供了有关在 Directory Proxy Server 中配置 SSL 的详细信息。

这些功能可以帮助防止目前在业界极为普遍的“拒绝服务”攻击和“满载攻击”。如果 Directory Proxy Server 检测到已经达到阈值,它将开始拒绝与目录服务器的连接,以免目录服务器遭到攻击和控制。

客户机-服务器兼容性

Directory Proxy Server 基于 LDAP 标识名 (DN) 和组访问权限做出查询路由决策,包括基于验证凭据识别移动用户。Directory Proxy Server 自动跟随可能由目录服务器返回的 LDAP 引用,支持高度分布和可扩展的目录服务。对于必须在一组目录服务器中物理分布目录信息,但分布式目录对于用户来说好像是一个逻辑目录的大型目录部署来说,自动跟随引用具有很大的优势。Directory Proxy Server 通过提供逻辑上统一分布式目录数据以支持可扩展的分布式目录服务的功能,来支持这种类型的部署方案。

Directory Proxy Server 支持任何遵守 LDAPv2 或 LDAPv3 协议的客户机应用程序。为模式重新编写提供了支持,以便向客户机应用程序提供以下固定模式:不始终匹配目录服务器。例如,Microsoft Outlook™ 电子邮件客户程序具有一个固定模式,该模式希望目录服务器实现 Microsoft 定义的特性,该特性可能不匹配某个企业的更一般的模式要求。模式重新编写功能允许目录系统管理员实现一个通用的企业模式,然后将该模式的特定元素动态地映射到功能较少的客户机应用程序所需的特性类型集。否则,Directory Proxy Server 不能识别模式,并接受大型标准集定义的任何特性类型和对象类以及特定行业模式定义,包括 RFC1274、X.520、X.521、LIPS、PKIX、inetOrgPerson 和 DEN。