一、 组网测试背景
IEEE 802.1X标准认证协议和动态VLAN的引入,在以太网交换机端口实现对用户认证、授权,,以其实现技术简单、灵活成为企业局域网的首选。利用802.1X和RADIUS认证服务器的授权控制,根据用户不同动态分配交换机端口VLAN属性实现较灵活的控制,实现了一定范围内的移动办公需求。整套方案应用成熟,易于实现,给企业局域网安全管理提供了一种有效的解决途径。
二、组网测试技术简介
1、IEEE 802.1X认证协议
它是基于C/S结构面向端口的访问控制认证协议。交换机端口有几种状态Block、Listen、Learn和Forward,如果端口不配置认证,PC配置相应的地址即可访问网络。通过对端口802.1X的配置,端口处于受控状态Authen和UNAuthen,在未认证状态下,端口仅收发EAPoL等认证包信息,不允许访问网络,如果未配置VLAN,端口处于那个VLAN都未知;在认证通过后,根据用户在服务器上的配置,端口分配相应特性,才可以访问网络。这正是我们所需要的特性。
802.1X体系有三部分构成,客户机、网络设备和认证服务器。
客户机:实现EAPoL的请求和应答,目前Win2000SP4、WIN XP 、WIN2003均内置了认证客户端软件,WIN98SE、Linux需要相应客户端软件的支持,可选用第三方的802.1X认证软件。
网络设备:认证存取点,可以选取支持802.1X认证的无线AP和二层以上的交换机。应注意支持的兼容性,对802.1x和RFC RADIUS支持良好。尽管许多厂商都宣称支持802.1X,存在很多兼容性问题,往往引起工程实施中的难度。
认证服务器:实现客户端身份认证,并下发RADIUS的属性。应选用对IETF支持良好的服务器,常用的有CISCO ACS3.1-3.3,华为的CAMS以及win2003自带的IAS服务。
总之,在工程实施中,应选用对802.1X、RFC RADIUS支持兼容好,注意各应用系统的软件版本,如Windows、交换机IOS和RADIUS的版本,这是工程成功的很重要的部分。
2、动态VLAN
是指根据交换机的某个设定,将端口划分到一个VLAN中。划分VLAN的条件有很多,根据MAC地址(MACBase)、不同的身份认证。RFC RADIUS服务器支持VLAN信息属性,可以把基于064(Tunnel-Type),065(Tunnel-Medium-Type),081(Tunnel-Private-Group-ID)的VLAN设定端口。所有用户及相关信息存于RADIUS服务器上,可以根据用户的变化调整用户的配置.
三、相关要求
1、认证服务器:支持IETF标准的服务器,本测试采用win2003自带的IAS服务作为认证服务器
2、交换机支持VLAN划分和802.1X协议,为了实现动态VLAN和多个二层交换机的Trunk接入,核心应选用三层交换机。本测试采用华为S2008二层交换机和华为S3328三层交换机
3、客户端操作系统比较常用的Windws,Linux等。Win 2000SP4,Win XP以上,Win2003均内置了对802.1X的支持,Win98、Linux需要客户端软件的支持。比较常见的802.1X客户端有cisco、华为和XP系统内置802.1x认证等。本测试采用华为802.1X拨号器进行测试。
四、解决方案
1、测试组网图
2、测试组网说明
测试场景:一台华为S3328三层交换机,version 5.30,作为汇聚核心层,启用路由交换功能;一台华为S2008二层交换机,version 3.10,作为接入层,启用802.1x认证功能;一台服务器,预装windows2003操作系统,并添加Internet验证服务组件(IAS),确保IAS能和启用802.1x的交换机通信
在3328交换机上建立3个VLAN,见下表:
Vlan ID |
VLAN接口地址 |
掩码 |
网络地址 |
备注 |
VLAN 100 |
192.168.0.1 |
255.255.255.0 |
192.168.0.0 |
管理VLAN |
VLAN 200 |
192.168.1.1 |
255.255.255.0 |
192.168.1.0 |
业务测试VLAN1 |
VLAN 300 |
192.168.2.1 |
255.255.255.0 |
192.168.2.0 |
业务测试VLAN2 |
S2008的管理接口地址配置在Vlan100上,ip地址为192.168.0. 2/24(华为二层交换机可以将一个VLAN设置成管理VLAN,并能配置IP地址使该VLAN具备三层功能),并建立vlan200和VLAN300两个业务VLAN,不加入任何端口,级联口改为TRUNK模式,允许VLAN100、VLAN200、VLAN300通过,同S3328级联,S3328交换机接S2008端口做相同设置。交换机和IAS的Radius Key统一设定为test。Rdius服务器接入S3928属于VLAN100,地址为192.168.0.254/24,这样交换机同Rdius互通,。客户端802.1X用华为的客户端软件。
2.华为S3328主要配置内容
sysname S3328 --- 交换机命名为S3928
#
vlan batch 100 200 300 ----建立VLAN100、VLAN200、VLAN300
#interface Vlanif100
ip address 192.168.0.1 255.255.255.0
#
interface Vlanif200 配置各VLAN接口地址
ip address 192.168.1.1 255.255.255.0
#
interface Vlanif300
ip address 192.168.2.1 255.255.255.0
#
interface Ethernet0/0/1
port link-type trunk 将交换机端口1定义成trunk模式,并允许 vlan100 200 300通过,同华为S2008级联
port trunk allow-pass vlan 100 200 300
bpdu enable
ntdp enable
ndp enable
#
interface Ethernet0/0/24
port link-type access
port default vlan 100 将交换机端口24定义成access模式,加入VLAN100 接Radius服务器
bpdu enable
ntdp enable
ndp enable
3.华为S2008交换机主要配置内容
sysname S2008 --- 交换机命名为S2008
#
domain default enable test.com --- 设置缺省域为test.com
#
dot1x
dot1x authentication-method chap ---开启全局802.1X认证协议,认证模式采用chap
#
radius scheme test
server-type standard
primary authentication 192.168.0.254 建立radius test方案,将认证服务器地址指向radius服务器,并配置规划密钥
primary accounting 192.168.0.254
key authentication test
key accounting test
user-name-format without-domain ---配置账号可不加域名
#
domain test.com
scheme radius-scheme test 建立test.com域,该域采用radius test方案认证 ,将VLAN分配用字符串模式,便于RADIUS下
vlan-assignment-mode string 发动态VLAN信息
#
vlan 100
#
vlan 200 根据测试规划,建立3个VLAN
#
vlan 300
#
interface Vlan-interface100 --- 建立管理VLAN接口IP,已使交换机与Radius互通
ip address 192.168.0.2 255.255.255.0
#
interface Ethernet1/0/1 ---交换机端口1设置TRUNK模式,允许通过vlan100、port link-type trunk 200、300,同S3328级联
port trunk permit vlan 100 200 300
#
interface Ethernet1/0/24 ---交换机端口24开启802.1x认证,模式为端口认证
dot1x port-method portbased
dot1x
5、认证服务器主要配置
在windows活动目录中建立VLAN200、VLAN300两个用户组,建立test200、test300两个用户账号,test200加入VLAN200用户组中,test300加入VLAN300用户组中
Test200和test300两个账户均需如下设置
在windows IAS中创建客户端交换机(NAS),地址为S2008交换机管理VLAN接口IP地址
在windows IAS中,新建两个远程访问策略
策略一,名称VLAN200,添加允许全时段接入和匹配活动目录VLAN200用户组,
在策略VLAN200中,编辑拨入配置文件,身份验证选取CHAP验证,同交换机一致
在编辑拨号策略高级选项中,添加
064(Tunnel-Type) 值=VLAN,
065(Tunnel-Medium-Type) 值=802
081(Tunnel-Private-Group-ID) 值=200 (string模式),
作用是认证成功后,对拨入账号所属交换机下发VLAN 200信息,交换机根据信息自动将该账户接入端口加入VLAN200,实现动态VLAN。
策略二,名称vlan300,匹配活动目录VLAN300用户组,在拨号配置文件中081(Tunnel-Private-Group-ID) 值=300 (string模式),其余配置同策略一,图略。
五、测试
经过上述组网配置完成后,我们进行方案可行性测试。首先,在PC机上安装华为802.1X客户端,测试PC机mac地址为00-40-CA-CB-CB-38
在客户端中输入test200账号和密码,根据前面配置,该账号应该使PC机接入VLAN200中,在连接前,首先查看S2008交换机vlan200状态
图中,我们可以看出,在认证前VLAN200除级联口外未包含其他端口。
现在PC机上进行连接,在看交换机状态
通过认证后,pc客户端状态
在S2008交换机中查看VLAN200状态,发现PC所接交换机端口已自动加入VLAN200,在PC上ping VLAN200接口地址192.168.1.1,ping通,测试通过
用账号test300进行测试,交换机端口自动加入VLAN300,ping VLAN300接口地址192.168.2.1同样通过。该方案测试可行,在该方案基础上进行扩展,规划业务和核心路由等,可以组建大型局域网络,例如校园网、企业网等,同时许多运营商也采用此方式来替代PPPOE拨号认证,提供宽带接入。