证书名称与 SAN 要求是什么
在 EAP 方法(如 PEAP、EAP-TLS)中,客户端会校验 RADIUS 服务器证书里的名称是否与配置的服务器名一致,用于防止连到伪造的服务器。现代客户端以 SAN(Subject Alternative Name)为主要校验字段:证书的 SAN 里必须包含客户端配置的那个 DNS 名称或 IP。只写 CN(Common Name)的老式证书在新系统上会直接校验失败,表现为「认证一开始就被拒」。
基本信息
| 校验字段 | SAN(推荐且现代客户端优先)/ CN(仅兼容老实现) |
|---|---|
| 匹配对象 | 客户端配置的服务器名或地址 |
| 多节点场景 | HA 与负载均衡的每个名称/虚拟 IP 都要覆盖 |
| 常见类型 | DNS 名、IP 地址,必要时两者同时写入 |
| 失配后果 | 客户端在服务器证书校验阶段终止认证 |
签发要求示例
签发要求示例
# SAN 应包含全部对外使用的名称
DNS.1 = radius.example.com
DNS.2 = radius2.example.com
IP.1 = 10.10.0.20
# 客户端侧配置的服务器名必须与上述之一完全一致
# 变更服务器地址或域名时,需同步重签并更新客户端信任配置典型使用场景
- 新建 RADIUS 服务:签发服务器证书时一次性把名称列表规划完整
- 双机热备:主备共用名称或各自名称都写入 SAN,避免切换后校验失败
- 负载均衡:虚拟地址与各后端地址按客户端配置方式决定是否都要写
- 证书轮换:换证时保持名称一致,只更新有效期与密钥
- 多租户或多域:不同域名分别签发,或统一纳入同一张证书的 SAN
失配现象与原因
| 现象 | 常见原因 |
|---|---|
| 认证立刻失败,无明显提示 | 证书名称与客户端配置的服务器名不一致 |
| 只有新系统连不上 | 证书只写了 CN 未写 SAN,新客户端不再回退到 CN |
| 切换备机后集体失败 | 备机地址或名称不在 SAN 覆盖范围内 |
| 改了域名后陆续报错 | 域名变更但证书未重签,SAN 仍是旧名称 |
排障时的定位顺序:先看客户端配置的服务器名是什么,再用工具查看证书实际包含的名称列表,两边逐字符比对(包括是否带域名后缀)。
不要为了「先跑通」而让客户端关闭服务器证书校验:这会直接放弃对伪造接入点的防护,属于安全配置缺陷,事后很难被管理流程发现。