802.1X是一种认证技术,是对二层交换机接口接入主机进行认证的一种技术;当接口开启了认证功能后,在认证没有通过以前,交换机接口只会有802.1X消息、CDP消息、STP消息传递。
要进行认证,只要输入用户名和密码即可。交换机为802.1X提供的认证数据库可以是本地认证,也可以是远程服务器认证。这需要通过AAA来指定认证数据库的方式,如果AAA指定的是本地认证,则根据交换机本地的用户名和密码来进行认证;如果AAA指定的是远程认证,则需要使用远程服务器来进行认证,AAA为802.1X提供的远程认证服务器只有radius服务器,服务器上运行ACS 3.0以上版本的软件即可!
接口开启了802.1X认证,且连接的主机支持802.X认证时,将会有以下的结果:
1、认证通过,则允许主机访问网络,并将网络放到配置好的VLAN中
2、认证超时,将主机放到guest vlan中(不支持802.1X认证的主机也会被放入到guest vlan中)
3、认证失败,如果定义了失败的vlan,那么将把主机放入定义好的失败的vlan中
4、远程服务器没有响应,如果定义了放行,则放行
如果认证失败,交换机支持重认证(re-authentication)功能,并且还可以配置认证的时间间隔,默认为60S一次,支持2次的重认证。默认交换机的此功能是关闭的,如果要在某接口下开启re-authentication功能,则需要在enable模式下输入dot1x re-authentication interface命令。
在交换机上开启了认证功能以后,接口从down到Up状态后,需要进行重新认证。
dot1x port-control auto接口认证
对于开启了认证功能的接口,接口将分为两种状态:unauthorized authorized
对于接口的状态,可以手工指定,分为以下三种状态:
force-authorized:强制将接口指定为authorized状态
force-unauthorized:强制将接口指定为unauthorized状态
auto:正常的认证状态,如果认证成功,则为authorized状态;如果认证失败,则为unauthorized状态 ;
当接口从Up转到down状态,或者有主机离开发送Logoff消息时,接口状态都会回复到unauthorized状态。
开启了802.1X状态的接口,还有主机模式,称为host-mode,分为single-mode和multiple-mode;
single-mode:此状态为默认模式,表示只有一台机可以连接进来
multiple-mode:表示可以有多台主机连接进来,并且只要有一台主机通过认证,则所有主机都可以访问网络 ;
当认证超时或主机不支持认证时,接口将被划到guest VLAN ,当认证失败时,将被划失败VLAN,也就是受限制的VLAN(restricted VLAN),guest VLAN和restricted VLAN可以定义为同一个VLAN,并且每接配置的。其实即使划入这个VLAN后,也会告诉客户是认证通过,要不然会得不到DHCP。
801.1X认证只能在access模式的接口下开启
正常工作在802.1X下的接口称为port access entity (PAE)authenticator
在认证超时或者不支持认证主机的情况下,主机将会被划入到guest vlan;在IOS 12.2前,是不会将接口划入到guest-vlan中的,如果要开启这个功能,需要在全局模式下输入dot1x guest-vlan supplicant。
配置802.1X认证
1、配置认证方式(本地数据库或者远程服务器认证)
sw1(config)#aaa new-model
sw1(config)#aaa authentication dot1x default local 或
sw1(config)#aaa authentication dot1x default group radius
sw1(config)#radius-server host 10.1.1.1 auth-port 1645 acc-port 1646 key cisco
//定义radius服务器的IP地址为10.1.1.1,密码为cisco,认证端口为UDP 的1645,默认为1812,accounting端口为1646,默认为1813
2、开启802.1X认证
sw1(config)#802.1x system-auth-control //全局开启802.1x认证
sw1(config)#interface f0/0 //在接口下开启802.1x认证
sw1(config-if)#switchport mode access
sw1(config-if)#802.1x port-control auto
3、定义guest vlan 和 restrict vlan
sw1(config)#vlan 10
sw1(config)#vlan 20
sw1(config)#interface f0/0
sw1(config-if)#dot1x guest-vlan 10
sw1(config-if)#dot1x auth-fail vlan 20 //guest vlan restrict vlan可以定义成一个vlan
4、设置802.1x参数
sw1(config)#interface f0/0
sw1(config-if)#dot1x reauthentication
sw1(config-if)#dot1x max-reauth-req 3 //重认证次数(默认2 次)
sw1(config-if)#dot1x auth-fail max-attempt 2 //在划到限制vlan前,可以尝试几次输入(默认3次)
sw1(config-if)#dot1x host-mode multi-host //默认为single-host
5、查看配置
sw1# show dot1x interface f0/0
强制将接口处于authorized状态:
sw1(config)#interface f0/1
sw1(config)#sw mode access
sw1(config-if)#dot1x port-control force-authorized 或者
sw1(config-if)#dot1x pae authenticator