802.1x相关的交换机主要配置内容:
aaa new-model
aaa authentication dot1x default group radius
aaa authorization network default group radius
!---如果只是做802.1x认证,则aaa authorization network这句可不要,如要做VLAN分配或per-user ACL,则必须做network authorization
dot1x system-auth-control
!---注意在12.1(14)EA1版以后802.1x的配置有了修改,此句enable 802.1x
interface FastEthernet0/1
description To Server_Farm
switchport mode access
dot1x port-control auto
dot1x max-req 3
spanning-tree portfast
!---dot1x port-control auto句在F0/1上enable dot1x,另外注意在F0/1口下我并没有给它赋VLAN
radius-server host 1.2.3.4 auth-port 1812 acct-port 1813 key radius_string
radius-server vsa send authentication
!---radius-server host 1.2.3.4句定义radius server信息,并给出验证字串
!---因为要配置VLAN分配必须使用IETF所规定的VSA(Vendor-specific attributes)值,radius-server vsa send authentication句允许交换机识别和使用这些VSA值。
配置802.1x动态分配VLAN所用到的VSA值规定如下:
[64] Tunnel-Type = VLAN
[65] Tunnel-Medium-Type = 802
[81] Tunnel-Private-Group-ID = VLAN name or VLAN ID
这个配置要看图了,另外附带说一点,Cisco文档说ACS 3.0之前是不支持802.1x的。因为802.1x使用radius进行认证,所以在选用认证协议时我选用的是RADIUS(IETF),而缺省是Cisco的TACACS+。
在Interface Configuration中对RADIUS(IETF)进行配置,在组用户属性中选中[64]Tunnel-Type、[65] Tunnel-Medium-Type、[81]Tunnel-Private-Group-ID(见下图)。
在Group Setup中对RADIUS Vendor-Specific Attributes值进行编辑:勾选[64]Tunnel-Type,将tag 1的值选为VLAN;勾选[65] Tunnel-Medium-Type,将tag 1的值选为802;勾选[81]Tunnel-Private-Group-ID,将tag 1的值设为7,表明为VLAN 7(见下图)。设置完后,Submit+Rest。
WINXP本身内置对802.1x的支持,微软在前不久出了一个补丁可以让WIN2K也支持802.1x,需要注意的是WIN2K SP4已经内置了对802.1x的支持,SP3以下可使用此补丁:
安装完此补丁后,802.1x默认是不启动的,可在服务中手动打开Wireless Configuration服务,打开此服务后,在网卡连接属性中会多出一栏Authenticatioin,在此栏中勾选Enable network access control using IEEE 802.1x,同时在EAP type中选中MD5-Challenge。
在所有设置完成后,可以观察到802.1x enable的F0/1口上状态灯显示为黄灯,而在工作站端过一会后会弹出一个认证窗口,在用户名/口令处填入ACS中定义好的用户名/口令,域名处不填,同时观察WIN2K systray处的连接图标,上面会有和认证服务器联系及认证用户的浮动提示,同时F0/1的状态灯也会顺利变为绿灯。 认证通过后检验VLAN值是否已正确分配:先ping VLAN7的网关地址;再ping其它VLAN的网关地址;最后看可否上Internet。