配置基于 MS-MPC 或基于 MX-SPC3 的静态 HTTP 重定向服务
从 Junos OS 19.3R2 版开始,如果您在 MX 系列路由器上启用了新一代服务,则基于 MX-SPC3 服务卡的强制门户也支持静态 HTTP 重定向服务调配。
围墙花园是一组服务器,它们为订阅者提供对围墙花园内站点的访问权限,而无需通过强制门户重新授权。强制门户页面通常是订阅者登录订阅者会话后看到的初始页面。
当用户尝试访问围墙花园之外的站点时,HTTP 重定向服务会处理 IPv4 和 IPv6 HTTP 请求来管理该流量。不发往围墙花园的订阅者 HTTP 请求流量将发送到重定向服务器,重定向服务器使用重定向 URL 进行响应,该 URL 将流量发送到强制门户,而不是未经授权的外部站点。强制门户为重定向的订阅者提供身份验证和授权服务,然后授予他们访问围墙花园之外的受保护服务器的权限。
重定向服务器可以是本地的,也可以是远程的:
本地重定向服务器 — 驻留在路由器上,并将订阅者流量重定向到围墙花园内的强制门户。
远程重定向服务器 — 驻留在路由器后面有围墙花园内的设备(如策略服务器)上。订阅者的 HTTP 流量的目标地址将重写为远程重定向服务器的地址。远程服务器将用户流量重定向到该围墙花园内的强制门户。
将围墙花园配置为防火墙服务过滤器。服务过滤器附加到静态接口。CPCD服务通过服务集应用于服务接口(MS-MPC上的ms或MX-SPC3服务卡上的vms);然后将服务集附加到静态接口。
将围墙花园配置为防火墙服务过滤器
将围墙花园配置为防火墙服务过滤器时,将识别并跳过发往围墙花园内服务器的流量。由于此流量不会流向线卡,因此降低了处理要求。
所有其他 HTTP 流量都发往围墙花园外的地址。由于此流量与筛选条件不匹配,因此会流向线卡进行处理。
您可以配置服务过滤器,以便围墙花园包含单个服务器作为强制门户或服务器列表。
使用单个服务器配置围墙花园作为强制门户:
创建服务筛选器。
[edit] user@host# edit firewall family address-family service-filter filter-name
定义一个过滤术语,用于识别和跳过对流向强制门户的流量的处理。
通过指定强制网络门户的目标地址和目标端口,指定过滤条件以匹配发往强制网络门户的流量。
[edit firewall family inet service-filter filter-name] user@host# set term name from destination-address ip-address user@host# set term name from destination-port port-number
指定匹配流量跳过线卡上的处理。
[edit firewall family inet service-filter filter-name] user@host# set term name then skip
定义过滤器术语以识别与上一个术语不匹配的所有流量中的 HTTP 流量,并将其发送以供 CPCD 服务规则处理。
指定一个或多个 HTTP 端口号以匹配跳过的 HTTP 流量。
[edit firewall family inet service-filter filter-name] user@host# set term name from destination-port http-port-number
指定匹配的流量由 CPCD 服务处理。
[edit firewall family inet service-filter filter-name] user@host# set term name then service
定义一个过滤器术语,以跳过对任何剩余的非 HTTP 流量的进一步操作。
[edit firewall family inet service-filter filter-name] user@host# set term name then skip
例如,以下配置使用 192.0.2.0 上的强制门户为 IPv4 HTTP 流量 walled-v4 创建一个过滤器。将跳过与地址匹配的流量。不匹配的流量进入术语 http,其中 HTTP 流量从所有跳过的流量中挑选出来,并根据 CPCD 服务进行处理。最后,术语跳过会导致跳过所有剩余的非 HTTP 流量。
[edit] user@host# edit firewall family inet service-filter walled-v4 [edit firewall family inet service-filter walled-v4] user@host# set term portal from destination-address 192.0.2.0 user@host# set term portal from destination-port 80 user@host# set term portal then skip user@host# set term http from destination-port 80 user@host# set term http then service user@host# set term skip then skip
将围墙花园配置为服务器的列表或子网。
创建服务筛选器。
[edit] user@host# edit firewall family address-family service-filter filter-name
定义筛选术语。
通过指定服务器的目标前缀列表,指定筛选条件以匹配发往围墙花园中任何服务器的流量。
[edit firewall family inet service-filter filter-name] user@host# set term name from destination-prefix-list list-name user@host# set term name from destination-port port-number
指定匹配流量跳过线卡上的处理。
[edit firewall family inet service-filter filter-name] user@host# set term name then skip
定义过滤器术语以识别与上一个术语不匹配的所有流量中的 HTTP 流量,并将其发送以供 CPCD 服务规则处理。
指定一个或多个 HTTP 端口号以匹配跳过的 HTTP 流量。
[edit firewall family inet service-filter filter-name] user@host# set term name from destination-port http-port-number
指定匹配的流量由 CPCD 服务处理。
[edit firewall family inet service-filter filter-name] user@host# set term name then service
定义一个过滤器术语,以跳过对任何剩余的非 HTTP 流量的进一步操作。
[edit firewall family inet service-filter filter-name] user@host# set term name then skip
(可选)定义一个前缀列表,用于指定围墙花园内的服务器。您可以指定一个子网或多个单独的地址。
[edit policy-options] user@host# set prefix-list list- name ip-address/mask user@host# set prefix-list list- name ip-address1 user@host# set prefix-list list- name ip-address2
例如,以下配置为 IPv6 HTTP 流量创建一个过滤器(walled-v6-list),其前缀列表 wg-list 用于指定围墙花园中的两台服务器。过滤器术语 portal6 标识发往围墙花园的 IPv6 流量。不匹配的流量进入术语 http6,其中 HTTP 流量从所有跳过的流量中挑选出来,并根据 CPCD 服务进行处理。最后,术语跳过会导致跳过所有剩余的非 HTTP 流量。
[edit] user@host# edit firewall family inet6 service-filter walled-v6-list user@host# set term portal6 from destination-prefix-list wg-list user@host# set term portal6 then skip user@host# set term http6 from destination-port [80 8080] user@host# set term http6 then service user@host# set term skip6 then skip [edit policy-options] user@host# set prefix-list wg-list 2001:db8::10.10 user@host# set prefix-list wg-list 2001:db8::10.22
为本地和远程重定向服务器配置 HTTP 重定向
当对围墙花园外的站点发出HTTP请求时,CPCD可以将流量重定向到强制门户进行身份验证和授权。
配置 CPCD 服务规则,该规则指定要对发往围墙花园外的流量执行的操作。此流量由围墙花园服务筛选器识别并传递到服务。您配置的操作取决于您使用的是本地还是远程 HTTP 重定向服务器:
如果在路由器上使用本地 HTTP 重定向服务器,请指定重定向操作。
如果您使用的是位于路由器后面的围墙花园中的远程 HTTP 重定向服务器,则不能简单地指定重定向 URL。在这种情况下,服务规则必须重写流量的 IP 目标地址。新的目标地址是远程 HTTP 重定向服务器的地址。然后,远程服务器提供重定向 URL,以将流量发送到强制门户。
CPCD 服务通过服务集与服务接口相关联。服务集和围墙花园服务过滤器都应用于静态配置的接口。
例如,在本地服务器的以下配置中,CPCD 服务规则 redir-svc 将流量重定向到强制门户 。 http://www.portal.example.com
订阅者输入的原始 URL 将追加到重定向 URL 中。
user@host# edit services captive-portal-content-delivery user@host# edit rule redir-svc user@host# set match-direction input user@host# set term redir1 then redirect http://www.portal.example.com/url=%dest-url%
远程服务器的以下配置将创建 CPCD 服务规则 rewr-svc,该规则将原始目标地址重写为远程服务器的地址 192.0.2.230。
user@host# edit services captive-portal-content-delivery user@host# edit rule rewr-svc user@host# set match-direction input user@host# set term rewr1 then rewrite destination-address 192.0.2.230
配置服务配置文件和服务集以将服务配置文件与服务接口关联
服务集定义要由 MS-MPC/MS-MIC 或 MX-SPC3 服务卡执行的一个或多个服务(如果在 MX 系列路由器上启用了下一代服务)。对于 HTTP 重定向服务,您需要定义包含 CPCD 规则的 CPCD 服务配置文件。服务集将 CPCD 服务配置文件应用于特定服务接口。
例如,以下配置将创建 CPCD 服务配置文件 redir-prof,该配置文件引用 CPCD 规则 redir-svc。服务集 ss2 将 CPCD 服务配置文件 redir-prof 与服务接口 ms-5/0/0 相关联。
[edit services captive-portal-content-delivery] user@host# edit profile redir-prof user@host# set cpcd-rules redir-svc [edit services] user@host# edit service-set sset2 user@host# set captive-portal-content-delivery-profile redir-prof user@host# set interface-service-service-interface ms-5/0/0
将 CPCD 服务集和服务过滤器附加到逻辑接口
要使用 HTTP 重定向服务,必须将 CPCD 服务集附加到逻辑接口。如果围墙花园配置为服务过滤器,则必须将其连接到与服务集相同的接口。到达和离开该接口的流量由服务过滤器过滤。如果您在 MX 系列路由器上启用了下一代服务,并且 CPCD 配置文件在服务接口上应用,则标识用于服务的流量将发送到 MS-MPC 或 MX-SPC3 服务卡。
例如,以下配置将服务集 sset2 和服务过滤器 walled-v4 附加到 IPv4 地址族的 ge-2/0/1.0。它为逻辑接口分配一个地址。服务集和过滤器都应用于接口输入和输出。
user@host# edit interfaces ge-2/0/1 unit 0 family inet user@host# set address 203.0.113.5 user@host# set service input service-set sset2 service-filter walled-v4 user@host# set service output service-set sset2 service-filter walled-v4
为 CPCD 服务安装服务包
要在 MS-MPC/MS-MIC 或 MX-SPC3 服务卡上使用 CPCD 服务(如果在 MX 系列路由器上启用了下一代服务),请在 MS-MIC 或 MX-SPC3 上配置服务接口。必须在具有服务接口的每个 MS-MIC 上或 MX-SPC3 服务卡上安装所需的服务包。
例如,以下配置在机箱插槽 1 中的 MS-MPC 和 MPC 的插槽 0 中的 MS-MIC 上加载 CPCD 服务包。系统日志消息会为所有严重级别的任何守护程序和本地外部应用程序生成。
user@host# edit chassis fpc 1 pic 0 adaptive-services service-package [edit chassis fpc 1 pic 0 adaptive-services service-package] user@host# set extension-provider package jservices-cpcd [edit chassis fpc 1 pic 0 adaptive-services service-package] user@host# set extension-provider syslog daemon any user@host# set extension-provider syslog external any
更改历史记录表
功能支持由您使用的平台和版本决定。使用 功能资源管理器 确定您的平台是否支持某个功能。