802.1x协议起源于802.11协议,后者是标准的无线局域网协议,802.1x协议的主要目的是为了解决无线局域网用户的接入认证问题。
802.1x协议仅仅关注端口的打开与关闭,对于合法用户(根据帐号和密码)接入时,该端口打开,而对于非法用户接入或没有用户接入时,则该端口处于关闭状态。认证的结果在于端口状态的改变,而不涉及通常认证技术必须考虑的IP地址协商和分配问题,是各种认证技术中最简化的实现方案。
802.1x认证技术的操作粒度为端口,合法用户接入端口之后,端口处于打开状态,因此其它用户(合法或非法)通过该端口时,不需认证即可接入网络。对于无线局域网接入而言,认证之后建立起来的信道(端口)被独占,不存在其它用户再次使用的问题,但是,如果802.1x认证技术用于宽带IP城域网的认证,就存在端口打开之后,其它用户(合法或非法)可自由接入和无法控制的问题。
接入认证通过之后,IP数据包在二层普通MAC帧上传送,认证后的数据流和没有认证的数据流完全一样,这是由于认证行为仅在用户接入的时刻进行,认证通过后不再进行合法性检查。
表1和表2分别罗列出802.1x协议与PPPOE、VLAN+WEB的性能比较。
表1:802.1x与PPPOE认证的技术比较
- 对于假冒MAC地址的情况
当认证交换机的一个物理端口下面再级连一台接入级交换机,而该台接入交换机上的甲用户已经通过认证并正常使用网络资源,则此时在认证交换机的该物理端口中就已将甲用户终端设备的MAC地址设定为允许发送业务数据。假如同一台接入交换机下的乙用户将自己的MAC地址修改得与甲用户的MAC地址相同,则即使乙用户没有经过认证过程也能够使用网络资源了,这样就给网络安全带来了漏洞。针对此种情况,港湾网络交换机在实现了802.1X认证、授权功能的交换机上通过MAC地址+IP地址的绑定功能来阻止假冒MAC地址的用户非法访问。
对于动态分配IP地址的网络系统,由于非法用户无法预先获知其他用户将会分配到的IP地址,因此他即使知道某一用户的MAC地址也无法伪造IP地址,也就无法冒充合法用户访问网络资源。
对于静态分配地址的方案,由于具有同一IP地址的两台终端设备必然会造成IP地址冲突,因此同时假冒MAC地址和IP地址的方法也是不可行的。
当假冒者和合法用户分属于认证交换机两个不同的物理端口,则假冒者即使知道合法用户的MAC地址,而由于该MAC地址不在同一物理端口,因此,假冒者还是无法进入网络系统。 - 对于假冒IP地址的情况
由于802.1X采用了基于二层的认证方式,因此,当采用动态地址分配方案时,只有用户认证通过后,才能够分配到IP网络地址。
对于静态地址分配策略,如果假冒了IP地址,而没有能够通过认证,也不会与正在使用该地址的合法用户发生地址冲突。
如果用户能够通过认证,但假冒了其他用户的IP地址,则通过在认证交换机上采用IP地址+MAC地址绑定的方式来控制用户的访问接入。这使得假冒用户无法进行正常的业务通信,从而达到了防止IP地址被篡改、假冒的目的。 - 对于用户口令失窃、扩散的处理
在使用802.1X认证协议的系统中,用户口令失窃和口令扩散的情况非常多,对于这类情况,能够通过在认证服务器上限定同时接入具有同一用户名和口令认证信息的请求数量来达到控制用户接入,避免非法访问网络系统的目的。
802.1x协议仅仅提供了一种用户接入认证的手段,并简单地通过控制接入端口的开/关状态来实现,这种简化适用于无线局域网的接入认证、点对点物理或逻辑端口的接入认证,而在可运营、可管理的宽带IP城域网中作为一种认证方式具有一定的局限性。
表2:802.1x与VLAN+WEB认证的技术比较
宽带IP城域网建设越来越强调网络的可运营性和可管理性,具体包括:对用户的认证、计费,IP地址分配、全方位安全机制,对业务的支持能力和运营能力等方面。其中用户认证技术是可运营、可管理网络的关键。从严格意义上讲,认证功能包括:识别和鉴权,对用户的准确有效识别,对用户权限的下发、确认和控制,这些构成了用户计费和各种安全机制实施的前提以及多业务支持和发展的基础。因此,宽带IP城域网中认证技术的采用必须遵循网络的可运营、可管理要求。
实践证明,PPPOE认证技术、VLAN+WEB认证技术均可很好地支撑宽带网络的计费、安全、运营和管理要求。对于802.1x认证技术,根据其定位和特点,在宽带城域网中实现用户认证远远达不到可运营、可管理要求,加之应用又少,为了完备用户的认证、管理功能,还需要进行大量协议之外的工作,目前仅有少数几个二/三层交换机厂家在宽带IP城域网中推广此项方式,将802.1x技术附着在L2/L3产品上,使L2/L3产品具备BAS用户认证和管理功能。如上所述,这种认证方式仅仅能够基于端口的认证,而且不是全程认证,与其它BAS功能(计费、安全机制、多业务支持)难以融合,因而不能称为电信级认证解决方案。
在城域网建设初期,大家对可运营、可管理性的认识还不是很一致,802.1x认证技术可能会有一定的市场空间,随着宽带IP城域网建设的逐步成熟和对可管理的关注,基于端口开关状态的802.1x认证技术不会成为主流。
以太网技术“连通和共享”的设计初衷使目前由以太网构成的网络系统面临着很多安全问题。IEEE 802.1X协议正是在基于这样的背景下被提出来的,成为解决局域网安全问题的一个有效手段。
在802.1X协议中,只有具备了以下三个元素才能够完成基于端口的访问控制的用户认证和授权。
- 客户端:一般安装在用户的工作站上,当用户有上网需求时,激活客户端程序,输入必要的用户名和口令,客户端程序将会送出连接请求。
- 认证系统:在以太网系统中指认证交换机,其主要作用是完成用户认证信息的上传、下达工作,并根据认证的结果打开或关闭端口。
- 认证服务器:通过检验客户端发送来的身份标识(用户名和口令)来判别用户是否有权使用网络系统提供的网络服务,并根据认证结果向交换机发出打开或保持端口关闭的状态。
- 当用户有上网需求时打开802.1X客户端程序,输入已经申请、登记过的用户名和口令,发起连接请求。此时,客户端程序将发出请求认证的报文给交换机,开始启动一次认证过程。
- 交换机收到请求认证的数据帧后,将发出一个请求帧要求用户的客户端程序将输入的用户名送上来。
- 客户端程序响应交换机发出的请求,将用户名信息通过数据帧送给交换机。交换机将客户端送上来的数据帧经过封包处理后送给认证服务器进行处理。
- 认证服务器收到交换机转发上来的用户名信息后,将该信息与数据库中的用户名表相比对,找到该用户名对应的口令信息,用随机生成的一个加密字对它进行加密处理,同时也将此加密字传送给交换机,由交换机传给客户端程序。
- 客户端程序收到由交换机传来的加密字后,用该加密字对口令部分进行加密处理(此种加密算法通常是不可逆的),并通过交换机传给认证服务器。
- 认证服务器将送上来的加密后的口令信息和其自己经过加密运算后的口令信息进行对比,如果相同,则认为该用户为合法用户,反馈认证通过的消息,并向交换机发出打开端口