第 11 章 代理和路由 URL

本章介绍代理服务器如何处理请求,并说明如何为特定资源启用代理。本章还介绍如何配置代理服务器,以将 URL 路由至不同的 URL 或服务器。

本章包含以下各节:

为资源启用/禁用代理

您可以为资源打开或关闭代理。资源可以是单个 URL、具有某些共同特征的 URL 组或整个协议。您可以控制是否对整个服务器、各种资源或模板文件中指定的资源启用代理。通过针对该资源关闭代理,可以拒绝对一个或多个 URL 的访问。此设置可作为一种全局方式,以拒绝或允许对资源的所有访问。此外,也可以通过使用 URL 过滤器来允许或拒绝对资源的访问。有关 URL 过滤器的更多信息,请参见过滤 URL。

为资源启用代理

通过其他代理进行路由

"Set Routing Preferences" 页面用于配置代理服务器,使其使用派生默认配置或直接连接,或者通过代理阵列、ICP 邻域、其他代理服务器或 SOCKS 服务器来路由某些资源。

为资源配置路由

为资源配置路由

链接 Proxy Server

可以使代理通过访问其他代理来获得某些资源,而不是访问远程服务器。链接是一种在防火墙后组织多个代理的有效方式。利用链接还可以建立分层结构的高速缓存。

通过其他 Proxy Server 进行路由

通过 SOCKS 服务器进行路由

如果网络上已有远程 SOCKS 服务器在运行,则可以将代理配置为与该 SOCKS 服务器连接以获得特定资源。

通过 SOCKS 服务器进行路由

后续步骤

启用通过 SOCKS 服务器进行路由后,应使用 "SOCKS v5 Routing" 页面创建代理路由。代理路由用于确定可通过代理路由经过的 SOCKS 服务器访问的 IP 地址。代理路由还可指定该 SOCKS 服务器是否与主机直接相连。

将客户机 IP 地址转发到服务器

"Forward Client Credentials" 页面用于配置代理,使其将客户机凭证发送到远程服务器。

配置代理以发送客户机 IP 地址

  1. 访问 Server Manager 并单击 "Routing" 选项卡。

  2. 单击 "Forward Client Credentials" 链接。

    此时将显示 "Forward Client Credentials" 页面。

  3. 选择下拉式列表中的资源,或者单击 "Regular Expression" 按钮,键入一个正则表达式,然后单击 "OK"。

  4. 设置以下转发选项:

    • Client IP Addressing Forwarding。请求文档时,Proxy Server 不会将客户机的 IP 地址发送到远程服务器,而是充当客户机,将自己的 IP 地址发送到远程服务器。但是,在以下情况下可能需要传送客户机的 IP 地址:

      • 如果代理位于内部代理链中。

      • 如果客户机需访问要求知道客户机 IP 地址的服务器。可以使用模板仅将客户机的 IP 地址发送到特定服务器。

      设置该选项可配置代理,使其发送客户机 IP 地址:

      • Default。允许 Proxy Server 转发客户机的 IP 地址。

      • Blocked。不允许代理转发客户机的 IP 地址。

      • Enabled Using HTTP Header。您可以指定代理转发 IP 地址时使用的 HTTP 标头。默认 HTTP 标头的名称为 Client-ip,但您可以使用所选择的任何标头发送 IP 地址。

    • Client Proxy Authentication Forwarding。设置该选项可配置代理,使其发送客户机的验证详细信息:

      • Default。允许 Proxy Server 转发客户机的验证详细信息。

      • Blocked。不允许代理转发客户机的验证详细信息。

      • Enabled Using HTTP Header。您可以指定代理转发验证详细信息时使用的 HTTP 标头。

    • Client Cipher Forwarding。设置该选项可配置代理,使其将客户机的 SSL/TLS 加密算法套件的名称发送到远程服务器。

      • Default。允许 Proxy Server 将客户机的 SSL/TLS 加密算法套件的名称转发到远程服务器。

      • Blocked。不允许代理将客户机的 SSL/TLS 加密算法套件的名称转发到远程服务器。

      • Enabled Using HTTP Header。您可以指定代理在将客户机的 SSL/TLS 加密算法套件的名称转发到远程服务器时使用的 HTTP 标头。默认 HTTP 标头的名称为 Proxy-cipher,但您可以使用所选择的任何标头发送客户机的 SSL/TLS 加密算法套件的名称。

    • Client Keysize Forwarding。设置该选项可配置代理,使其将客户机的 SSL/TLS 密钥的大小发送到远程服务器。

      • Default。允许 Proxy Server 将客户机的 SSL/TLS 密钥的大小转发到远程服务器。

      • Blocked。不允许代理将客户机的 SSL/TLS 密钥的大小转发到远程服务器。

      • Enabled Using HTTP Header。您可以指定代理在将客户机的 SSL/TLS 密钥的大小转发到远程服务器时使用的 HTTP 标头。默认 HTTP 标头的名称为 Proxy-keysize,但您可以使用所选择的任何标头发送客户机的 SSL/TLS 密钥的大小。

    • 指定 SOCKS 名称服务器 IP 地址
    • Client Secret Keysize Forwarding。设置该选项可配置代理,使其将客户机的 SSL/TLS 私钥的大小发送到远程服务器:

      • Default。允许 Proxy Server 将客户机的 SSL/TLS 私钥的大小转发到远程服务器。

      • Blocked。不允许代理将客户机的 SSL/TLS 私钥的大小转发到远程服务器。

      • Enabled Using HTTP Header。您可以指定代理在将客户机的 SSL/TLS 私钥的大小转发到远程服务器时使用的 HTTP 标头。默认 HTTP 标头的名称为 Proxy-secret-keysize,但您可以使用所选择的任何标头发送客户机的 SSL/TLS 私钥的大小。

    • Client SSL Session ID Forwarding。设置该选项可配置代理,使其将客户机的 SSL/TLS 会话 ID 发送到远程服务器。

      • Default。允许 Proxy Server 将客户机的 SSL/TLS 会话 ID 转发到远程服务器。

      • Blocked。不允许代理将客户机的 SSL/TLS 会话 ID 转发到远程服务器。

      • Enabled Using HTTP Header。您可以指定代理在将客户机的 SSL/TLS 会话 ID 转发到远程服务器时使用的 HTTP 标头。默认 HTTP 标头的名称为 Proxy-ssl-id,但您可以使用所选择的任何标头发送客户机的 SSL/TLS 会话 ID。

    • Client Issuer DN Forwarding。设置该选项可配置代理,使其将客户机的 SSL/TLS 证书颁发者的标识名发送到远程服务器。

      • Default。允许 Proxy Server 将客户机的 SSL/TLS 证书颁发者的标识名转发到远程服务器。

      • Blocked。不允许代理将客户机的 SSL/TLS 证书颁发者的标识名转发到远程服务器。

      • Enabled Using HTTP Header。您可以指定代理在将客户机的 SSL/TLS 证书颁发者的标识名转发到远程服务器时使用的 HTTP 标头。默认 HTTP 标头的名称为 Proxy-issuer-dn,但您可以使用所选择的任何标头发送客户机的 SSL/TLS 证书颁发者的名称。

    • Client User DN Forwarding。设置该选项可配置代理,使其将客户机的 SSL/TLS 证书主题的标识名发送到远程服务器。

      • Default。允许 Proxy Server 将客户机的 SSL/TLS 证书主题的标识名转发到远程服务器。

      • Blocked。不允许代理将客户机的 SSL/TLS 证书主题的标识名转发到远程服务器。

      • Enabled Using HTTP Header。您可以指定代理在将客户机的 SSL/TLS 证书主题的标识名转发到远程服务器时使用的 HTTP 标头。默认 HTTP 标头的名称为 Proxy-user-dn,但您可以使用所选择的任何标头发送客户机的 SSL/TLS 证书主题的名称。

    • Client SSL/TLS Certificate Forwarding。设置该选项可配置代理,使其将客户机的 SSL/TLS 证书发送到远程服务器。

      • Default。允许 Proxy Server 将客户机的 SSL/TLS 证书转发到远程服务器。

      • Blocked。不允许代理将客户机的 SSL/TLS 证书转发到远程服务器。

      • Enabled Using HTTP Header。您可以指定代理在将客户机的 SSL/TLS 证书转发到远程服务器时使用的 HTTP 标头。默认 HTTP 标头的名称为 Proxy-auth-cert,但您可以使用所选择的任何标头发送客户机的 SSL/TLS 证书。

    • Client Cache Information Forwarding。选择以下选项之一可配置代理,使其将有关本地高速缓存命中次数的信息发送到远程服务器:

      • Default。允许 Proxy Server 将有关本地高速缓存命中次数的信息转发到远程服务器。

      • Blocked。不允许代理将有关本地高速缓存命中次数的信息转发到远程服务器。

      • Enabled Using HTTP Header。您可以指定代理在将有关本地高速缓存命中次数的信息转发到远程服务器时使用的 HTTP 标头。默认 HTTP 标头的名称为 Cache-info,但您可以使用所选择的任何标头发送有关本地高速缓存命中次数的信息。

    • Set Basic Authentication Credentials。设置该选项可配置代理,使其发送 HTTP 请求。

      • User。指定要验证的用户。

      • Password。指定用户密码。

      • Using HTTP Header。您可以指定代理在传送凭证时使用的 HTTP 标头。

  5. 单击 "OK"。

  6. 单击 "Restart Required"。此时将显示 "Apply Changes" 页面。

  7. 单击 "Restart Proxy Server" 按钮应用更改。

允许客户机检查 IP 地址

为了维护网络安全,客户机可能具有将访问权限仅限于某些 IP 地址的功能。为使客户机使用此功能,代理服务器提供了对检查 Java IP 地址的支持。此支持允许客户机向代理服务器查询用于检索资源的 IP 地址。启用此功能后,客户机可以请求代理服务器发送原始服务器的 IP 地址。代理服务器会将该 IP 地址附加在标头中。当客户机知道原始服务器的 IP 地址后,即可显式指定对以后的连接使用同一 IP 地址。

检查 Java IP 地址

客户机自动配置

如果代理服务器支持多个客户机,则可能需要使用客户机自动配置文件来配置所有浏览器客户机。自动配置文件包含一个 JavaScriptTM 函数,用于确定访问各种 URL 时浏览器所使用的代理(如果有)。有关此功能的更多信息,请参见第 17 章,使用客户机自动配置文件。

设置网络连通性模式

您可以将代理服务器计算机连接到网络,也可以将其与网络断开连接。利用此功能,可轻松将代理安装在可用于演示的便携式计算机上。

当代理与网络断开连接时,文档将直接从高速缓存返回。代理不会执行最新性检查,因此文档检索速度相当快。但是,文档可能不是最新的。有关高速缓存的更多信息,请参见第 12 章,高速缓存。

如果未连接到网络,连接将始终不会挂起,这是因为代理服务器知道不存在网络连接,因此也就决不会尝试连接远程服务器。在网络关闭但代理服务器计算机仍在运行时,可以使用此无网络设置。如果运行与网络断开连接的代理,则意味着最终将从高速缓存访问过时的数据。而且,在无网络条件下运行也消除了使用代理安全性功能的必要性。

Proxy Server 提供了以下四种网络连通性模式:

更改 Proxy Server 的运行模式

更改默认的 FTP 传输模式

FTP 提供两种不同的方式在 FTP 服务器与客户机(充当客户机的代理)之间建立数据连接。这两种模式分别称为 PASV 和 PORT 模式 FTP。

某些 FTP 站点会运行防火墙,从而使 PASV 模式对代理服务器不起作用。因此,可将代理服务器配置为使用 PORT 模式 FTP。您可以对整个服务器启用 PORT 模式,也可以仅对特定 FTP 服务器启用此模式。

如果远程 FTP 服务器不支持 PASV 模式,则即使启用了 PASV 模式,代理服务器也将使用 PORT 模式。

如果代理服务器位于防火墙之后,使 PORT 模式 FTP 不起作用,则无法启用 PORT 模式。如果为资源选择默认模式,代理服务器将使用更通用资源的模式。如果未指定任何模式,则会使用 PASV 模式。

设置 FTP 模式

指定 SOCKS 名称服务器 IP 地址

如果将代理配置为通过 SOCKS 服务器建立外发连接,可能需要显式指定要用于 SOCKS 的名称服务器的 IP 地址。

如果使用 DNS 服务器(而非防火墙内的内部 DNS 服务)解析外部主机名,则应指定名称服务器 IP 地址。

指定 SOCKS 名称服务器 IP 地址

配置 HTTP 请求负载平衡

"Configure HTTP Request Load Balancing" 页面用于在指定的原始服务器中分配负载。

配置 HTTP 请求负载平衡

管理 URL 和 URL 映射

使用 Server Manager 可将 URL 映射到其他服务器,有时称为镜像服务器。客户机使用镜像 URL 访问代理时,代理将从镜像服务器(而非 URL 中指定的服务器)检索请求的文档。客户机绝不会知道请求将转到其他服务器。您也可以重定向 URL。在这种情况下,代理仅将重定向的 URL 返回客户机,而不返回文档,因此客户机随后可以请求新文档。使用映射还可以将 URL 映射到文件,如 PAC 和 PAT 映射。

创建和修改 URL 映射

要映射 URL,需指定 URL 前缀以及映射目标位置。以下部分介绍了各种类型的 URL 映射。您可以创建以下类型的 URL 映射:

  • 正则映射将一个 URL 前缀映射到另一个 URL 前缀。例如,可对代理进行配置,使其每次收到开始 http://www.example.com 的请求时,即转到特定 URL。

  • 反向映射将一个重定向的 URL 前缀映射到另一个 URL 前缀。当内部服务器向代理发送重定向的响应而非文档时,反向代理将使用这些映射。有关更多信息,请参见第 14 章,使用反向代理。

  • 正则表达式将与表达式匹配的所有 URL 都映射到单个 URL。例如,可以将与 .*job.* 匹配的所有 URL 映射到一个特定 URL(此 URL 可能会解释代理服务器为何不允许用户转到特定 URL)。

  • 客户机自动配置将 URL 映射到代理服务器上存储的特定 .pac 文件。有关自动配置文件的更多信息,请参见第 17 章,使用客户机自动配置文件。

  • 代理阵列表 (Proxy array table, PAT) 将 URL 映射到代理服务器上存储的特定 .pat 文件。只应从主代理创建此类映射。有关 PAT 文件和代理阵列的更多信息,请参见通过代理服务器阵列进行路由选择。

访问 URL 的客户机将被发送到同一服务器或不同服务器的不同位置。当资源已移动,或者需要在未使用结尾斜杠访问目录时保持相对链接的完整性时,此功能会很有用。

例如,假定您有一个称为 hi.load.com 的高负载 Web 服务器,您想要将其镜像到另一个称为 mirror.load.com 的服务器。对于转到 hi.load.com 计算机的 URL,可以将代理服务器配置为使用 mirror.load.com 计算机。

源 URL 前缀必须未进行转义,但在目标(镜像)URL 中,只需要转义 HTTP 请求中非法的字符。

请勿在前缀中使用结尾斜杠!

创建 URL 映射

更改现有映射

删除映射

重定向 URL

可以配置代理服务器,使其向客户机返回重定向的 URL,而不是获取并返回文档。利用重定向,客户机可得知初始请求的 URL 已被重定向到其他 URL。通常,客户机会立即请求重定向的 URL。Netscape Navigator 会自动请求重定向的 URL。用户不必再次显式请求相应文档。

在要拒绝对某个区域的访问时,URL 重定向很有用,因为可将用户重定向到说明访问为何被拒绝的 URL。

重定向一个或多个 URL

  1. 访问 Server Manager 并单击 "URL" 选项卡。

  2. 单击 "Redirect URLs" 链接。此时将显示 "Redirect URLs" 页面。

  3. 键入作为 URL 前缀的源 URL。

  4. 键入要重定向到的 URL。此 URL 既可以是 URL 前缀,也可以是固定的 URL。

    • 如果选择使用 URL 前缀作为重定向的目标 URL,请选择 "URL prefix" 字段旁边的单选按钮,然后键入一个 URL 前缀。

    • 如果选择使用固定的 URL,请选择 "Fixed UR" 字段旁边的单选按钮,然后键入一个固定的 URL。

  5. 单击 "OK"。

  6. 单击 "Restart Required"。

    此时将显示 "Apply Changes" 页面。

  7. 单击 "Restart Proxy Server" 按钮应用更改。

阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。