本页内容
802.1X 身份验证
IEEE 802.1X 基于端口的网络访问控制标准,可保护以太网 LAN 免遭未经授权的用户访问。它会阻止来自接口上请求方(客户端)的所有流量,直到请求方的凭据在身份验证服务器(RADIUS 服务器)上显示并匹配为止。请求方通过身份验证后,交换机将停止阻止访问,并为请求方打开接口。有关更多信息,请阅读本主题。
802.1X 交换机概述
802.1X 身份验证的工作原理
802.1X 身份验证的工作原理是使用验证方端口访问实体(交换机)阻止来自端口请求方(终端设备)的入口流量,直到请求方的凭据在身份验证服务器(RADIUS 服务器)上显示并匹配。通过身份验证后,交换机将停止阻止流量,并向请求方开放端口。
终端设备在以下模式下 single-secure supplicant multiple supplicant进行single supplicant身份验证:
-
单个请求者 — 仅对第一个终端设备进行身份验证。稍后连接到该端口的所有其他终端设备都将被允许完全访问,无需任何进一步的身份验证。它们有效地 搭 载了第一个终端设备的身份验证。
-
单安全请求方 — 仅允许一个终端设备连接到端口。在第一台设备注销之前,不允许连接其他终端设备。
-
多个请求者 — 允许将多个终端设备连接到端口。每个终端设备都经过单独身份验证。
可以使用 VLAN 和防火墙过滤器进一步定义网络访问,这两者都可充当过滤器,将终端设备组与所需的 LAN 区域进行分离和匹配。例如,您可以配置 VLAN 来处理不同类别的身份验证失败,具体取决于:
-
无论终端设备是否支持 802.1X。
-
主机所连接的交换机接口上是否配置了 MAC RADIUS 身份验证。
-
RADIUS 身份验证服务器是否变得不可用或发送 RADIUS 访问-拒绝消息。请参阅配置 RADIUS 服务器故障回退(CLI 过程)。
802.1X 功能概述
瞻博网络以太网交换机支持以下 802.1X 功能:
-
访客 VLAN — 当主机连接的交换机接口上未配置 MAC RADIUS 身份验证时,对于未启用 802.1X 的无响应终端设备,提供对 LAN 的有限访问,通常仅限于互联网。此外,访客 VLAN 还可用于为访客用户提供对 LAN 的有限访问。通常,访客 VLAN 仅提供对互联网和其他访客终端设备的访问。
-
服务器拒绝 VLAN — 为支持 802.1X 但发送了错误凭据的响应式终端设备提供对 LAN 的有限访问,通常仅限于互联网。如果使用服务器拒绝 VLAN 进行身份验证的终端设备是 IP 电话,则不允许语音流量。
-
服务器故障 VLAN — 在 RADIUS 服务器超时期间,为 802.1X 终端设备提供对 LAN(通常仅对互联网)的有限访问。
-
动态 VLAN — 使终端设备在经过身份验证后能够动态成为 VLAN 的成员。
-
专用 VLAN — 支持在属于专用 VLAN (PVLAN) 成员的接口上配置 802.1X 身份验证。
-
对用户会话的动态更改 — 使交换机管理员能够终止已通过身份验证的会话。此功能基于对 RFC 3576 中定义的 RADIUS 断开消息的支持。
-
VoIP VLAN — 支持 IP 电话。IP 电话上语音 VLAN 的实施因供应商而异。如果电话启用了 802.1X,则会像任何其他请求方一样进行身份验证。如果电话未启用 802.1X,但将另一台兼容 802.1X 的设备连接到其数据端口,则该设备将经过身份验证,然后 VoIP 流量才能流入和流出电话(前提是接口配置为单请求方模式,而非单安全请求方模式)。
注意:不支持在专用 VLAN (PVLAN) 接口上配置 VoIP VLAN。
-
RADIUS 记帐 — 将记帐信息发送到 RADIUS 记帐服务器。每当订阅者登录或注销时,以及每当订阅者激活或停用订阅时,都会将计费信息发送到服务器。
-
802.1X 的 RADIUS 服务器属性 —
Juniper-Switching-Filter这是特定于供应商的属性 (VSA),可在 RADIUS 服务器上配置,以便在 802.1X 身份验证过程中进一步定义请求方的访问。在身份验证服务器上集中配置属性,无需在请求方可能连接到LAN的LAN中的每台交换机上以防火墙过滤器的形式配置这些相同的属性。等Juniper-Switching-Filter同于 RFC4849 的属性 92 中引用的 NAS-Filter-Rule。 -
Microsoft 质询握手身份验证协议版本 2 (MS-CHAPv2) - 为支持 802.1X EAP 的客户端启用 MS-CHAPv2 身份验证。
-
使用 Mist Access Assurance 通过 GBP 实现微分段和宏分段 — 您可以使用基于组的策略 (GBP) 在虚拟可扩展 LAN (VXLAN) 架构中应用微分段和宏分段。GBP 利用底层 VXLAN 技术提供不受位置限制的端点访问控制。借助 GBP,您可以在整个企业网域中实施一致的安全策略。这样,您就不必在所有交换机上配置大量的防火墙过滤器,从而简化网络配置。瞻博网络 Mist 云的网络访问控制 (NAC) 会在 RADIUS 事务期间动态分配 GBP 标记。借助 RADIUS 802.1X 身份验证,网络运营商可以自动对用户或设备进行身份验证和授权,并允许它们进入网络。瞻博网络 Mist Access Assurance 使用用户身份和设备身份来确定网络分配给每个用户的角色和网段。网络使用 VLAN 或 GBP 将用户分组到网段中。然后,瞻博网络 Mist Access Assurance 会应用与各个网段关联的网络策略
我们目前在 EX4100、EX4400 和 EX4650 虚拟机箱上支持此功能。
有关更多信息,请参阅 使用基于组的策略进行微分段。
以下功能支持对未启用 802.1X 的设备进行身份验证:
-
静态 MAC 旁路 — 提供旁路机制来对未启用 802.1X 的设备(如打印机)进行身份验证。静态 MAC 旁路会绕过 802.1X 身份验证,将这些设备连接到支持 802.1X 的端口。
-
MAC RADIUS 身份验证 — 提供一种允许未启用 802.1X 的主机访问 LAN 的方法。MAC-RADIUS 使用客户端的 MAC 地址作为用户名和密码,模拟客户端设备的请求方功能。
中继端口上的 802.1X 身份验证
从 Junos OS 18.3R1 版开始,您可以在中继接口上配置 802.1X 身份验证,这允许网络访问设备 (NAS) 对接入点(接入点)或其他连接的第 2 层设备进行身份验证。连接到 NAS 的接入点或交换机将支持多个 VLAN,因此必须连接到一个中继端口。在中继接口上启用 802.1X 身份验证可保护 NAS 免受安全漏洞的影响,攻击者可能会断开接入点的连接并连接笔记本电脑,以便为所有已配置的 VLAN 免费访问网络。
在中继接口上配置 802.1X 身份验证时,请注意以下注意事项。
-
中继接口仅支持单安全请求方模式。
-
您必须在中继接口上本地配置 802.1X 身份验证。如果使用命令
set protocol dot1x interface all全局配置 802.1X 身份验证,则该配置不会应用于中继接口。 -
中继接口不支持动态 VLAN。
-
中继接口不支持访客 VLAN 和服务器拒绝 VLAN。
-
中继接口 ()
server-fail-voip不支持 VoIP 客户端的服务器故障回退。 -
Server-fail (permit, use-cache, vlan-name), Server-reject (vlan vlan-name)EAP-TLS 客户端不受支持。 -
不支持使用强制门户在中继端口上进行身份验证。
-
聚合接口不支持在中继端口上进行身份验证。
-
中继端口不支持在属于专用 VLAN (PVLAN) 的接口上配置 802.1X 身份验证。
第 3 层接口上的 802.1X 身份验证
从 Junos OS 20.2R1 版开始,您可以在第 3 层接口上配置 802.1X 身份验证。在第 3 层接口上配置 802.1X 身份验证时,请注意以下注意事项:
-
仅支持支持 EAP 的客户端。
-
仅支持单请求方模式。
-
您必须在第 3 层接口上本地配置 802.1X 身份验证。如果使用命令
set protocol dot1x interface all全局配置 802.1X 身份验证,则该配置不会应用于第 3 层接口。 -
对第 3 层接口的支持不包括 IRB 或子接口。
-
不支持访客 VLAN、服务器拒绝 VLAN 和服务器故障 VLAN。
-
不支持 VoIP 客户端的服务器故障回退 (
server-fail-voip)。 -
对于在第 3 层接口上进行身份验证的客户端,作为 RADIUS 访问-接受或 COA 消息的一部分,仅接受来自身份验证服务器的以下属性:
-
用户名
-
会话超时
-
呼叫站 ID
-
帐户-会话-ID
-
NAS-端口-ID
-
端口并轨
-
Junos OS 演化版软件支持 802.1X
从 Junos OS 演化版 22.3R1 开始,您可以在第 2 层接口上配置 802.1X 身份验证。以下注意事项:在第 2 层接口上申请 802.1X 身份验证。
-
不受支持的功能包括:
-
访客 VLAN、服务器拒绝 VLAN 和服务器故障 VLAN
-
VoIP 客户端的服务器故障回退 (server-fail-voip)
-
动态 VLAN
-
使用强制门户和中央 Web 身份验证 (CWA) 在第 2 层接口上进行身份验证。
-
-
对于在第 2 层接口上进行身份验证的客户端,RADIUS 访问-接受或 COA 消息的身份验证服务器不支持的属性包括:
-
ip-mac-会话绑定
-
瞻博网络-CWA-重定向
-
瞻博网络交换过滤器
-
过滤器 ID
-
隧道中型
-
瞻博网络-VoIP-VLAN
-
出口-VLAN -名称
-
出口-VLAN-ID
-
隧道类型
-
隧道专用组 ID
-
-
如果 IRB 位于网桥域中,则启用 802.1x 的端口不会丢弃单安全和多请求方模式的路由流量,即使用户未通过身份验证也是如此。第 2 层接口上启用 802.1X 的端口仅会在单请求方模式配置中丢弃路由流量。
也可以看看
第 2 层接口上的 802.1X 身份验证
概述
基于端口的网络访问控制 (PNAC) 的 IEEE 802.1X 标准提供了一种机制来对连接到 LAN 端口的设备的用户进行身份验证。802.1X 标准在本地或远程用户数据库中验证用户的凭据。身份验证机制只允许具有正确凭据的用户访问网络。它拒绝所有其他用户的访问,从而控制网络访问。
采用 802.1X 身份验证的网络的三个基本组件是:
-
验证器端口访问实体 (PAE):客户端连接到的交换机或路由器端口。验证方 PAE 形成控制门,阻止进出客户端的所有通信流量,直到 802.1X 对客户端进行身份验证。
-
请求者:尝试访问网络并需要进行身份验证的客户端。请求方连接到验证方 PAE。
-
身份验证服务器:包含有关允许连接到网络的用户的信息的后端数据库。当请求方尝试登录时,802.1X 会将请求方的凭据发送到此服务器进行身份验证。
身份验证服务器对请求方的凭据进行身份验证后,设备将停止阻止对 PAE 的访问。设备向请求方打开接口,并允许其访问网络。您(网络管理员)可以在第 2 层 (L2) 接口上配置 802.1X。
802.1X IEEE 标准允许您使用任何身份验证服务器进行客户端身份验证。RADIUS 服务器是最常用的,因为这些服务器易于配置。RADIUS 服务器还提供定义专用属性或特定于供应商的属性的选项。设备和服务器可以交换这些属性。
优势
-
对用户进行身份验证。
-
防止恶意攻击者访问您的网络。
-
控制网络访问。
配置
配置 802.1X 接口设置(CLI 过程)
IEEE 802.1X 身份验证提供网络边缘安全性,通过阻止接口上请求方(客户端)进出的所有流量,直到请求方的凭据在(RADIUS 服务器)上 authentication server 显示和匹配为止,保护以太网 LAN 免遭未经授权的用户访问。请求方通过身份验证后,交换机将停止阻止访问,并为请求方打开接口。
您还可以指定 802.1X 排除列表,以指定可以绕过身份验证并自动连接到 LAN 的请求方。请参阅配置 802.1X 的静态 MAC 旁路和 MAC RADIUS 身份验证(CLI 过程)。
无法在已启用 Q-in-Q 隧道的接口上配置 802.1X 用户身份验证。
开始之前,请指定要用作身份验证服务器的一个或多个 RADIUS 服务器。请参阅在交换机上指定 RADIUS 服务器连接 (CLI 过程)。
要在接口上配置 802.1X:
如果 RADIUS 身份验证服务器变得不可用或无法访问,则会触发服务器故障回退。默认情况下,该 deny 选项配置 server-fail在 下,这会强制请求方身份验证失败。但是,您还可以将其他选项配置为在服务器超时时为等待身份验证的终端设备执行的操作。
有关更多信息,请参阅接口 (802.1X)
此设置指定交换机将接口置于 HELD 状态之前的尝试次数。
也可以看看
了解 RADIUS 对授权用户会话发起的更改
使用基于客户端/服务器 RADIUS 模型的身份验证服务时,请求通常由客户端发起并发送到 RADIUS 服务器。在某些情况下,请求可能由服务器发起并发送到客户端,以便动态修改已经在进行的经过身份验证的用户会话。接收和处理消息的客户端是交换机,它充当网络访问服务器或 NAS。服务器可以向交换机发送一条请求终止会话的断开消息,或向交换机发送请求修改会话授权属性的授权变更 (CoA) 消息。
交换机侦听 UPD 端口 3799 上未经请求的 RADIUS 请求,并仅接受来自可信源的请求。发送断开连接或 CoA 请求的授权取决于源地址和相应的共享密钥,必须在交换机和 RADIUS 服务器上配置这些密钥。有关在交换机上配置源地址和共享密钥的更多信息,请参阅示例:将适用于 802.1X 的 RADIUS 服务器连接到 EX 系列交换机。
断开消息
RADIUS服务器向交换机发送断开请求消息,以终止用户会话并丢弃所有关联的会话上下文。如果请求成功(即所有关联的会话上下文都被丢弃并且用户会话不再连接),或者如果请求失败(即验证方无法断开会话并丢弃所有关联的会话上下文),交换机将使用 Disconnect-ACK 消息响应 Disconnect-REQUEST 数据包。
在断开请求消息中,RADIUS 属性用于唯一标识交换机 (NAS) 和用户会话。消息中包含的 NAS 识别属性和会话识别属性的组合必须至少匹配一个会话,请求才能成功;否则,交换机将以 Disconnect-NAK 消息进行响应。断开请求消息只能包含 NAS 和会话标识属性;如果包含任何其他属性,交换机将以 Disconnect-NAK 消息作为响应。
授权消息的变更
授权变更 (CoA) 消息包含用于动态修改用户会话的授权属性以更改授权级别的信息。这是两步身份验证过程的一部分,其中首先使用 MAC RADIUS 身份验证对端点进行身份验证,然后根据设备类型进行分析。CoA 消息用于应用适合设备的实施策略,通常通过更改数据过滤器或 VLAN。
如果授权更改成功,交换机将响应 CoA 消息,并显示 CoA-ACK 消息;如果更改不成功,交换机将响应 CoA-NAK 消息。如果无法执行 CoA-Request 消息中指定的一个或多个授权更改,交换机将使用 CoA-NAK 消息进行响应。
在 CoA 请求消息中,RADIUS 属性用于唯一标识交换机(充当 NAS)和用户会话。消息中包含的 NAS 识别属性和会话识别属性的组合必须与至少一个会话的识别属性匹配,请求才能成功;否则,交换机将以 CoA-NAK 消息进行响应。
CoA-Request 数据包还包括会话授权属性,如果请求被接受,这些属性将被修改。下面列出了支持的会话授权属性。CoA 消息可以包含其中任何或所有属性。如果任何属性未作为 CoA 请求消息的一部分包含在内,则 NAS 会假定该属性的值保持不变。
过滤器 ID
隧道专用组 ID
瞻博网络交换过滤器
瞻博网络-VoIP-VLAN
会话超时
CoA 请求端口退回
当使用 CoA 消息更改经过身份验证主机的 VLAN 时,打印机等终端设备没有检测 VLAN 更改的机制,因此它们不会在新 VLAN 中续订其 DHCP 地址的租约。从 Junos OS 17.3 版开始,端口反弹功能可用于在经过身份验证的端口上引起链路抖动,从而强制终端设备启动 DHCP 重新协商。
使用瞻博网络供应商特定属性 (VSA) 从 RADIUS 服务器发送用于退回端口的命令。如果在来自 RADIUS 服务器的 CoA 消息中收到以下 VSA 属性值对,则端口将被退回:
瞻博网络-AV-Pair = “Port-Bounce”
要启用端口反轨功能,必须使用 瞻博网络-AV-Pair VSA 更新RADIUS服务器上的Junos字典文件 (juniper.dct)。找到字典文件并将以下文本添加到文件中:
ATTRIBUTE Juniper-AV-Pair Juniper-VSA(52, string) r
有关添加 VSA 的详细信息,请参阅 FreeRADIUS 文档。
您可以通过在 [edit protocols dot1x authenticator interface interface-name] 层级配置ignore-port-bounce语句来禁用该功能。
错误原因代码
当断开连接或 CoA 操作不成功时,NAS 发送到服务器的响应消息中可以包含错误原因属性(RADIUS 属性 101),以提供有关问题原因的详细信息。如果检测到的错误未映射到受支持的错误原因属性值之一,则路由器将发送不带错误原因属性的消息。有关可包含在从 NAS 发送的响应消息中的错误原因代码的说明,请参阅 表 1 。
代码 |
value |
描述 |
|---|---|---|
201 |
已移除残留会话上下文 |
如果一个或多个用户会话不再处于活动状态,但已找到并成功删除了剩余会话上下文,则发送以响应 Disconnect-Request 消息。此代码仅在 Disconnect-ACK 消息中发送。 |
401 |
不支持的属性 |
请求包含不受支持的属性(例如,第三方属性)。 |
402 |
缺少属性 |
请求中缺少关键属性(例如,会话标识属性)。 |
403 |
NAS 识别不匹配 |
请求包含一个或多个 NAS 识别属性,这些属性与接收请求的 NAS 的身份不匹配。 |
404 |
请求无效 |
请求的其他某些方面无效,例如,如果一个或多个属性的格式不正确。 |
405 |
不受支持的服务 |
请求中包含的 Service-Type 属性包含无效或不受支持的值。 |
406 |
不支持的扩展 |
接收请求的实体(NAS 或 RADIUS 代理)不支持 RADIUS 发起的请求。 |
407 |
属性值无效 |
请求包含具有不受支持值的属性。 |
501 |
行政上禁止 |
NAS 配置为禁止接受指定会话的 Disconnect-Request 或 CoA-Request 消息。 |
503 |
未找到会话上下文 |
请求中标识的会话上下文在 NAS 上不存在。 |
504 |
会话上下文不可移除 |
由请求中的属性标识的订阅者由不受支持的组件拥有。此代码仅在 Disconnect-NAK 消息中发送。 |
506 |
资源不可用 |
由于缺少可用的 NAS 资源(如内存),无法接受请求。 |
507 |
请求已发起 |
CoA-Request 消息包括一个值为 Authorize Only 的 Service-Type 属性。 |
508 |
不支持多会话选择 |
请求中包含的会话识别属性与多个会话匹配,但 NAS 不支持应用于多个会话的请求。 |
使用 RADIUS 服务器属性过滤 802.1X 请求方
使用端口防火墙过滤器(第 2 层防火墙过滤器)配置 RADIUS 服务器的方法有两种:
-
在瞻博网络交换过滤器属性中包括一个或多个过滤器术语。瞻博网络交换过滤器属性是特定于供应商的属性 (VSA),列在 RADIUS 服务器上的瞻博网络词典中属性 ID 号 48 下。使用此 VSA 可为 802.1X 经过身份验证的用户配置简单过滤条件。交换机上无需进行任何配置;所有配置都在 RADIUS 服务器上。
-
在每台交换机上配置本地防火墙过滤器,并将该防火墙过滤器应用于通过 RADIUS 服务器进行身份验证的用户。将此方法用于更复杂的过滤器。必须在每台交换机上配置防火墙过滤器。
注意:如果在使用 802.1X 身份验证对用户进行身份验证后修改了防火墙过滤器身份验证,则必须终止并重新建立已建立的 802.1X 身份验证会话,防火墙过滤器配置更改才能生效。
本主题包含以下任务:
在 RADIUS 服务器上配置防火墙过滤器
从 Junos OS 演化版 22.4R1 版开始,您可以在单行中配置多个源端口和目标端口(或端口范围),而无需再次重复匹配条件。此功能可以缩短 VSA 长度,还有助于减小 RADIUS 响应数据包的大小。
交换过滤器允许调配以太币类型、IP、源标记、源端口和目标端口的值列表。
Juniper-Switching-Filter = match dst-port [ 80 25 443 ] src-port [5060 1025-2000] action allow
Juniper-Switching-Filter = match dst-port 500 source-tag [ 100, 200 ] action allow
Juniper-Switching-Filter = match src-port 9090 ip-proto [ 25 17] action allow
Juniper-Switching-Filter = match ether-type [ 3000-4000 8000 ] action allow
您可以使用 RADIUS 服务器上瞻博网络词典中的 瞻博网络交换过滤器 属性配置简单的瞻博网络交换过滤器属性。每当新用户通过身份验证成功时,这些过滤器就会发送到交换机。过滤器将创建并应用在通过该 RADIUS 服务器对用户进行身份验证的所有 EX 系列交换机上,无需您在每台交换机上进行任何配置。
此过程介绍如何使用 FreeRADIUS 软件配置瞻博网络交换过滤器 VSA。有关配置服务器的具体信息,请参阅服务器随附的 AAA 文档。
要配置瞻博网络交换过滤器属性,请使用 RADIUS 服务器的 CLI 输入一个或多个过滤器术语。每个过滤器术语都由具有相应操作的匹配条件组成。使用以下语法输入用引号 (“ ”) 括起来的筛选器术语:
Juniper-Switching-Filter = “match <destination-mac mac-address> <source-vlan vlan-name> <source-dot1q-tag tag> <destination-ip ip-address> <ip-protocol protocol-id> <source-port port> <destination-port port> action (allow | deny) <loss-priority (low | medium | high)>”
一个过滤器术语中可以包含多个匹配条件。在过滤器术语中指定多个条件时,必须满足所有条件,数据包才能与过滤器术语匹配。例如,以下过滤器术语要求数据包 同时匹配目标 IP 地址和目标 MAC 地址,以满足术语条件:
Juniper-Switching-Filter = “match destination-ip 10.10.10.8 destination-mac 00:00:00:01:02:03 action allow”
多个过滤器术语应用逗号分隔,例如:
Juniper-Switching-Filter = “match destination-mac 00:00:00:01:02:03 action allow, match destination-port 80 destination-mac 00:aa:bb:cc:dd:ee action allow”
有关匹配条件和操作的定义,请参阅 瞻博网络交换过滤器 VSA 匹配条件和操作 。
在 EX9200 交换机以及以 EX9200 作为聚合设备的 Junos Fusion Enterprise 中,动态防火墙过滤器将严格应用于所有 IP 数据包。如果过滤器配置为仅允许特定的目标 IP 地址,则将根据过滤器规则丢弃以其他 IP 地址作为目标 IP 的数据包。这包括任何 IP 协议数据包,例如 DHCP、IGMP 和 ARP 数据包。
要在 RADIUS 服务器上配置匹配条件:
从 RADIUS 服务器应用本地配置的防火墙过滤器
您可以从 RADIUS 服务器集中将端口防火墙过滤器(第 2 层防火墙过滤器)应用于用户策略。然后,RADIUS 服务器可以指定要应用于请求身份验证的每个用户的防火墙过滤器,从而减少在多个交换机上配置相同防火墙过滤器的需要。如果防火墙过滤器包含大量条件,或者您希望对不同交换机上的同一过滤器使用不同的条件,请使用此方法。必须在每台交换机上配置防火墙过滤器。
有关防火墙过滤器的详细信息,请参阅 EX 系列交换机的防火墙过滤器概述。
要从 RADIUS 服务器集中应用端口防火墙过滤器:
如果还为接口在本地配置了端口防火墙过滤器,则使用 VSA 配置的防火墙过滤器与本地配置的端口防火墙过滤器冲突时优先。如果没有冲突,则将其合并。
示例:将适用于 802.1X 的 RADIUS 服务器连接到 EX 系列交换机
802.1X 是基于端口的网络访问控制 (PNAC) 的 IEEE 标准。您可使用 802.1X 来控制网络访问。只有提供已针对用户数据库验证的凭据的用户和设备才允许访问网络。您可以将 RADIUS 服务器用作 802.1X 身份验证以及 MAC RADIUS 身份验证的用户数据库。
此示例介绍如何将 RADIUS 服务器连接到 EX 系列交换机,并将其配置为 802.1X:
要求
此示例使用以下软件和硬件组件:
适用于 EX 系列交换机的 Junos OS 9.0 或更高版本
一台充当验证器端口访问实体 (PAE) 的 EX 系列交换机。验证器 PAE 上的端口形成一个控制门,用于阻止进出请求方的所有流量,直至请求方通过身份验证。
一台支持 802.1X 的 RADIUS 身份验证服务器。身份验证服务器充当后端数据库,包含有权连接到网络的主机(请求方)的证书信息。
将服务器连接到交换机之前,请确保您具备以下条件:
在交换机上执行了基本桥接和 VLAN 配置。请参阅介绍如何为交换机设置基本桥接和 VLAN 的文档。如果您使用的交换机支持增强型第 2 层软件 (ELS) 配置样式,请参阅 示例:为支持 ELS 的 EX 系列交换机设置基本桥接和 VLAN 。有关所有其他交换机,请参阅 示例:为 EX 系列交换机设置基本桥接和 VLAN。
注意:有关 ELS 的更多信息,请参阅 使用增强型第 2 层软件 CLI。
在 RADIUS 身份验证服务器上配置的用户。
概述和拓扑
EX 系列交换机充当验证器 PAE。它会拦截所有流量并充当控制网,直到服务器对请求方(客户端)进行身份验证。所有其他用户和设备都将被拒绝访问。
图 1 显示了连接到 表 2 中列出的设备的一台 EX4200 交换机。
拓扑
| 属性 | 设置 |
|---|---|
交换机硬件 |
EX4200 接入交换机,24 个千兆以太网端口:8 个 PoE 端口(ge-0/0/0 到 ge-0/0/7)和 16 个非 PoE 端口(ge-0/0/8 到 ge-0/0/23) |
VLAN 名称 |
默认 |
一台 RADIUS 服务器 |
地址为 10.0.0.100 的后端数据库连接到交换机的端口 ge-0/0/10 |
在此示例中,将 RADIUS 服务器连接到 EX4200 交换机上的访问端口 ge-0/0/10。交换机充当验证方,并将凭据从请求方转发到 RADIUS 服务器上的用户数据库。您必须通过指定服务器地址和配置密钥密码来配置 EX4200 与 RADIUS 服务器之间的连接。此信息在交换机上的访问配置文件中进行配置。
有关身份验证、授权和计费 (AAA) 服务的更多信息,请参阅 Junos OS 系统基础知识配置指南。
配置
过程
CLI 快速配置
要快速将 RADIUS 服务器连接到交换机,请复制以下命令并将其粘贴到交换机终端窗口中:
[edit] set access radius-server 10.0.0.100 secret juniper set access radius-server 10.0.0.200 secret juniper set access profile profile1 authentication-order radius set access profile profile1 radius authentication-server [10.0.0.100 10.0.0.200]
分步程序
要将 RADIUS 服务器连接到交换机,请执行以下操作:
定义服务器的地址,并配置密钥密码。交换机上的密钥密码必须与服务器上的密钥密码匹配:
[edit] user@switch# set access radius-server 10.0.0.100 secret juniper user@switch# set access radius-server 10.0.0.200 secret juniper
配置身份验证顺序,使 RADIUS 成为第一种身份验证方法:
[edit] user@switch# set access profile profile1 authentication-order radius
配置要按顺序尝试的服务器 IP 地址列表,以对请求方进行身份验证:
[edit] user@switch# set access profile profile1 radius authentication-server [10.0.0.100 10.0.0.200]
结果
显示配置结果:
user@switch> show configuration access
radius-server {
10.0.0.100
port 1812;
secret "$ABC123"; ## SECRET-DATA
}
}
profile profile1{
authentication-order radius;
radius {
authentication-server 10.0.0.100 10.0.0.200;
}
}
}
验证
要确认配置工作正常,请执行以下任务:
验证交换机和 RADIUS 服务器是否已正确连接
目的
验证 RADIUS 服务器是否连接到指定端口上的交换机。
行动
对 RADIUS 服务器执行 Ping 操作,以验证交换机与服务器之间的连接:
user@switch> ping 10.0.0.100
PING 10.0.0.100 (10.0.0.100): 56 data bytes
64 bytes from 10.93.15.218: icmp_seq=0 ttl=64 time=9.734 ms
64 bytes from 10.93.15.218: icmp_seq=1 ttl=64 time=0.228 ms
意义
ICMP 回显请求数据包从 10.0.0.100 从交换机发送到目标服务器,以测试服务器是否可通过 IP 网络访问。服务器将返回 ICMP 回显响应,验证交换机和服务器是否已连接。
了解基于 RADIUS 属性的动态过滤器
您可以使用 RADIUS 服务器属性在 RADIUS 身份验证服务器上实施端口防火墙过滤器。这些过滤器可以动态应用于通过该服务器请求身份验证的请求方。RADIUS服务器属性是封装在连接到交换机的请求方成功通过身份验证后,从 身份验证 服务器发送到交换机的访问-接受消息中的明文字段。交换机作为验证方,使用 RADIUS 属性中的信息将相关过滤器应用于请求方。动态过滤器可以应用于同一交换机上的多个端口,或应用于使用相同身份验证服务器的多个交换机,从而为网络提供集中访问控制。
您可以使用 瞻博网络-Switching-Filter 属性直接在 RADIUS 服务器上定义防火墙过滤器,该属性是特定于 瞻博网络 的RADIUS属性,也称为供应商特定属性 (VSA)。VSA 在 RFC 2138, 远程认证拨号的用户服务 (RADIUS) 中进行了介绍。瞻博网络-Switching-Filter VSA 列在 RADIUS 服务器上瞻博网络字典的属性 ID 号 48 下,供应商 ID 设置为瞻博网络 ID 号 2636。使用此属性,您可以在身份验证服务器上定义过滤器,这些过滤器将应用于通过该服务器对请求方进行身份验证的所有交换机。无需在多个交换机上配置相同的过滤器。
或者,您可以使用 Filter-ID 属性(即 RADIUS 属性 ID 编号 11)将端口防火墙过滤器应用于同一交换机上的多个端口。要使用 Filter-ID 属性,必须先在交换机上配置过滤器,然后将过滤器名称作为 Filter-ID 属性的值添加到 RADIUS 服务器上的用户策略中。RADIUS 服务器对其中一个策略中定义的请求方进行身份验证时,过滤器将应用于已为请求方进行身份验证的交换机端口。如果防火墙过滤器具有复杂条件,或者您希望对不同交换机上的同一过滤器使用不同的条件,请使用此方法。过滤器 ID 属性中指定的过滤器必须在交换机的 [edit firewall family ethernet-switching filter] 层次结构级别本地配置。
仅 802.1X 单请求方配置和多请求方配置支持 VSA。
也可以看看
了解使用 RADIUS 属性的动态 VLAN 分配
RADIUS 服务器可以将 VLAN 动态分配给通过该服务器请求 802.1X 身份验证的请求方。您可以使用 RADIUS 服务器属性在 RADIUS 服务器上配置 VLAN,当连接到交换机的请求方请求身份验证时,这些属性是封装在从身份验证服务器发送到交换机的消息中的明文身份验证字段。交换机作为验证方,使用 RADIUS 属性中的信息将 VLAN 分配给请求方。根据身份验证的结果,在一个 VLAN 中开始身份验证的请求方可能会被分配给另一个 VLAN。
成功身份验证要求在充当 802.1X 验证器的交换机上配置 VLAN ID 或 VLAN 名称,并且它与 RADIUS 服务器在身份验证期间发送的 VLAN ID 或 VLAN 名称匹配。如果两者都不存在,则不会对终端设备进行身份验证。如果建立了访客 VLAN,则未经过身份验证的终端设备会自动移动到访客 VLAN。
RFC 2868《 通道协议支持的 RADIUS 属性》中所述的用于动态 VLAN 分配的 RADIUS 服务器属性。
隧道类型 — 定义为 RADIUS 属性类型 64。该值应设置为
VLAN。隧道中型 — 定义为 RADIUS 属性类型 65。该值应设置为
IEEE-802。Tunnel-Private-Group-ID — 定义为 RADIUS 属性类型 81。该值应设置为 VLAN ID 或 VLAN 名称。
有关在 RADIUS 服务器上配置动态 VLAN 的更多信息,请参阅 RADIUS 服务器的文档。
也可以看看
在 EX 系列交换机上配置 VLAN 组
借助 VLAN 组功能,您可以在 VLAN 之间分配客户端。启用此功能后,您可以将单个无线 LAN (WLAN) 与单个 VLAN 或多个 VLAN 对齐。配置 VLAN 组时,客户端会被分配到其中一个配置的 VLAN。此功能支持在 VLAN 组中的 VLAN 之间对用户进行动态负载平衡。此功能遵循轮询算法,将用户分配到 VLAN 组中的下一个可用 VLAN。
对于动态 VLAN 负载平衡,您可以在属性(在 RFC 2868 中定义为 RADIUS 属性类型 81)中 Tunnel-Private-Group-ID 添加 VLAN 组名称,而不是常规 VLAN ID 或 VLAN 名称。随后,当请求方通过 RADIUS 服务器请求 802.1X 身份验证时,您可以在 RADIUS 响应中发送此信息。当交换机收到 VLAN 组名时,交换机会使用轮询算法将端点分配给该组中的一个 VLAN。VLAN 组允许从预配置列表中分配 VLAN,从而减少管理员对网络负载平衡的需求。
配置 VLAN 组时,请注意:
-
最多可配置 4096 个 VLAN 组。
-
在将 VLAN 分配给客户端之前,您必须先创建一个 VLAN。在分配过程中,交换机上不存在的任何 VLAN 都会被忽略。
-
VLAN 名称不能与 VLAN 组名称相同。
-
VoIP VLAN 不应是 VLAN 组的一部分。VoIP VLAN(如果存在)将被忽略。
-
删除 VLAN 后,与该 VLAN 关联的所有 802.1X 身份验证会话都将终止。
-
您可以删除 VLAN 组,而不会对已分配给该 VLAN 组中 VLAN 的客户端造成任何中断。
-
您可以从 VLAN 组中移除 VLAN,而不会对已分配给该 VLAN 的客户端造成任何中断。但是,在出现以下情况时,客户端可能会面临中断:
-
客户端会话将过期。
-
使用授权变更 (CoA) 请求执行重新身份验证或角色变更。
-
要在 EX 系列交换机上配置 VLAN 组:
也可以看看
了解交换机上 802.1X 的访客 VLAN
可以在使用 802.1X 身份验证的交换机上配置访客 VLAN,为企业访客提供有限的访问(通常仅限于互联网)。在以下情况下,访客 VLAN 可用作回退:
请求方未启用 802.1X,并且不会响应 EAP 消息。
请求方所连接的交换机接口上尚未配置 MAC RADIUS 身份验证。
尚未在请求方连接的交换机接口上配置强制门户。
访客 VLAN 不用于发送错误凭据的请求方。这些请求方会被定向到服务器拒绝的 VLAN。
对于未启用 802.1X 的终端设备,访客 VLAN 可能允许对服务器进行有限访问,未启用 802.1X 的终端设备可从中下载请求方软件并再次尝试身份验证。
也可以看看
示例:在 EX 系列交换机上为 EAP-TTLS 身份验证和 Odyssey Access Client 配置回退选项
对于 802.1X 用户身份验证,EX 系列交换机支持使用可扩展身份验证协议隧道 TLS (EAP-TTLS) 对Odyssey Access Client (OAC) 请求方进行身份验证的RADIUS身份验证服务器。OAC 网络软件在端点计算机(台式机、笔记本电脑或记事本计算机以及支持的无线设备)上运行,并提供对有线和无线网络的安全访问。
此示例介绍如何在交换机上配置支持 802.1X 的接口,以便为输入错误登录凭据的 OAC 用户提供回退支持:
要求
此示例使用以下软件和硬件组件:
此示例也适用于 QFX5100 交换机。
适用于 EX 系列交换机的 Junos OS 11.2 或更高版本
一台充当验证器端口访问实体 (PAE) 的 EX 系列交换机。验证器 PAE 上的端口形成一个控制门,用于阻止进出请求方的所有流量,直至请求方通过身份验证。
一台支持 802.1X 的 RADIUS 身份验证服务器。身份验证服务器充当后端数据库,包含有权连接到网络的主机(请求方)的证书信息。
一个 OAC 终端设备充当请求方。
开始配置回退选项之前,请确保您已:
在交换机和 RADIUS 服务器之间建立连接。请参阅 示例:将适用于 802.1X 的 RADIUS 服务器连接到 EX 系列交换机。
在服务器上配置了 EAP-TTLS。请参阅 RADIUS 服务器文档。
在 RADIUS 服务器上配置的用户。请参阅 RADIUS 服务器文档。
概述和拓扑
OAC 是在端点计算机(台式机、笔记本电脑或记事本)和受支持的无线设备上运行的网络软件。OAC 对安全无线 LAN 访问所需的 EAP 提供全面支持。
在此拓扑中,OAC 与支持 802.1X 的交换机和 RADIUS 服务器一起部署。交换机充当网络安全架构中的一个实施点。此拓扑结构有助于:
确保只有授权用户才能连接。
维护登录凭据的隐私。
通过无线链路维护数据隐私。
此示例包括在交换机上配置服务器拒绝 VLAN,该 VLAN 可用于防止输入错误登录凭据的用户意外锁定。可以为这些用户提供有限的 LAN 访问权限。
但是,由于 OAC 请求方和 RADIUS 服务器都在使用 EAP-TTLS,因此此回退配置会变得复杂。EAP-TTLS 在服务器和终端设备之间创建一条安全的加密隧道,以完成身份验证过程。当用户输入不正确的登录凭据时,RADIUS 服务器将通过此隧道直接向客户端发送 EAP 故障消息。EAP 故障消息会导致客户端重新启动身份验证过程,以便交换机的 802.1X 身份验证过程拆除使用服务器拒绝 VLAN 与交换机建立的会话。您可以通过配置以下内容来启用补救连接以继续:
eapol-block — 在配置为属于服务器拒绝 VLAN 的 802.1X 接口上启用 EAPoL 阻止计时器。阻止计时器会导致身份验证端口访问实体忽略来自客户端的 EAP 启动消息,并尝试重新启动身份验证过程。
注意:只有在 802.1X 接口上配置的允许重试次数(使用 重试 选项)用尽后,才会触发 EAPoL 块计时器。您可以配置 重试 来指定交换机在初始故障后尝试对端口进行身份验证的次数。默认设置为重试 3 次。
block-interval—配置您希望 EAPoL 块计时器继续忽略 EAP 启动消息的时间长度。如果未配置块间隔,则 EAPoL 块计时器默认为 120 秒。
当 802.1X 接口忽略来自客户端的 EAP 启动消息时,交换机将允许通过服务器拒绝 VLAN 建立的现有补救会话保持打开状态。
这些配置选项适用于单、单安全和多请求方身份验证模式。在此示例中,802.1X 接口配置为单请求方模式。
图 3 显示了将 OAC 终端设备连接到 RADIUS 服务器的 EX 系列交换机,并指示了用于连接网络实体的协议。
此数字也适用于 QFX5100 交换机。
拓扑结构
表 4 描述了此 OAC 部署中的组件:
| 属性 | 设置 |
|---|---|
交换机硬件 |
EX 系列交换机 |
VLAN |
默认 server-reject-vlan:VLAN 名称为补救,VLAN ID 为 700 |
802.1X 接口 |
ge-0/0/8 |
OAC 请求方 |
EAP-TTLS |
一台 RADIUS 身份验证服务器 |
EAP-TTLS |
配置
过程
CLI 快速配置
要快速配置 EAP-TTLS 和 OAC 请求方的回退选项,请复制以下命令并将其粘贴到交换机终端窗口中:
[edit] set vlans remedial vlan-id 700 set protocols dot1x authenticator interface ge-0/0/8 retries 4 set protocols dot1x authenticator interface ge-0/0/8 server-reject-vlan remedial set protocols dot1x authenticator interface ge-0/0/8 server-reject-vlan eapol-block set protocols dot1x authenticator interface ge-0/0/8 server-reject-vlan block-interval 130
分步程序
要为 EAP-TTLS 和 OAC 请求方配置回退选项:
在此示例中,交换机只有一个服务器拒绝 VLAN。因此,该配置会在 server-reject-VLAN 之后直接指定 eapol-block 和 block-interval。但是,如果在交换机上配置了多个 VLAN,则必须在 server-reject-VLAN 之后直接添加 VLAN 名称或 VLAN ID,以指示正在修改哪个 VLAN。
配置一个将用作服务器拒绝 VLAN 的 VLAN,以便为输入错误登录凭据的用户提供有限的 LAN 访问:
[edit] user@switch# set vlans remedial vlan-id 700
配置在将错误登录定向到服务器拒绝 VLAN 之前,系统会提示客户端输入用户名和密码的次数:
[edit protocols dot1x authenticator interface ge-0/0/8] user@switch# set retries 4
将 802.1X 验证器接口配置为使用服务器拒绝 VLAN 作为错误登录的回退:
[edit protocols dot1x authenticator interface ge-0/0/8] user@switch# set server-reject-vlan remedial
在配置为属于服务器拒绝 VLAN 的 802.1X 接口上启用 EAPoL 阻止计时器。
[edit protocols dot1x authenticator interface ge-0/0/8] user@switch# set server-reject-vlan eapol-block
配置 EAPoL 块保持有效的时间长度:
[edit protocols dot1x authenticator interface ge-0/0/8] user@switch# set server-reject-vlan block-interval 130
结果
检查配置结果:
user@switch> show configuration
protocols {
dot1x {
authenticator {
interface {
ge-0/0/8.0 {
supplicant single;
retries 4;
server-reject-vlan remedial block-interval 130 eapol-block;
}
验证
要确认配置和回退选项工作正常,请执行以下任务:
验证 802.1X 接口的配置
目的
验证是否已为 802.1X 接口配置了所需的选项。
行动
user@switch> show dot1x interface ge-0/0/8.0 detail
ge-0/0/8.0
Role: Authenticator
Administrative state: Auto
Supplicant mode: Single
Number of retries: 4
Quiet period: 60 seconds
Transmit period: 30 seconds
Mac Radius: Disabled
Mac Radius Restrict: Disabled
Reauthentication: Enabled
Configured Reauthentication interval: 120 seconds
Supplicant timeout: 30 seconds
Server timeout: 30 seconds
Maximum EAPoL requests: 2
Guest VLAN member: guest
Number of connected supplicants: 1
Supplicant: tem, 2A:92:E6:F2:00:00
Operational state: Authenticated
Backend Authentication state: Idle
Authentication method: Radius
Authenticated VLAN: remedial
Session Reauth interval: 120 seconds
Reauthentication due in 68 seconds
意义
show dot1x ge-0/0/8 detail命令输出显示 ge-0/0/8 接口处于已验证状态,并且正在使用补救 VLAN。
监控 802.1X 身份验证
目的
本主题仅适用于 J-Web 应用程序包。
使用监控功能显示已验证用户和未通过身份验证的用户的详细信息。
行动
要在 J-Web 界面中显示身份验证详细信息,请选择监控>安全性> 802.1X。
要在 CLI 中显示身份验证详细信息,请输入以下命令:
show dot1x interface detail | display xmlshow dot1x interface detail <interface> | display xmlshow dot1x auth-failed-users
意义
显示的详细信息包括:
经过身份验证的用户列表。
连接的用户数量。
身份验证失败的用户列表。
您还可以指定必须显示其详细信息的接口。
也可以看看
验证 802.1X 身份验证
目的
验证接口配置为 802.1X 身份验证的交换机上的接口上是否正在对请求方进行身份验证,并显示正在使用的身份验证方法。
行动
显示有关为 802.1X 配置的接口的详细信息(此处接口为 ge-0/0/16):
user@switch> show dot1x interface ge-0/0/16.0 detail
ge-0/0/16.0
Role: Authenticator
Administrative state: Auto
Supplicant mode: Single
Number of retries: 3
Quiet period: 60 seconds
Transmit period: 30 seconds
Mac Radius: Enabled
Mac Radius Strict: Disabled
Reauthentication: Enabled Reauthentication interval: 40 seconds
Supplicant timeout: 30 seconds
Server timeout: 30 seconds
Maximum EAPOL requests: 1
Guest VLAN member: <not configured>
Number of connected supplicants: 1
Supplicant: user5, 00:30:48:8C:66:BD
Operational state: Authenticated
Authentication method: Radius
Authenticated VLAN: v200
Reauthentication due in 17 seconds
意义
命令 show dot1x interface detail 的示例输出显示,为 Number of connected supplicants 1。经过身份验证且现在连接到 LAN 的请求方在 RADIUS 服务器上称为 user5 ,其 MAC 地址为 00:30:48:8C:66:BD。请求方通过称为 RADIUS 身份验证的 802.1X 身份验证方法进行身份验证,如输出中所示 Radius 。使用 RADIUS 身份验证时,将在 RADIUS 服务器上配置请求方,RADIUS 服务器将此信息传输给交换机,交换机将在请求方所连接的接口上打开 LAN 访问。示例输出还显示请求方已连接到 VLAN v200。
除 RADIUS 身份验证外,EX 系列交换机上还支持的其他 802.1X 身份验证方法包括:
访客 VLAN — 无响应的主机被授予访客 VLAN 访问权限。
MAC Radius — 根据其 MAC 地址对无响应主机进行身份验证。MAC 地址在 RADIUS 服务器上配置为允许,RADIUS 服务器通知交换机该 MAC 地址是允许的地址,交换机授予对其所连接接口上的无响应主机的 LAN 访问权限。
服务器故障拒绝 — 如果 RADIUS 服务器超时,所有请求方都将被拒绝访问 LAN,从而阻止来自请求方的流量通过接口。这是默认设置。
服务器故障允许 — 当 RADIUS 服务器不可用时,仍允许请求方访问 LAN,就好像请求方已通过 RADIUS 服务器的成功身份验证一样。
server-fail use-cache — 如果 RADIUS 服务器在重新身份验证期间超时,则向先前经过身份验证的请求方授予 LAN 访问权限,但拒绝新的请求方进行 LAN 访问。
服务器故障 VLAN — 如果 RADIUS 服务器无法重新对请求方进行身份验证,则将请求方配置为移动到指定的 VLAN。(交换机上必须已存在 VLAN。)
也可以看看
排除 EX 系列交换机上终端设备身份验证
问题
描述
运行 clear dot1x interface 命令以清除所有学习到的 MAC 地址后,使用静态 MAC 地址配置的终端设备将断开与交换机的连接。
清除 MAC 地址之前:
user@switch# run show ethernet-switching table Ethernet-switching table: 3 entries, 1 learned, 0 persistent entries VLAN MAC address Type Age Interfaces vlan100 * Flood - All-members default * Flood - All-members default 00:a0:d4:00:03:00 Learn 0 ge-3/0/16.0 user@switch> show dot1x authentication-bypassed-users MAC address Interface VLAN 00:a0:d4:00:03:00 ge-3/0/16.0 configured/default
要清除 MAC 地址:
user@switch> clear dot1x interface
清除 MAC 地址后:
user@switch> show ethernet-switching table Ethernet-switching table: 2 entries, 0 learned, 0 persistent entries VLAN MAC address Type Age Interfaces vlan100 * Flood - All-members default * Flood - All-members user@switch> show dot1x authentication-bypassed-users
请注意,身份验证旁路列表中没有终端设备。
原因
静态 MAC 地址的处理方式与接口上其他已学习的 MAC 地址相同。运行 clear dot1x interface 命令时,它会从接口中清除所有学习的 MAC 地址,包括静态 MAC 旁路列表(也称为排除列表)。
解决方案
如果对已为身份验证旁路配置了静态 MAC 地址的接口运行 clear dot1x interfaces 命令,请将静态 MAC 地址重新添加到静态 MAC 旁路列表中。
也可以看看
802.1X 支持的 RADIUS 属性和瞻博网络供应商特定属性 (VSA)
验证方(网络访问服务器)、请求方(客户端)和身份验证服务器都涉及 802.1X 身份验证 (RADIUS-server)。RADIUS 协议用作 NAS 和 Radius 服务器之间通信的请求/响应机制。请求和响应中都有零个或多个类型长度值 (TLV/属性)。
使用 802.1X 支持的一组标准的已定义功能和供应商特定属性,可以限制每个申请人的访问权限。(客户)。为了支持更长的值,某些属性可以多次使用,因为 Radius Class 属性的最大大小为 253 字节。
使用 RADIUS 标准属性和 VSA 的好处
要与外部 RADIUS 服务器连接以进行订阅者身份验证、授权和计费,需要 RADIUS 标准属性。
VSA 支持实施订阅者管理和服务支持所必需的许多有价值的功能,从而将 RADIUS 服务器的功能扩展到公共标准属性之外。
802.1X 支持的 RADIUS 属性和 VSA 列表
| 类型 | 属性 | 定义 |
|---|---|---|
| 1 |
用户名 | RFC 2865 |
| 6 |
服务类型 | RFC 2865 |
| 11 |
过滤器 ID | RFC 2865 |
| 24 |
省/州 | RFC 2865 |
| 25 |
类 | RFC 2865 |
| 26 |
特定于供应商 | RFC 2865 |
| 27 |
会话超时 | RFC 2865 |
| 56 |
出口-VLANID | RFC 4675 |
| 57 |
出口-VLAN -名称 | RFC 4675 |
| 61 |
NAS 端口类型 | RFC 2865 |
| 64 |
隧道类型 | RFC 2868 |
| 65 |
隧道中型 | RFC 2868 |
| 81 |
隧道专用组 ID | RFC 2868 |
| 85 |
acct-interim-间隔 | RFC 2869 |
| 102 |
EAP 密钥名称 | RFC 4072 |
| 供应商 ID | 数量 | 瞻博网络 VSA | Microsoft VSA | 思科 VSA |
|---|---|---|---|---|
| 2636 | 48 | 瞻博网络交换过滤器 | ||
| 49 | 瞻博网络-VoIP-VLAN | |||
| 50 | 瞻博网络-CWA-重定向-URL | |||
| 52 | 瞻博网络-AV-Pair = 端口并轨 |
|||
| 瞻博网络-AV-对 = 瞻博网络 IP-Mac-会话-绑定 |
||||
| 瞻博网络-AV-Pair = 无 MAC-Binding-Reauth |
||||
| 瞻博网络-AV-对 = 请求方模式-单 |
||||
| 瞻博网络-AV-Pair = 请求方模式-单安全 |
||||
| 瞻博网络-AV-Pair = 保留-MAC-老化-会话 |
||||
| 53 | 瞻博网络事件类型 |
|||
| 54 | 瞻博网络子事件类型 | |||
| 55 | 瞻博网络通用消息 | |||
| 311 | 16 | MS-MPPE-发送密钥 | ||
| 17 | MS-MPPE-接收密钥 | |||
| 9 | 1 | Cisco-AVPair = “subscriber:command=bounce-host-port” |
||
| Cisco-AVPair = “subscriber:command=reauthenticate” |
||||
| Cisco-AVPair = “subscriber:reauthenticate-type=rerun” |
||||
| “订阅者:重新验证类型=最后” | ||||
| “url-重定向” |
802.1X 支持的 RADIUS 属性
用户名:
必须验证的用户的名称由此属性指示。如果可用,则必须使用 Access-Request 数据包来发送此属性。此属性的 RADIUS 类型为 1。
过滤器 ID:
在 RADIUS 服务器上,用户策略可能受防火墙过滤器的约束。然后,可以使用 RADIUS 服务器指定要应用于提交身份验证请求的每个用户的防火墙过滤器。每台交换机都需要配置防火墙过滤器。
您必须在本地交换机上设置防火墙过滤器,以便从 RADIUS 服务器集中应用过滤器。[root@freeradius]# cd /usr/local/pool/raddb vi users
为每个相关用户添加筛选器。
Filter-Id = Filter1
州:
在设备和 RADIUS 服务器之间,可以使用 String 属性保留状态信息。此属性的 RADIUS 类型为 24。
出口 VLANID:
此端口允许的 IEEE 802 出口 VLANID 由 Egress-VLANID 属性表示,该属性还指定除了 VLANID 之外,是否允许 VLANID 用于已标记或未标记的帧。Egress-VLANID 属性在 RFC 4675 中定义。
Access-Request、Access-Accept 或 CoA-Request 数据包中的 Egress-VLANID 属性可能包含多个值。访问-质询、访问-拒绝、断开-请求、断开-确认、断开-NAK、CoA-ACK 或 CoA-NAK 不得包含此特征。每个属性都会将提供的 VLAN 添加到端口的允许出口 VLAN 列表中。
如果 VLAN 上的帧已标记 (0x31) 或未标记 (0x32),则长度为一个八位位组的标记指示字段会指出该配置。VLANID 长度为 12 位,包含 VLAN VID 值。
对于 Egress-VLAN-ID:
0x31 = tagged 0x32 = untagged
例如,以下 RADIUS 配置文件包括一个带标记的 VLAN 和一个不带标记的 VLAN:
001094001177 Cleartext-Password := "001094001177" Tunnel-Type = VLAN, Tunnel-Medium-Type = IEEE-802, Egress-VLANID += 0x3100033, Egress-VLANID += 0x3200034,
出口 VLAN 名称:
Egress-VLAN-Name 表示此端口允许的 VLAN。与 Egress-VLANID 属性类似,但 VLAN 名称不是使用已定义或已知的 VLAN-ID,而是用于识别系统中的 VLAN。RFC 4675 包含 Egress-VLAN-Name 属性的定义。
VLAN 名称是由两部分组成的 Egress-VLAN-Name 属性的第二部分,该属性还指定此端口的 VLAN 上的帧应以带标记格式还是不带标记格式显示。
对于出口 VLAN 名称:1 = 已标记,2 = 未标记
以下示例显示 VLAN 1vlan-2 已标记,而 VLAN 2vlan-3 未标记。001094001144 Cleartext-Password := "001094001144" Tunnel-Type = VLAN, Tunnel-Medium-Type = IEEE-802, Egress-VLAN-Name += 1vlan-2, Egress-VLAN-Name += 2vlan-3,
隧道类型:
此属性指定当前正在使用的隧道协议或将使用的隧道协议(如果是隧道启动方)(如果是隧道终止方)。RFC 2868 指定了 Tunnel-Type 属性。此属性的 RADIUS 类型为 64
tunnel-private-group-id:
会话的 VLAN ID 或名称由 Tunnel-Medium-Type 属性显示。设备从 RADIUS 获取为 Tunnel-Private-Group-ID 属性提供的值后,验证收到的字符串是 VLAN 名称还是 ID,并检查设备是否设置了 VLAN。
如果已配置 VLAN,则会将客户端端口添加到该 VLAN。否则,由于 VLAN 验证失败,将不允许客户端,并将保持为保留状态。
根据 RFC 2868,此属性的 RADIUS 类型为 81。
[root@freeradius]# cat /usr/local/etc/raddb/users supplicant1 Auth-Type := EAP, User-Password == "supplicant1" Tunnel-Type = VLAN, Tunnel-Medium-Type = IEEE-802, Tunnel-Private-Group-Id = "1005",
acct-interim-interval:
Acct-Interim-Interval 属性的值表示特定会话的临时更新的每个传输之间的时间间隔(以秒为单位)。自上次核算更新消息以来经过的秒数是此属性的值。
管理员也可以在 RADIUS 客户端上本地设置最小值,但是此值始终优先于访问接受数据包中检测到的任何 Acct-Interim-Interval 值。此属性的 RADIUS 类型为 85。
瞻博网络 VSA
瞻博网络交换过滤器:
您可以通过 RADIUS 服务器上瞻博网络字典中的瞻博网络交换过滤器属性RADIUS 指定简单的过滤器条件。之后,每当新用户成功获得授权时,这些过滤器就会传送到交换机。
使用 RADIUS 服务器进行用户身份验证的交换机会自动构造和应用过滤器,无需任何特定于交换机的配置。在 RADIUS 服务器中输入一个或多个匹配条件、操作和用户关联,以配置瞻博网络交换过滤器属性。
对于较长的交换过滤器,请使用瞻博网络交换过滤器属性的多个实例,最多限制为 20 个匹配条件,最大总大小为 4000 个字符。任何 radius 属性的最大长度为 253 个字符,因此“瞻博网络交换过滤器”属性的每一行也应小于 253 个字符。
spirent123 Auth-Type := EAP, User-Password := "spirent123" Juniper-Switching-Filter = "match src-tag dst-port [ 80 25 443 ] src-port [5060 1025-2000] action allow ", Juniper-Switching-Filter += "match src-port 500 dst-port 600 src-tag [ 100, 200 ] action allow ", Juniper-Switching-Filter += "match ip-proto src-port 9090 ip-proto [ 25 17] action allow ", Juniper-Switching-Filter += "match src-port 100-120 200-220 300-320 src-tag ip-proto 26 18 action allow ", Juniper-Switching-Filter += "match ether-type [ 3000-4000 8000 ] ip-proto 240 action allow "
支持以下过滤器匹配条件:
· destination-mac / dst-mac · destination-port / dst-port · destination-ip / dst · ip-protocol / ip-proto · source-port / src-port · source-dot1q-tag / src-tag · ether-type
- Allow · Deny · GBP · Trap to CPU · Loss-Priority
i) 验证瞻博网络字典是否已加载到您的 RADIUS 服务器上,并包含过滤属性 瞻博网络-Switching-Filter,属性 ID 48:
[root@freeradius]# cat /usr/local/share/freeradius/dictionary.juniper # dictionary.juniper # $ # VENDOR Juniper 2636 BEGIN-VENDOR Juniper ATTRIBUTE Juniper-Local-User-Name 1 string ATTRIBUTE Juniper-Allow-Commands 2 string ATTRIBUTE Juniper-Deny-Commands 3 string ATTRIBUTE Juniper-Allow-Configuration 4 string ATTRIBUTE Juniper-Deny-Configuration 5 string ATTRIBUTE Juniper-Switching-Filter 48 string ATTRIBUTE Juniper-VoIP-Vlan 49 string ATTRIBUTE Juniper-CWA-Redirect 50 string ATTRIBUTE Juniper-AV-Pair 52 string END-VENDOR Juniper
ii) 输入匹配条件和操作。
[root@freeradius]# cd /usr/local/etc/raddb vi users
对于每个相关用户,添加瞻博网络交换过滤器属性。要基于目标 MAC 拒绝或允许访问,请使用
Juniper-Switching-Filter = "Match Destination mac 00:00:00:01:02:03 Action allow",
或
Juniper-Switching-Filter = "Match Destination-mac 00:00:00:01:02:03 Action deny",
要根据目标 IP 地址拒绝或允许访问:
Juniper-Switching-Filter = "match destination-ip 192.168.1.0/31 action deny"
或
Juniper-Switching-Filter = "match destination-ip 192.168.1.0/31 action allow"
要发送具有不同匹配项和操作的多个过滤器:
spirent123 Auth-Type := EAP, User-Password := "spirent123" Juniper-Switching-Filter += "Match Ip-protocol 1 Destination-port 53 Action allow,", Juniper-Switching-Filter += "Match ip-proto [ 17, 25 ] dst-port 53 Action allow,", Juniper-Switching-Filter += "Match Ip-protocol 2 src-port 67 Action allow,", Juniper-Switching-Filter += "match ether-type [ 3000-4000 8000] action deny,", Juniper-Switching-Filter += "Match destination-port 23 Action allow,", Juniper-Switching-Filter += "Match Ip-protocol 6 Destination-port 80 Action trap,",
或
Juniper-Switching-Filter = "Match Ip-protocol 6 Destination-port 53 Action allow , Match Ip-protocol [ 17 25] Destination-port 53 Action allow , Match Ether-type [2054-2070] Action deny, Match Ip-protocol 6 Destination-port 443 Action trap"
要根据目标 MAC 地址和 IP 协议将丢包优先级 (PLP) 设置为高:
Juniper-Switching-Filter = "match destination-mac 00:04:0f:fd:ac:fe, ip-protocol 2, action loss-priority high"
瞻博网络-VoIP-VLAN:
使用 VSA 瞻博网络-VoIP-VLAN 在访问-接受消息或 COA 请求消息中从 RADIUS 服务器检索 VOIP VLAN。这个属性是编号 49。
Juniper-VoIP-Vlan = "voip_vlan"
通过 VoIP,您可以将 IP 电话连接到交换机,并为兼容 802.1X 的 IP 电话设置 IEEE 802.1X 身份验证。
得益于 802.1X 身份验证,以太网 LAN 可防止非法用户访问。一种称为 VoIP 的协议用于通过分组交换网络传输语音。VoIP 使用网络连接而不是模拟电话线来传输语音呼叫。当 VoIP 与 802.1X 配合使用时,RADIUS 服务器会验证电话的身份,而链路层发现协议媒体端点发现 (LLDP-MED) 会为电话提供服务等级 (CoS) 参数。
瞻博网络-CWA-重定向:
使用瞻博网络 CWA-重定向 VSA(瞻博网络 RADIUS 字典中的属性编号 50),可以在 AAA 服务器上集中配置重定向 URL。动态防火墙过滤器和 URL 均由 AAA 服务器在同一条 RADIUS 访问-接受消息中传送到交换机。作为备用身份验证机制,中央 Web 身份验证 (CWA) 将主机的 Web 浏览器重定向到中央 Web 身份验证服务器。用户可以在 CWA 服务器的 Web 界面上输入用户名和密码。如果 CWA 服务器接受用户的凭据,则用户将通过身份验证并获得网络访问权限。
主机无法通过 MAC RADIUS 身份验证后,将使用中央 Web 身份验证。交换机作为验证方,从 AAA 服务器接收一条 RADIUS Access-Accept 消息,其中包含动态防火墙过滤器和用于中央 Web 身份验证的重定向 URL。
要激活中央 Web 身份验证过程,需要同时存在重定向 URL 和动态防火墙过滤器。要将瞻博网络交换过滤器 VSA 用于中央 Web 身份验证,必须直接在 AAA 服务器上配置过滤器术语。过滤器必须包含一个术语,以便将 CWA 服务器的目标 IP 地址与操作 allow 进行匹配。
例如:
001122334455 Auth-Type := EAP, Cleartext-Password :="001122334455" Session-Timeout = "300", Juniper-CWA-Redirect-URL = "https://10.10.10.10", Juniper-Switching-Filter = "Match Destination-ip 10.10.10.10 Action allow, Match ip-protocol 17 Action allow, Match Destination-mac 00:01:02:33:44:55 Action deny"
对于重定向 URL,交换机不会解析 DNS 查询。要启用 CWA 服务器的目标 IP 地址,必须配置瞻博网络交换过滤器属性。
瞻博网络-AV-Pair:
瞻博网络-AV-Pair 属性是瞻博网络特定于供应商的属性 (VSA)。为了提供订阅者管理和服务支持所需的许多重要功能,它用于增强 RADIUS 服务器的功能,超出公共标准属性提供的功能。
i) 端口并轨:
使用 CoA bounce host port 命令,会话结束,端口退回(启动链路关闭事件,然后启动链路启动事件)。请求由RADIUS服务器以典型的CoA请求消息形式发送,VSA如下所示:
Juniper-AV-Pair = "Port-Bounce".
此命令需要“会话识别”部分中列出的一个或多个会话识别属性,因为它面向会话。如果找不到会话,设备将发送带有错误代码属性“Session Context Not Found”的 CoA-NAK 消息。
设备关闭托管端口 4 秒钟,再次启用它(端口反弹),然后返回 CoA-ACK(如果已找到会话)。
ii) ip-mac-session-binding:
这用于在设备的 MAC 地址老化并需要重新学习时阻止该设备的身份验证会话终止。我们通过访问-接受或 COA 请求消息从 VSA 瞻博网络 AV 对接收此属性值。
使用以下两个属性值对配置 RADIUS 服务器,以便基于 IP-MAC 地址绑定维护身份验证会话。
Juniper-AV-Pair = "IP-Mac-Session-Binding Juniper-AV-Pair = "No-Mac-Binding-Reauth"
iii) 无 MAC 绑定重新验证:
这用于阻止客户端重新身份验证,并在设备的 MAC 地址过时时阻止终止身份验证会话。此属性值由VSA瞻博网络AV对通过访问-接受或COA请求消息发送给我们。
Juniper-AV-Pair = "No-Mac-Binding-Reauth" Detailed information is provided in the document: Retain the Authentication Session Using IP-MAC Bindings
iv) 请求方模式-单:
设备从当前设置模式切换到单模式,以响应在访问-接受或 COA 请求消息上从 VSA 瞻博网络-AV-Pair 接收此属性值。Juniper-AV-Pair = "Supplicant-Mode-Single"
v) 请求方模式-单安全:
设备从其当前设置模式切换到单安全模式,以响应在访问-接受或 COA 请求消息上从 VSA 瞻博网络-AV-Pair 接收此属性值。
Juniper-AV-Pair = "Supplicant-Mode-Single-Secure"
vi) Retain-Mac-Aged-Session:
如果从 VSA 瞻博网络 AV 对在 802.11X 客户端的访问接受消息上收到此属性值,则即使 mac 已老化,客户端也会保持活动状态,并且会重新学习 mac。Juniper-AV-Pair = "Retain-Mac-Aged-Session"
MS-MPPE-Send-Key 和 MS-MPPE-Recv-Key:
这些是动态 CAK 场景中使用的 MACSEC CAK 生成密钥以及 EAP 密钥名称。Cisco-AVPair:
Cisco Systems,IANA 私有企业编号 9,使用单个 VSA Cisco-AVPair (26-1)。根据它所具有的值,此 VSA 传输各种信息。在某些用户接入网络中,如果BNG连接到RADIUS服务器,Cisco BroadHop应用充当策略控制和计费规则功能(PCRF)服务器,使用RADIUS授权变更(CoA)消息调配服务,则可以在RADIUS消息中使用此VSA来激活和停用服务。当 BNG 传送 RADIUS 消息时,您无法更改计费、CoA 或身份验证应答中的任何属性。
i) Cisco-AVPair = “subscriber:command=bounce-host-port”
会话结束,端口通过 CoA bounce host port 命令退回(启动链路关闭事件,然后启动链路启动事件)。请求由AAA服务器在典型的CoA请求消息中发送,VSA如下所示。
Cisco:Avpair=“subscriber:command=bounce-host-port”
此命令需要“会话识别”部分中列出的一个或多个会话识别属性,因为它面向会话。如果找不到会话,设备将发送带有错误代码属性“Session Context Not Found”的 CoA-NAK 消息。设备关闭托管端口 4 秒钟,再次启用它(端口反弹),然后返回 CoA-ACK(如果已找到会话)。
ii) Cisco-AVPair 重新验证命令
要启动会话身份验证,AAA 服务器会发送一条标准 CoA 请求消息,其中包含以下 VSA:
Cisco:Avpair=“subscriber:command=reauthenticate” Cisco:Avpair=“subscriber:reauthenticate-type=<last | rerun>”
reauthenticate-type 定义 CoA 重新认证请求是否使用上次在会话上成功的身份验证方法,或者是否完全重新运行身份验证过程。
"subscriber:command=reauthenticate" 必须存在才能重新进行身份验证。如果未给出“subscriber:reauthenticate-type”,则默认操作是重复用于会话的先前成功身份验证方法。如果该方法成功重新验证,则所有以前的授权数据都将换成新重新验证的授权数据。
只有当“subscriber:command=reauthenticate”也存在时,“subscriber:reauthenticate-type”才有效。如果 VSA 包含在另一个 CoA 命令中,则将其忽略。
变更历史表
是否支持某项功能取决于您使用的平台和版本。使用 功能资源管理器 确定您的平台是否支持某个功能。
