IEEE 802.1X
没有定义任何实作的方法
,
严格来说
,IEEE 802.1X
并不能算是个标准
,
而是个架构
(framework)
。架构或许很好理解
,
但是该以什么方式来实作
?
要选择那一种
EAP method?
架构里的三种基本角色包括申请者、验证者、验证服务器
,
申请者就有如支持
802.1X
的无线装置
,
如
Notebook
、
PC
、
PDA
等
,
验证者就有如支持
802.1X
的
AP
等这类的网路存取控制
,
那验证服务器呢
?
有什么样的实作方式可以来实现验证服务器的机制
?
人类天生矛盾
,
选择性少的时候觉得没有弹性
,
一旦选择性多的时候
,
却又不知该如何选择
!!
其实业界目前来说有不少验证服务器的实作方式
,
亦开发出不少的
EAP method
。我无法在此一一介绍每一种实作的方式
(
因为我也没有所有实作方式的经验
),
所以就挑了一、二个我实际作过
,
而且在业界也有不少公司或企业采用的方式来简单描述一下。
有两种
EAP method
在目前业界有很多实作的案例
,
分别是
EAP-TLS
以及
EAP-PEAP
。这两种方式也是目前大部分的操作系统以及验证服务器实作均会支持的两种方式
,
而且这两种方式也都符合无网局域网的应用要求
– “
加密的通道
”
以及
”
互相验证
”
。
EAP-PEAP
PEAP
是一种受保护的
EAP
方式
(Protected EAP, PEAP),
采用这种方式的目的是可以搭配
”
旧式的身份验证方式
”
一起使用。所谓
”
旧式的身份验证方式
”
就是指如
MS-CHAP-V2
这类的内层
(inner)
身份验证方式
(
由于
Microsoft”
广大
”
的使用市场
,
所以
MS-CHAP-V2
也是目前支持最多的
PEAP
内层身份验证方式。之所以称
MS-CHAP-V2
为
”
旧式的身份验证方式
”
是因为在由
Windows 2003 Server
所建立的
AD
内
,
使用
Windows XP
的
client,
其所采用的验证协定是
Kerberos)
。这种
EAP method
首先验证服务器会先以自身的服务器凭证
(certificate)
来证明自身的
”
合法性
”
后建立起一条安全通道
(
加密的通道
),
后续的验证程序就是在这个安全通道内进行
,
接着验证服务器会要求无线终端装置的使用者输入使用者帐号
(
使用
MS-CHAP-V2)
以完成验证程序。采用这种
EAP method,
除了验证服务器须安装由凭证授权中心
(CA)
所发行的服务器凭证以及根凭证之外
,
无线终端装置仅须安装
CA
根凭证即可
(
这样无线终端装置才能够信任验证服务器的服务器凭证
),
当然
,
除了于公司内建
CA
之外
,
亦可采行向受信任的第三方
CA
购买凭证的方式来布署。
EAP-TLS
这种方式
”
号称
”
是众多
EAP
方式
(EAP method)
中安全强度最高的一种方式
,
但也是建制和管理复杂度最高的一种方式。这种
EAP method
验证服务器和无线终端装置都是以凭证来进行互相验证。首先验证服务器以服务器凭证来宣告其
”
合法性
”,
再以双方凭证中
public-key
的方式协商出一把
session-key,
使用者装置再以此
session-key
加密并传送使用者凭证中的使用者资讯给验证服务器以验证使用者身份。言下之意
,
验证服务器和使用者装置除了双方都要安装
CA
根凭证之外
,
还要分别安装服务器凭证和使用者凭证
,
想想看
,
有多少个使用者
,
就要发行多少张使用者凭证
,
这当中还涉及凭证的使用期限、撤销凭证、撤销清单的发布等管理需求
,
而这个管理需求一般就是指
PKI(Public Key infrastructure)
的布署和管理。
EAP-TLS
之所以被
”
号称
”
为安全强度最高的
EAP method,
是因为一般认为使用者帐号
(account)
可以
”
猜
”,
而凭证却无法
”
猜
”
。但由于
EAP-TLS
涉及到凭证的管理
,
甚至于
PKI
的布署
,
而
PKI
的布署又是另一项浩大的工程
(
当然
,
也可以利用
Linux
搭配
FreeRADIUS
和
OpenSSL
进行小规模的应用
)
。所以在安全性、建制成本、管理成本的考量之下
,
一般而言
,EAP-PEAP
会比
EAP-TLS
更受欢迎。