802.1x协议起源于802.11协议,802.11是IEEE的无线局域网协议,制订802.1x协议的初衷是为了解决无线局域网的接进题 目。IEEE802 LAN协议定义的局域网并不提供接进,只要能接进局域网控制设备(如LAN Switch),就可以访问局域网中的设备或资源。这在早期企业网有线LAN应用环境下并不存在明显的安全隐患。
随着移动办公及驻 地网运营等应用的大规模发展,服务提供者需要对用户的接进进行控制和。尤其是WLAN的应用和LAN接进在电信网上大规模开展,有必要对端口加以控制 以实现用户级的接进控制,802.lx就是IEEE为了解决基于端口的接进控制(Port-Based Network Access Contro1)而定义的一个标准。
二、802.1x认证体系
802.1x是一种基于端口的认证协议,是一
种对用户进行认证的方法和策略。端口可以是一个物理端口,也可以是一个逻辑端口(如VLAN)。对于无线局域网来说,一个端口就是一个信道。802.1x
认证的终极目的就是确定一个端口是否可用。对于一个端口,假如认证成功那么就“打开”这个端口,答应所有的报文通过;假如认证不成功就使这个端口保持“封
闭”,即只答应802.1x的认证协议报文通过。
实验所需要的用到设备:
实验拓扑简单描述:
在cisco 3550上配置802.1X认证,认证请求通过AAA server,AAA server
IP地址为:172.16.0.103,认证客户端为一台windows xp
,当接进到3550交换机上实施802.1X认证,只有认证通过之后方可以进进网络,获得IP地址。
实验目的:通过本实验,你可以 把握在cisco 交换机如何来配置AAA(认证,授权,授权),以及如何配置802.1X,把握 cisco
ACS的调试,以及如何在windows xp 启用认证,如何在cisco 三层交换机上配置DHCP等。。好了,下面动手干活。。
实验过程:
Cisco 3550配置
由于cisco
交换机默认天生树都已经运行,开启天生树的目的为了防止网络发生环路,但是根据portfast的特性,假如交换机的某个接口连接的是路由器或者交换机,
就可以启用portfast来加快接口的相应时间,跳过天生树的收敛。并且假如要在接口启用802.1x认证,接口要是access模式
*********************************配置过程**********************************
sw3550(config)#int f0/1
sw3550()#switchport mode access
//配置f0/1接口永久为接进模式
sw3550(config-if)#spanning-tree portfast
//启用portfast特性(留意下面的警告提示哦)
%Warning: portfast should only be enabled on ports connected to a single
host. Connecting hubs, concentrators, switches, bridges, etc... to this
inte***ce when portfast is enabled, can cause temporary bridging loops.
Use with CAUTION
%Portfast has been configured on FastEthernet0/2 but will only
have effect when the inte***ce is in a non-trunking mode.
sw3550(config)#int f0/3
sw3550(config-if)#switchport mode access
sw3550(config-if)#spanning-tree portfast
%Warning: portfast should only be enabled on ports connected to a single
host. Connecting hubs, concentrators, switches, bridges, etc... to this
inte***ce when portfast is enabled, can cause temporary bridging loops.
Use with CAUTION
%Portfast has been configured on FastEthernet0/2 but will only
have effect when the inte***ce is in a non-trunking mode.
sw3550(config-if)#exit
sw3550(config)#int vlan 1
sw3550(config-if)#ip add 172.16.0.101 255.255.0.0
//默认的所有的交换机上的所有接口都在vlan 1,给VLAN1配置IP地址,目的是与AAA服务器,172.16.0.103相互ping通,
sw3550(config-if)#no shutdown
00:05:08: %LINK-3-UPDOWN: Inte***ce Vlan1, changed state to up
00:05:09: %LINEPROTO-5-UPDOWN: Line protocol on Inte***ce Vlan1, changed state to up
sw3550(config)#aaa new-model
//全局开启AAA,(AAA默认是封闭的)
sw3550(config)#aaa authentication login default group radius local
//配置登陆验证方式优先用radius,当radius不能提供认证服务,则采用本地认证,认证调用的名称按默认名称default
sw3550(config)#radius-server host 172.16.0.103 key server03
//指定radius Server的IP地址为172.16.0.103,Radius Server与交换机认证的密钥为server03(这里的server03,是我安装ACS 4.0,在安装过程最后一步定义的密码)
sw3550(config)#aaa authentication dot1x default group radius local
//802.1x认证由radius 服务器来完成,当radius不能认证时,由本地认证,这样配置的目的为了备份。假如说radius server服务器“挂了“,还可以用本地认证。
sw3550(config)#aaa authorization network default group radius local
//当认证通过之后,授权用户能接进网络,授权也由radius来完成
sw3550(config)#dot1x system-auth-control
全局下开启dot.1x认证功能,然后还需要到具体某个接口下制定认证的方式
sw3550(config-if)#int f0/3
sw3550(config-if)#switchport mode access
sw3550(config-if)#dot1x port-control auto
//当接口下发现有设备接进时,自动进行认证
AUTO是常用的方式,正常的通过认证和授权过程
sw3550(config-if)#dot1x reauthentication
//当认证失败,重新认证,直到认证通过
这里还有一些可选的配置,分享给大荚冬大家在工程中,可以根据自己的实际情况来调整配置,我的这次试验正常的配置命令都是用玄色来表示。请大家留意
可选配置:
Switch(config)#inte***ce fa0/3
Switch(config-if)#dot1x reauthentication
Switch(config-if)#dot1x timeout reauth-period 7200
2小时后重新认证
Switch#dot1x re-authenticate inte***ce fa0/3
现在重新认证,留意:假如会话已经建立,此方式不断开会话
Switch#dot1x initialize inte***ce fa0/3
初始化认证,此时断开会话
Switch(config)#inte***ce fa0/3
Switch(config-if)#dot1x timeout quiet-period 45
45秒之后才能发起下一次认证请求
Switch(config)#inte***ce fa0/3
Switch(config-if)#dot1x timeout tx-period 90 默认是30S
Switch(config-if)#dot1x max-req count 4
客户端需要输进认证信息,通过该端口应答AAA服务器,假如交换机没有收到用户的这个信息,交换机发给客户真个重传信息,30S发一次,共4次
Switch#configure terminal
Switch(config)#inte***ce fastethernet0/3
Switch(config-if)#dot1x port-control auto
Switch(config-if)#dot1x host-mode multi-host
默认是一个主机,当使用多个主机模式,必须使用AUTO方式授权,当一个主机成功授权,其他主机都可以访问网络;
当授权失败,例如重认证失败或LOG OFF,所有主机都不可以使用该端口
Switch#configure terminal
Switch(config)#dot1x guest-vlan supplicant
Switch(config)#inte***ce fa0/3
Switch(config-if)#dot1x guest-vlan 2
未得到授权的进进VLAN2,提供了灵活性
留意:1、VLAN2必须是在本交换机激活的,计划分配给游客使用;2、VLAN2信息不会被VTP传递出往
Switch(config)#inte***ce fa0/3
Switch(config-if)#dot1x default
回到默认设置
在cisco的三层交换机上可以配置DHCP,通过DHCP功能,可以给客户端分配IP地址,子网掩码,网关,DNS,域名,租期,wins等
sw3550(config)#ip dhcp pool DHCP
//定义地址池的名称为DHCP,这里可以随便定义
sw3550(config)#ip dhcp excluded-address 172.16.0.1 172.16.0.150
//定义不通过DHCP分配的IP地址,也就是排除的地址范围172.16.0.1-172.16.0.150。
例如说:172.16.0.1
这个地址是我的网关,假如这个地址作为IP 地址分配给客户端,就会造成IP 地址冲突,影响网络的正常通讯。所以说做排除是非常有必要的。
sw3550(config)#exit
00:42:57: %SYS-5-CONFIG_I: Configured from console by console
以上完成之后,交换机上所需的配置命令都已完成,下面就到AAA服务器来配置
1,添加认证的用户和密码,左侧面板-单击-User Setup-admin-Add/Edit
单击Add/Edit,在随后的窗口设置admin的密码,我设置用户和密码都相同,
2,添加AAA 认证Client信息,单击-Network Configuration 你可以AAA Client信息和AAA Servers信息
在AAA Clients这栏下面,单击Add Entry
AAA Client Hostname 填写当前交换机的名称
AAA Client IP Address 为当前VLAN1的IP地址,根据你的实际情况,你想对那个VLAN用户采取802.1X认证,就填写那个VLAN的IP Address
KEY 为交换机和AAA 服务器的认证的密钥,这里填写的KEY应该要和在交换机配置的 KEY值相同
Authenticate Using 这里选择认证的协议,我选择的Radius。认证的协议也要和在交换机配置的认证方式相同,否则认证失败。填写玩这些信息之后,单击确认即可
3,Guoup Setup ,配置组的授权,授权用户认证通过之后,能接进网络
在 Rdius IETF 配置栏目下,找到如下图,
留意:064设置对VLAN下面的用户提供认证,065设置认证方式为802.1x,081设置为VLAN ID,这里设置为VLAN 1。设置完成之后,单击Submit+Restart
***************到此AAA服务器设置完成了***********
在交换机上测试定义的用户和密码能否完成认证
sw3550#test aaa group radius admin admin new-code
User successfully authenticated
如下是:认证客户端 windows xp 配置
默认由于windows 操纵系统并没有启用802.1x认证这个服务,所以第一步,先打开系统服务-开启8021.x认证功能
开始-运行-services.msc
对于内网用户,假如是安全用户可以勾选缓存用户信息,这样就可以不用每次认证都输进密码。假如是公用计算机,或者是其他的需要,这里可以不勾选缓存账户信息,这样每次计算机开机之后,在接进网络时,都需要输进用户名和密码。
单击-MD5-质询-确定启用了802.1x认证功能。
本地连接已经试图往尝试认证了,单击右下角通知区域提示,输进认证的用户名和密码
按图提示,必须输进用户名和密码,方可认证通过,认证通过之后才可以从交换机上获得IP地址等
输进在AAA服务器上定义的用户名和密码admin。假如是你工作组环境就无所谓域的概念,登录到域这项不填,然后单击确定开始进进802.1X认证会话阶段。如下图正在验证身份
认证成功,3550交换机从地址池分配第一个IP地址给客户端,开始-运行-CMD-ipconfig/all
CCIE Security 2009 IOS防火墙合集