现存在许多网络认证协议,适用于不同场景(如局域网、无线网络、远程访问等)。
## 一、基于密码的认证协议
### 1. PAP(Password Authentication Protocol)
– 特点:明文传输密码,安全性低。
– 用途:旧式 PPP 拨号认证(现基本被淘汰)。
– 安全性:❌ 无加密,易被窃听。
### 2. CHAP(Challenge-Handshake Authentication Protocol)
– 特点:使用挑战-响应机制,避免明文传输密码。
– 用途:PPP、PPPoE(如宽带拨号)。
– 安全性:✅ 比 PAP 安全,但仍可能被暴力破解。
### 3. MS-CHAP / MS-CHAPv2(Microsoft CHAP)
– 特点:微软改进版 CHAP,支持双向认证。
– 用途:Windows VPN(如 PPTP)、企业网络。
– 安全性:⚠️ MS-CHAPv1 已不安全,v2 仍可用但推荐替换。
—
## 二、基于证书 / 公钥的认证协议
### 4. EAP-TLS(Extensible Authentication Protocol – Transport Layer Security)
– 特点:双向证书认证,安全性极高。
– 用途:企业 Wi-Fi(WPA2/3-Enterprise)、VPN。
– 安全性:✅ 最安全的 EAP 方法之一,但需 PKI 支持。
### 5. IEEE 802.1X
– 特点:不是独立协议,而是基于 EAP 的端口访问控制框架。
– 用途:企业有线 / 无线网络准入控制(如 Cisco ISE)。
– 依赖协议:通常结合 EAP(如 PEAP、TLS)使用。
—
## 三、基于令牌 /OTP 的认证协议
### 6. RADIUS(Remote Authentication Dial-In User Service)
– 特点:集中式认证服务器,支持多种认证方式(PAP/CHAP/EAP 等)。
– 用途:企业网络、Wi-Fi、VPN 认证。
– 扩展:常用 FreeRADIUS 或 Microsoft NPS 实现。
### 7. TACACS+(Terminal Access Controller Access Control System Plus)
– 特点:Cisco 开发,比 RADIUS 更精细的权限控制。
– 用途:网络设备(路由器、交换机)管理认证。
– 对比 RADIUS:
– TACACS+ 支持命令级授权,适合管理员访问控制。
### 8. OAuth 2.0 / OpenID Connect
– 特点:基于令牌(Token)的现代认证框架。
– 用途:Web/API 单点登录(SSO)、第三方应用授权(如 Google 登录)。
– 安全性:✅ 适合互联网应用,但需防范 Token 泄露。
### 9. Kerberos
– 特点:基于票据(Ticket)的认证协议,避免密码传输。
– 用途:Windows Active Directory 域认证、企业内网。
– 流程:客户端从 KDC(密钥分发中心)获取 Ticket 访问服务。
—
## 四、无线网络专用协议
### 10. WPA/WPA2/WPA3-Personal
– 特点:使用预共享密钥(PSK),如家庭 Wi-Fi 密码。
– 安全性:⚠️ WPA2 可能受 KRACK 攻击,推荐 WPA3。
### 11. WPA/WPA2/WPA3-Enterprise
– 特点:基于 802.1X + EAP(如 PEAP/TLS),每个用户独立认证。
– 用途:企业 Wi-Fi,比 PSK 更安全。
—
## 五、其他认证协议
### 12. LDAP(Lightweight Directory Access Protocol)
– 特点:用于查询和验证目录服务(如 Active Directory)。
– 用途:企业用户身份管理,常与 RADIUS/Kerberos 结合。
### 13. SAML(Security Assertion Markup Language)
– 特点:基于 XML 的 SSO 协议,用于 Web 应用。
– 用途:企业单点登录(如 Office 365、AWS SSO)。
### 14. FIDO2 / WebAuthn
– 特点:基于生物识别或硬件密钥(如 YubiKey)的无密码认证。
– 用途:现代 Web 身份验证(如 Google/ 微软账户)。
—
## 总结对比表
协议 | 认证方式 | 典型用途 | 安全性 |
---|---|---|---|
PAP | 明文密码 | 旧式 PPP | ❌ |
CHAP | 挑战-响应 | PPPoE(宽带) | ⚠️ |
EAP-TLS | 双向证书 | 企业 Wi-Fi/VPN | ✅✅ |
RADIUS | 多种支持 | 网络设备认证 | ✅ |
Kerberos | 票据(Ticket) | Windows 域认证 | ✅ |
OAuth 2.0 | Token 授权 | Web/API SSO | ✅ |
WPA3-Enterprise | EAP + 802.1X | 企业无线网络 | ✅✅ |
### 如何选择认证协议?
– 企业内网:Kerberos + 802.1X(EAP-TLS/PEAP)+ RADIUS。
– Web 应用:OAuth 2.0 / SAML / OpenID Connect。
– 物联网 / 设备:EAP-TLS 或证书认证。
– 高安全性需求:FIDO2(无密码)或硬件令牌。
EAP | Extensible Authentication Protocol | 可扩展认证协议
认识
EAP(Extensible Authentication Protocol,可扩展认证协议)是一种网络认证框架,广泛应用于无线网络(如 Wi-Fi)、PPP(点对点协议)连接等场景。它的核心特点是灵活性,允许通过不同的认证方法(EAP-Methods)实现身份验证,适应多种安全需求。
组成
EAP 是种认证框架,其并不实现具体的认证机制,其仅定义认证过程中通用的交互流程、报文格式、扩展方式。
基本报文格式 | EAP 定义了标准的报文结构,所有 EAP 方法均遵循此格式。一个 EAP 报文包含以下字段:
- Code(1 字节):标识报文类型,包括:
- Request(1):认证方向客户端发起请求。
- Response(2):客户端回复认证方。
- Success(3):认证成功。
- Failure(4):认证失败。
- Identifier(1 字节):匹配请求与响应的序列号(防止重放攻击)。
- Length(2 字节):整个 EAP 报文的长度。
- Data(可变):具体认证方法的载荷(如身份信息、证书、挑战值等)。不同的认证方法(例如 EAP-TLS、EAP-PEAP、……)具有不同的 Data 部分。
认证流程的通用阶段 | EAP 框架规定了认证过程的基本阶段,无论使用何种 EAP 方法,均遵循以下逻辑:
- 初始化:认证方(如 RADIUS 服务器)向客户端发送 EAP-Request/Identity 请求身份标识。
- 身份交换:客户端回复 EAP-Response/Identity(如用户名)。
- 方法协商:认证方选择具体的 EAP 方法(如 EAP-TLS),通过 EAP-Request 通知客户端。
- 认证执行:客户端与认证方按所选方法交互(如证书验证、密钥交换等)。
- 结果通知:认证方发送 EAP-Success 或 EAP-Failure 终止流程。
注:具体交互次数和内容由 EAP 方法决定(如 EAP-TLS 需要多轮 TLS 握手)。
以 802.1X 为例,EAP 的工作流程:
- 客户端(Supplicant)连接网络(如 Wi-Fi),发送认证请求。
- 认证器(Authenticator,如 Switch/AP)转发请求到 RADIUS 服务器。
- RADIUS 服务器选择 EAP 方法(如 EAP-TLS),与客户端完成认证(如证书交换)。
- 认证成功后,服务器下发密钥,客户端获得网络访问权限。
构造
RFC 3748 / Extensible Authentication Protocol (EAP) / https://www.ietf.org/rfc/rfc3748.txt
性质
- 协议无关性 | EAP 本身不限定具体的认证机制,而是作为一个框架,支持多种认证方法(如密码、证书、令牌等)。
- 模块化设计 | 可通过不同的 EAP 方法(EAP-Methods)扩展功能,例如:
–
EAP-TLS:基于数字证书的双向认证(高安全性)。
–
EAP-PEAP:通过 TLS 隧道保护密码认证(如 MS-CHAPv2)。
–
EAP-TTLS:类似 PEAP,但支持更灵活的认证方式。
–
EAP-SIM/AKA:用于移动网络(SIM 卡认证)。
- 广泛支持 | 被 IEEE 802.1X(端口访问控制)、Wi-Fi(WPA/WPA2-Enterprise)等标准采用。
- 可扩展性 | EAP 是一个框架,不限定具体的认证方法,而是允许动态选择认证机制(如 EAP-MD5、EAP-TLS、EAP-PEAP 等)。
- 灵活性 | 可用于多种网络环境,包括有线、无线(如 WPA2/WPA3 企业级认证)、VPN(如 PPTP、L2TP/IPsec)等。
- 多阶段认证 | 支持多轮交互(如 TLS 握手、身份验证、密钥交换等),比简单的用户名 / 密码认证更安全。
- 与传输协议无关 | 可在多种底层协议上运行,如 PPP(点对点协议)、IEEE 802.1X(用于企业 Wi-Fi)、RADIUS(远程认证拨号用户服务)等。
应用
- 企业 Wi-Fi(WPA-Enterprise)| 通过 802.1X + EAP(如 PEAP/TLS)实现员工安全接入。
- VPN 认证 | 部分 VPN 协议使用 EAP 进行用户身份验证。
- 物联网设备 | 使用 EAP-TLS 实现设备与网络的双向认证。
- 移动网络认证 | EAP-SIM/EAP-AKA 用于运营商热点或 5G 网络接入。
EAP 本身只是一个框架,具体的认证方式由其子协议实现,常见的有:
**EAP 方法** | **描述** |
---|---|
EAP-MD5 | 基于 MD5 哈希的简单认证,安全性较低,不推荐用于无线网络。 |
EAP-TLS | 使用数字证书(客户端和服务器双向认证),安全性高,适用于企业环境。 |
EAP-TTLS | 类似 TLS,但仅服务器需要证书,客户端可使用用户名 / 密码或其他方式认证。 |
EAP-PEAP | 微软开发,先建立 TLS 隧道,再在隧道内进行认证(如 MS-CHAPv2)。 |
EAP-SIM | 用于移动网络,基于 SIM 卡认证(如运营商 Wi-Fi)。 |
EAP-AKA/AKA’ | 用于 4G/5G 网络,比 EAP-SIM 更安全。 |
EAP-FAST | 思科开发,类似 PEAP,但使用 PAC(Protected Access Credential)替代证书。 |
方法 | 认证方式 | 安全性 | 适用场景 |
---|---|---|---|
EAP-TLS | 双向证书认证 | 极高 | 企业网络(需 PKI) |
EAP-PEAP | TLS 隧道 + 密码 / 证书 | 高 | 企业 Wi-Fi(常用) |
EAP-TTLS | TLS 隧道 + 多种认证方式 | 高 | 兼容旧系统 |
EAP-MD5 | 明文密码(不推荐) | 低 | 仅测试环境 |
EAP 的安全性
– 强认证方法(如 EAP-TLS) 提供高安全性,适合企业环境。
– 弱方法(如 EAP-MD5) 易受中间人攻击,应避免使用。
– PEAP/TTLS 通过隧道保护认证过程,比明文认证更安全。
安全性注意事项
– 推荐方法:优先选择 EAP-TLS(证书)或 EAP-PEAP(隧道保护密码)。
– 避免弱方法:如 EAP-MD5 易受中间人攻击。
– 证书管理:EAP-TLS 需维护 PKI 基础设施。
EAP 是网络认证的核心框架,支持多种认证机制,适用于 Wi-Fi、VPN 等场景。选择具体的 EAP 方法需权衡安全性和部署复杂度(如证书管理)。在企业网络中,EAP-TLS、PEAP 是常见选择,而 EAP-SIM/AKA 主要用于移动通信。
参考
Wikipedia / Extensible Authentication Protocol
DeepSeek / 介绍 EAP
DeepSeek / EAP 是一个框架,它定义了哪些内容?