用于订阅者访问的 RADIUS 服务器和参数
为 RADIUS 服务器配置参数和选项是订阅者管理配置的主要部分。定义身份验证和计费服务器后,为所有 RADIUS 服务器配置选项。您还可以配置访问配置文件,以便为订阅者或订阅者组指定订阅者访问身份验证、授权和计费配置参数。配置文件设置将覆盖全局设置。尽管某些选项在全局级别和访问配置文件级别都可用,但许多选项仅在访问配置文件中可用。
创建访问配置文件后,必须指定配置文件与 access-profile
语句一起使用的位置;这称为附加配置文件。可以在各个级别分配访问配置文件。例如,您可以在一些位置附加访问配置文件
全局的路由实例。
在动态配置文件中。
在域映射中,用于映射订阅者会话的访问选项和会话参数。
在动态 VLAN 和动态堆栈 VLAN 的接口上。
在接口上或用户组中,对于具有静态配置接口用于动态服务调配的用户。
在 DHCP 客户端或订阅者的 DHCP 中继代理和 DHCP 本地服务器上。
由于您可以在多个级别附加访问配置文件,因此最具体的访问配置文件优先于任何其他配置文件分配,以避免冲突。除非附加配置文件,否则身份验证和计费不会运行。
RADIUS 身份验证和计费服务器定义
使用 RADIUS 进行订阅者管理时,必须定义路由器与之通信的一个或多个外部 RADIUS 服务器,以便进行订阅者身份验证和计费。除了指定服务器的 IPv4 或 IPv6 地址外,您还可以配置选项和属性,以确定路由器如何与指定服务器交互。
您可以在层次结构级别、[edit access profile name radius-server]
层次结构级别或两级定义 RADIUS 服务器和连接选项[edit access radius-server]
。
AAA 进程 (authd) 确定要使用的服务器定义,如下所示:
当 RADIUS 服务器定义仅存在于 中
[edit access radius-server]
时,authd 将使用这些定义。当 RADIUS 服务器定义仅存在于访问配置文件中时,authd 将使用这些定义。
当 RADIUS 服务器定义同时
[edit access radius-server]
存在于访问配置文件中和访问配置文件中时,authd 仅使用访问配置文件定义。
要使用 RADIUS 服务器,必须在访问配置文件中将其指定为身份验证服务器和/或计费服务器。无论服务器是在访问配置文件中还是在 [edit access radius-server]
层次结构级别上定义,都必须对服务器执行此操作。
要定义 RADIUS 服务器并指定路由器与服务器的交互方式,请执行以下操作:
此过程仅 [edit access radius-server]
显示层次结构级别。您可以选择性地在 [edit access profile profile-name] radius-server]
层次结构级别配置其中任何参数。除了全局设置之外,还可以代替全局设置执行此操作。应用配置文件时,配置文件设置将覆盖全局配置。
配置适用于所有 RADIUS 服务器的选项
您可以配置适用于全球所有 RADIUS 服务器的 RADIUS 选项。
要全局配置 RADIUS 选项,请执行以下操作:
配置超时宽限期以指定 RADIUS 服务器被视为关闭或无法访问的时间
当 RADIUS 身份验证服务器无法响应给定身份验证请求的任何尝试并超时时,authd 会记录参考时间,但不会立即将服务器标记为关闭(如果其他服务器可用)或无法访问(如果它是唯一配置的服务器)。相反,可配置的宽限期计时器从参考时间开始。如果服务器在宽限期到期之前响应后续请求,则宽限期将被清除。
在宽限期内,服务器不会标记为关闭或无法访问。每次服务器对该服务器的后续请求超时时,authd 都会检查宽限期是否已过期。当检查确定宽限期已过期且服务器仍未响应请求时,服务器将被标记为无法访问或关闭。
使用较短的宽限期可以让您更快地放弃无响应的服务器,并将身份验证请求定向到其他可用服务器。较长的宽限期使服务器有更多机会进行响应,并可能避免不必要地放弃资源。当您只有一台或少量已配置的服务器时,您可以指定更长的宽限期。
要配置未响应的 RADIUS 服务器未被标记为无法访问或关闭的宽限期,请执行以下操作:
指定宽限期的持续时间。
[edit access radius-options] user@host# set timeout-grace seconds
配置访问配置文件选项以便与 RADIUS 服务器进行交互
您可以使用访问配置文件指定路由器在与 RADIUS 身份验证和计费服务器通信以进行订阅者访问时使用的选项。此过程介绍仅在访问配置文件中可用的选项。有关在访问配置文件和全局级别都可用的选项,请参阅 订阅者访问的 RADIUS 服务器和参数。
要配置 RADIUS 身份验证和计费服务器选项,请执行以下操作:
使用其他选项配置呼叫站 ID
使用此部分为 MX 系列路由器上的访问配置文件中的呼叫站 ID(RADIUS IETF 属性 31)配置替代值。
您可以将 Calling-Station-ID 配置为在 [edit access profile profile-name radius options calling-station-id-format
] 层次结构中以任意组合形式包含以下一个或多个选项:
代理电路标识符 (
agent-circuit-id
) — 用户接入节点和接入节点上的数字用户线 (DSL) 的标识符。代理电路标识符 (ACI) 字符串存储在 DHCP 流量的 DHCP 消息的 DHCP option 82 字段中,或者存储在 PPPoE 主动发现发起 (PADI) 和 PPPoE 主动发现请求 (PADR) 控制数据包的 DSL 论坛 Agent-Circuit-ID VSA [26-1] 中。代理远程标识符 (
agent-remote-id
) — 发起服务请求的数字用户线路接入复用器 (DSLAM) 接口上的用户标识符。代理远程标识符 (ARI) 字符串存储在 DHCP 流量的 DHCP option 82 字段中,或者存储在 PPPoE 流量的 DSL 论坛 Agent-Remote-ID VSA [26-2] 中。接口说明 (
interface-description
) - 接口的值。接口文本说明 (
interface-text-description
) - 接口的文本说明。接口文本描述是单独配置的,使用set interfaces interface-name description description
语句或语set interfaces interface-name unit unit-number description description
句MAC 地址 (
mac-address
) — 用户源设备的 MAC 地址。NAS 标识符 (
nas-identifier
) — 发起认证或计费请求的 NAS 的名称。NAS 标识符为 RADIUS IETF 属性 32。堆叠 VLAN
(stacked-vlan)
— 堆叠 VLAN ID。VLAN
(vlan)
—VLAN ID。
如果使用多个可选值配置 Calling-Station-ID 的格式,则哈希字符 (#) 是默认分隔符,路由器在生成的 Calling-Station-ID 字符串中用作串联值之间的分隔符。或者,您可以为要使用的呼叫站 ID 配置备用分隔符。以下示例显示了配置多个可选值时输出的顺序:
nas-identifier#interface description#interface text description#agent-circuit-id#agent-remote-id#mac address#stacked vlan#vlan
要配置访问配置文件以在 Calling-Station-ID 中提供可选信息,请执行以下操作:
示例:在访问配置文件中使用其他选项调用 Station-ID
以下示例创建名为 retailer01 的访问配置文件,该配置文件配置一个 Calling-Station-ID 字符串,其中包含 NAS 标识符 (fox
)、接口描述、代理电路标识符和代理远程标识符选项。
[edit access profile retailer01 radius options] nas-identifier "fox"; calling-station-id-delimiter "*"; calling-station-id format { nas-identifier; interface-description; agent-circuit-id; agent-remote-id; }
生成的 Calling-Station-ID 字符串的格式如下:
fox*ge-1/2/0.100:100*as007*ar921
哪里:
NAS 标识符值为
fox
。Calling-Station-ID 分隔符为
*
(星号)。接口说明值为
ge-1/2/0.100:100
。代理电路标识符值为
as007
。代理远程标识符值为
ar921
。
考虑一个示例,其中配置了所有选项,但没有可用于 Agent-Circuit-ID、Agent-Remote-ID 或堆叠 VLAN 标识符的值。其他值如下:
NAS 标识符 — 日光浴室
接口说明 — ge-1/0/0.1073741824:101
接口文本说明 — 示例-interface
MAC 地址—00:00:5E:00:53:00
VLAN 标识符 - 101
这些值将导致以下 Calling-Station-ID:
solarium#ge-1/0/0.1073741824:101#example-interface###00-00-5E-00-53-00##101
过滤 RADIUS 消息中的 RADIUS 属性和 VSA
RADIUS 消息中接收的标准属性和供应商特定属性 (VSA) 优先于内部调配的属性值。过滤属性包括在访问接受数据包中接收到某些属性时选择 忽略 这些属性,以及 排除某些属性 发送到 RADIUS 服务器。忽略从 RADIUS 服务器接收的属性可以改用本地设置的值。例如,对于在订阅者的生存期内不会更改的属性,从发送中排除属性非常有用。它使您能够在不丢失信息的情况下减小数据包大小。
您可以指定标准 RADIUS 属性和 VSA,路由器或交换机随后在 RADIUS 访问-接受消息中收到这些属性和 VSA 时会 忽略 这些属性和 VSA。您还可以指定路由器或交换机从指定 RADIUS 消息类型 中排除 的属性和 VSA。排除意味着路由器或交换机在发送到 RADIUS 服务器的指定消息中不包含该属性。
从 Junos OS 18.1R1 版开始,您可以将路由器或交换机配置为忽略或排除 RADIUS 标准属性和 VSA,方法是分别指定标准属性编号或 IANA 分配的供应商 ID 和 VSA 编号。借助这种灵活的配置方法,您可以将平台支持的任何标准属性和 VSA 配置为忽略或排除。如果配置不受支持的属性、供应商和 VSA,则配置无效。
旧方法允许您仅配置语句语法包含特定选项的那些属性和 VSA。因此,您可以使用旧方法仅忽略可在 Access-Accept 消息中接收的所有属性的子集。
要配置被路由器或交换机忽略或排除的属性,请执行以下操作:
以下示例比较了忽略标准 RADIUS 属性 Framed-IP-Netmask (9) 和瞻博网络 VSA、Ingress-Policy-Name (26-10) 和 Egress-Policy-Name (26-11) 的传统配置方法和灵活配置方法。
旧版方法:
[edit access profile prof-ign radius attributes] user@host# set ignore framed-ip-netmask input-filter output-filter
灵活的方法:
[edit access profile prof-ign radius attributes] user@host# set ignore standard-attribute 9 user@host# set ignore vendor-id 4874 vendor-attribute [ 10 11 ]
以下示例比较了传统配置方法和灵活配置方法,以排除标准 RADIUS 属性 Framed-IP-Netmask (9) 和瞻博网络 VSA、Ingress-Policy-Name (26-10) 和 Egress-Policy-Name (26-11)。
旧版方法:
[edit access profile prof-exc radius attributes] user@host# set exclude framed-ip-netmask accounting-stop user@host# set exclude input-filter [ accounting-start accounting-stop ] user@host# set exclude output-filter [ accounting-start accounting-stop ]
灵活的方法:指定标准属性编号或 IANA 分配的供应商 ID、VSA 编号和消息类型:
[edit access profile prof-exc radius attributes] user@host# set exclude standard-attribute 9 packet-type accounting-stop user@host# set exclude vendor-id 4874 vendor-attribute 10 packet-type [ accounting-start accounting-stop ] user@host# set exclude vendor-id 4874 vendor-attribute 11 packet-type [ accounting-start accounting-stop ]
如果在同一配置文件中使用这两种方法指定属性,会发生什么情况?有效配置是两种方法的逻辑 OR。请考虑以下示例,了解标准属性 accounting-delay-time (41):
[edit access profile prof-3 radius attributes] user@host# set exclude accounting-delay-time [ accounting-off accounting-on ] user@host# set exclude standard-attribute 41 packet-type [ accounting-start accounting-stop ]
结果是,该属性将从所有四种消息类型中排除:Accounting-Off、Accounting-On、Accounting-Start 和 Accounting-Stop。效果与使用以下任一配置时相同:
-
[edit access profile prof-3 radius attributes] user@host# set exclude accounting-delay-time [ accounting-off accounting-on accounting-start accounting-stop ]
-
[edit access profile prof-3 radius attributes] user@host# set exclude standard-attribute 41 packet-type [ accounting-off accounting-on accounting-start accounting-stop ]
变更历史表
是否支持某项功能取决于您使用的平台和版本。使用 功能浏览器 查看您使用的平台是否支持某项功能。