xx‑xx‑xx‑xx‑xx‑xx)| 项目 | PAP(明文) | CHAP(密文) |
|---|---|---|
| 交互次数 | 3 次(请求→接受→计费) | 5 次(请求→挑战→响应→接受→计费) |
| 密码传输 | 明文(可抓包看到 MAC) | 密文(MD5 哈希,无明文) |
| 安全性 | 低 | 高(推荐) |
# 1. 开启MAC认证
mac-authentication
# 2. 认证方式CHAP(推荐)
mac-authentication authentication-method chap
# 3. RADIUS方案
radius scheme 1
primary authentication 10.1.1.1 1812
primary accounting 10.1.1.1 1813
key authentication simple 123456
key accounting simple 123456
user-name-format without-domain
# 4. 域绑定
domain system
authentication default radius-scheme 1
authorization default radius-scheme 1
accounting default radius-scheme 1暂无评论
MAC认证的RADIUS报文交互流程,本质上就是网络接入设备(NAS)和RADIUS服务器之间,围绕用户MAC地址进行身份核实与权限下发的四次握手过程。
整个流程的核心可以简化为:接入设备“代为询问”,服务器“核查并授权”。
完整的流程可以分为以下几个关键步骤:
| 步骤 | 方向 | 报文类型 | 核心目的与携带的关键信息 |
|---|---|---|---|
| 0. 触发 | 终端 ↔ NAS | 无 | 终端上线发送ARP/DHCP报文,NAS学习到其MAC地址,触发认证流程。 |
| 1. 认证请求 | NAS → RADIUS | Access-Request | NAS将终端的MAC地址作为用户名和密码(格式可配置),并携带Calling-Station-Id(用户MAC)、Service-Type设为Call-Check (10) 等属性,向RADIUS服务器发起认证请求。 |
| 2. 认证应答 | RADIUS → NAS | Access-Accept / Access-Reject | RADIUS服务器核查用户信息。若通过,返回Access-Accept,并可能携带授权信息(如VLAN、ACL);若失败,则返回Access-Reject。 |
| 3. 计费开始 (可选) | NAS → RADIUS | Accounting-Request (Start) | 认证成功后,NAS可向RADIUS服务器发送计费开始报文,包含Acct-Status-Type: Start。 |
| 4. 计费应答 (可选) | RADIUS → NAS | Accounting-Response | RADIUS服务器确认收到计费开始请求,开始计费。 |
| 5. 用户下线 (可选) | NAS → RADIUS | Accounting-Request (Stop) | 用户离线时,NAS发送计费停止报文,包含Acct-Status-Type: Stop及会话时长、流量等统计信息。 |
| 6. 计费应答 (可选) | RADIUS → NAS | Accounting-Response | RADIUS服务器确认收到计费停止报文,结束计费。 |
步骤1中的Access-Request报文,其密码部分有两种常见的加密方式:PAP(密码验证协议)和CHAP(挑战握手认证协议),它们的区别在于:
PAP (明文传输):NAS直接将密码(即MAC地址)以明文形式放置在Access-Request中发送。这种方式安全性较低,存在被嗅探的风险,但配置简单。
CHAP (挑战响应):此方式更安全,过程多两步“握手”:
挑战:RADIUS服务器先向NAS发送一个Access-Challenge报文,其中包含一个随机的"挑战码"(Challenge)。
响应:NAS收到挑战后,使用这个挑战码、密码(MAC地址)和共享密钥通过MD5算法计算出响应值(Response),再封装到新的Access-Request中发给服务器。
验证:服务器执行相同计算,若结果一致则认证通过。
在Access-Request报文中,用户名(User-Name)和密码(User-Password)的格式可以配置:
MAC地址用户名格式:直接使用终端的MAC地址(如xx-xx-xx-xx-xx-xx)作为用户名和密码。
固定用户名格式:网络上所有终端共享一个在NAS上预先配置好的用户名和密码。
为了帮你更精准地分析抓包,下表列出了MAC认证中几个核心的RADIUS属性:
| 属性名称 | 在交互中的关键作用 |
|---|---|
| User-Name & User-Password | 认证凭证。MAC认证中,通常直接使用终端的MAC地址填充这两个字段。 |
| Calling-Station-Id | 用户标识。直接填入请求接入的用户终端的MAC地址,用于服务器端记录和识别。 |
| Called-Station-Id | 接入位置。在有线和无线网络中分别填入接入设备的MAC或无线SSID,用于服务器识别接入点。 |
| Service-Type | 服务类型标识。MAC认证的Access-Request报文中,该值被明确设为Call-Check (10),以此与普通用户拨号认证进行区分。 |
| Framed-IP-Address & Framed-VLAN | 授权属性。在认证通过的Access-Accept报文中下发,用于分配固定IP或指定用户所属的VLAN。 |
| Filter-Id | 授权属性。同样是Access-Accept报文中下发,用于指定用户需要应用的ACL访问控制列表。 |
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论