Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

Vinllen Chen


To be a better coder

现有的三种网络准入技术

  网络准入的执行在『加密』之前,只有接入用户的合法性得到保证,数据加密才有意义。目前,存在三种常用的准入技术:二层准入、三层准入、基于客户端方式的认证。

1.二层准入

  二层准入是用户在获取三层IP之前必须通过的认证,当用户在接入网络时,需要同网络侧通过二层连接进行认证数据的交互,只有成功通过认证才能向DHCP服务器申请IP,从而发送数据。
  二层准入的代表实现方式就是802.1X,由IEEE推出。而EAP是IETF推出的在数据链路层进行认证行为的一种机制。这个逻辑连起来就是,IETF首先制定了在数据链路层进行验证的EAP机制,然后IEEE给出了EAP在以太网环境中的运行机制。注意:EAP可以被运用在任何一种数据链路层智商,例如PPP,以太网。
  802.1的认证流程可以归纳为以下四步:

1.1 端口初始化

  作为认证方的接入交换机探测到有一个客户端接入端口后,会置端口状态为『未授权』状态,该状态下的端口只会发送802.1X报文,拒绝其余流量。

1.2 EAP初始化

  交换机会定时发送EAP请求组播报文,开启了802.1X的客户端在连接交换机后会侦听这个报文,回复包含自己ID的EAP应答。交换机收到该应答后,开启认证。

1.3 EAP协商

  进行认证方式的协商,目前具有许多不同种类的EAP方式,包括IETF推行的和厂商自己的。

1.4 用户身份验证

  当客户端和认证服务器成功约定了一种EAP后,开始正式认证。通常,交换机会在客户端和认证服务器之间转发认证报文。认证的结果是『成功』和『失败』两个状态,如果成功,交换机端口会被打开;反之,交换机端口保持『未授权』状态。当客户注销时,客户端会向交换机端口发送离网的EAP报文,从而使得交换机置端口状态为『未授权』;如果链路端口,同样端口变为『未授权』,因为这时候用户可能断线,下次连通的不一定是同一个用户,所以需要重新认证。
  目前,交换机和认证服务器之间通过特定的协议通信,最常用的是RADIUS和TACACS+,后者是CISCO专用。

2. 三层准入

  一般无线网络接入的认证就是这种方式。三层准入又称为WEB认证,比较便捷。比如,不可能每次有访客都在访客笔记本上配置802.1X策略,尽管这个策略现在很常见。
  该认证可分为以下几个步骤:

2.1 交换机端口进入有限接入状态

  按照802.1X的标准流程,凡是没有成功通过认证的交换机端口都会被置于禁止转发状态,从而只允许发送802.1X报文。这样一来,客户端来IP都无法获取。从而这个不适合web认证。因此,进行web认证的接入交换机不会完全屏蔽端口,相反,它会将这个端口放入一个可以转发数据的VLAN。但在开放数据转发的同时,该连接端口会被自动放上一组预先配置的ACL,使得客户端可以通过DHCP拿到IP地址,但是没有网络权限。

2.2 客户端触发认证流程

  与二层认证不同的是,触发认证流程的不是交换机,而是客户端设备。网卡在发送DHCP请求时,或者已经配置IP,发送ARP请求时,触发认证。

2.3 用户身份验证

  用户获取IP后,网卡便可以利用这个地址与外界进行三层通信。这个时候用户需要发起一个HTTP请求,比如访问百度的页面,但是这个HTTP并不会被真正转发给百度的WEB服务器,交换机截取到用户的这个HTTP请求后,会将用户重定向到一个预先写好的认证页面。也就是我们平常所见的,需要输入用户名、密码的页面。
  WEB认证使用的认证服务器同802.1X环境类似,部署最广泛的也是RADIUS服务器,从扩展性的角度考虑,企业用户一般会选择集中式的认证服务器,而不是交换机上的本地信息库。
  认证服务器将验证结果返回给接入交换机,如果用户身份合法,接入交换机就会在端口上部署一些列事先制定的策略,包括下发预制的ACL等,从而为最终用户提供与之身份匹配的网络访问权限。
  当用户离开时,分为两种情况。如果用户在WEB页面上主动点击注销按钮,交换机会按预设值流程将端口关闭。但如果用户直接拔网线,那么情况就同802.1X不一样。WEB认证是一个三层机制,且没有客户端软件,网络侧无从探知用户什么时候离线,这就给端口管理带来麻烦。所以,常常能再WEB登陆成功的页面上发现提示性的语言,告知不要关闭该页面,这是因为网络侧的服务器会周期性地同这个页面交换心跳信息,如果没反应,那么交换机会认为用户已经离线,随之将端口关闭。

3. 客户端方式

  这是一种通过客户端对接入用户进行认证,这里所说的客户端是指安装在用户设备上的软件。其表现形式五花八门,以杀毒软件起家的厂商会做成杀毒的功能子集,以桌面控制立足的厂商会做成控制软件的一部分,而传统的网络设备厂商则会将这部分功能集成到VPN/无线接入的用户端软件中。不管是什么路子,这种软件一般只干两件事:

  1. 从OS接手802.1的认证流程。
  2. 对OS的健康状况做检查,例如是否安装了最新的补丁、杀毒软件是否更新到最新病毒库等,若OS处于可靠的状态则允许接入网络,否则拒绝。

  客户端方式完全是从企业IT部门的视角出发,对最终用户采取更多的限制。

4. 三种方式的比较

  二层准入的特点是成熟、实用,三层准入的特点是轻便、简单,缺点是安全性弱,不支持Single Sign-on,不支持机器认证(比如打印机之类)。所谓的Single Sign-on功能比如,笔记本在公司插上网线就可以使用,就是因为Single Sign-on会记住你登陆系统的密码,并且将这个密码用于802.1X的验证过程。客户端方式则功能最全面,大多数客户端软件都继承了802.1X的认证功能,除此之外还可以对用户的电脑进行健康检查。
  从安全性角度来说,客户端方式最强,二层准入次之,三层准入最弱;从部署复杂度来说,则反过来。

参考

《腾云》
CCNP

说明

装载请注明出处:http://vinllen.com/xian-you-de-san-chong-wang-luo-zhun-ru-ji-zhu/


About the author

vinllen chen

Beijing, China

格物致知


Discussions

comments powered by Disqus