802.1X認證+DHCP+ACS Server+Windows XP

802.1x簡介:
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 交換機一臺
認證服務器:Cisco ACS 4.0
認證客戶端環境:Windows xp sp3
實驗拓撲:
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(config-if)#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
interface 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 interface 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
interface 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 interface 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: Interface Vlan1, changed state to up
00:05:09: %LINEPROTO-5-UPDOWN: Line protocol on Interface 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)#interface fa0/3
Switch(config-if)#dot1x reauthentication
Switch(config-if)#dot1x timeout reauth-period 7200
2小時後重新認證
Switch#dot1x re-authenticate interface fa0/3
現在重新認證,注意:如果會話已經建立,此方式不斷開會話
Switch#dot1x initialize interface fa0/3
初始化認證,此時斷開會話
Switch(config)#interface fa0/3
Switch(config-if)#dot1x timeout quiet-period 45
45秒之後才能發起下一次認證請求
Switch(config)#interface 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)#interface 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)#interface fa0/3
Switch(config-if)#dot1x guest-vlan 2
未得到授權的進入VLAN2,提供了靈活性
注意:1、VLAN2必須是在本交換機激活的,計劃分配給遊客使用;2、VLAN2信息不會被VTP傳遞出去
Switch(config)#interface fa0/3
Switch(config-if)#dot1x default
回到默認設置
在cisco的三層交換機上可以配置DHCP,通過DHCP功能,可以給客戶端分配IP地址,子網掩碼,網關,DNS,域名,租期,wins等
sw3550(config)#ip dhcp pool DHCP
//定義地址池的名稱爲DHCP,這裏可以隨便定義
sw3550(dhcp-config)#network 172.16.0.0 /16
//定義要分配給客戶端的網段和掩碼
sw3550(dhcp-config)#default-router 172.16.0.1
//定義分配給客戶端的網關
sw3550(dhcp-config)#dns-server 218.30.19.40 61.134.1.4
//定義DNS地址,可以設置多個DNS
sw3550(dhcp-config)#doamin-name [url]www.cisco.com[/url]
//定義域名爲[url]www.cisco.com[/url]
sw3550(dhcp-config)#lease 2
//定義租期爲2天
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
1
2
4
單擊Add/Edit,在隨後的窗口設置admin的密碼,我設置用戶和密碼都相同
2,添加AAA 認證Client信息,單擊-Network Configuration 你可以AAA Client信息和AAA Servers信息
5
在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。認證的協議也要和在交換機配置的認證方式相同,否則認證失敗。填寫玩這些信息之後,單擊確認即可
6
3,Guoup Setup ,配置組的授權,授權用戶認證通過之後,能接入網絡
7
在 Rdius IETF 配置欄目下,找到如下圖,
8
注意: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
9
雙擊Wired AutOConfig,啓動類型:自動
10
11
網絡鄰居-本地連接
12
這裏更改默認認證方式,EAP支持無線認證,這裏我們應該選擇MD5 質詢,如圖
13
對於內網用戶,如果是安全用戶可以勾選緩存用戶信息,這樣就可以不用每次認證都輸入密碼。如果是公用計算機,或者是其他的需要,這裏可以不勾選緩存賬戶信息,這樣每次計算機開機之後,在接入網絡時,都需要輸入用戶名和密碼。
14
單擊-MD5-質詢-確定啓用了802.1x認證功能。
 
本地連接已經試圖去嘗試認證了,單擊右下角通知區域提示,輸入認證的用戶名和密碼
15
按圖提示,必須輸入用戶名和密碼,方可認證通過,認證通過之後纔可以從交換機上獲得IP地址等
16
輸入在AAA服務器上定義的用戶名和密碼admin。如果是你工作組環境就無所謂域的概念,登錄到域這項不填,然後單擊確定開始進入802.1X認證會話階段。如下圖正在驗證身份
17
802.1x認證會話結束,客戶端正在請求IP地址
18
19
認證成功,3550交換機從地址池分配第一個IP地址給客戶端,開始-運行-CMD-ipconfig/all
20
爲了使大家瞭解802.1x認證過程,在交換機上開啓debug
sw3550#debug dot1x events
Dot1x events debugging is on
sw3550#
00:47:54: dot1x-ev:dot1x_switch_is_dot1x_forwarding_enabled: Forwarding is disabled on Fa0/4
00:47:54: dot1x-ev:dot1x_mgr_if_state_change: FastEthernet0/3 has changed to UP
00:47:54: dot1x-ev:Sending create new context event to EAP for 0000.0000.0000
00:47:54: dot1x-ev:Created a client entry for the supplicant 0000.0000.0000
00:47:54: dot1x-ev:Created a default authenticator instance on FastEthernet0/3
00:47:54: dot1x-ev:dot1x_switch_enable_on_port: Enabling dot1x on interface FastEthernet0/3
F0/3開啓了認證
00:4
sw3550#7:54: dot1x-ev:dot1x_switch_enable_on_port: set dot1x ask handler on interface FastEthernet0/3
00:47:55: dot1x-ev:FastEthernet0/3:Sending EAPOL packet to group PAE address
發送認證會話消息
00:47:55: dot1x-ev:dot1x_mgr_pre_process_eapol_pak: Role determination not required on FastEthernet0/3.
00:47:55: dot1x-ev:dot1x_mgr_send_eapol: Sending out EAPOL packet on FastEthernet0/3
00:47:55: dot1x-ev:dot1x_mgr_pre_process_eapol_pak: Role determination not required on FastEthernet0/3.
00:47:55: dot1x-ev:Enqueued the eapol pac
sw3550#ket to the global authenticator queue
00:47:55: dot1x-ev:Received pkt saddr =0022.6452.e91e , daddr = 0180.c200.0003,
被認證的客戶端MAC地址0022.6452.e91e
pae-ether-type = 888e.0100.000a
00:47:55: dot1x-ev:Created a client entry for the supplicant 0022.6452.e91e
00:47:55: dot1x-ev:Found the default authenticator instance on FastEthernet0/3
00:47:55: dot1x-ev:dot1x_sendRespToServer: Response sent to the server from 0022.6452.e91e
00:47:55: dot1x-ev:FastEthernet0/3:Sending EAPOL packet to group PAE address
00:47:55: dot1x-ev:dot1x
sw3550#u_mgr_pre_process_eapol_pak: Role determination not required on FastEthernet0/3.
00:47:55: dot1x-ev:dot1x_mgr_send_eapol: Sending out EAPOL packet on FastEthernet0/3
00:47:55: dot1x-ev:dot1x_mgr_pre_process_eapol_pak: Role determination not required on FastEthernet0/3.
00:47:55: dot1x-ev:Enqueued the eapol packet to the global authenticator queue
00:47:55: dot1x-ev:Received pkt saddr =0022.6452.e91e , daddr = 0180.c200.0003,
pae-ether-type = 888e.0100.001b
00:47:55: dot1x-ev:dot1x_sendRespToSer
sw3550#uver: Response sent to the server from 0022.6452.e91e
00:47:55: dot1x-ev:dot1x_vlan_assign_authc_success called on interface FastEthernet0/3
00:47:55: dot1x-ev:RADIUS provided VLAN name 1 to interface FastEthernet0/3
00:47:55: dot1x-ev:dot1x_switch_pm_port_set_vlan: Setting vlan 1 on interface FastEthernet0/3
00:47:55: dot1x-ev:Successfully assigned VLAN 1 to interface FastEthernet0/3
00:47:55: dot1x-ev:dot1x_switch_addr_add: Added MAC 0022.6452.e91e to vlan 1 on interface FastEthernet0/3
00:47:55: do
sw3550#ut1x-ev:dot1x_switch_is_dot1x_forwarding_enabled: Forwarding is disabled on Fa0/4
00:47:55: dot1x-ev:vlan 1 vp is added on the interface FastEthernet0/3
00:47:55: dot1x-ev:dot1x_switch_is_dot1x_forwarding_enabled: Forwarding is disabled on Fa0/4
00:47:55: dot1x-ev:dot1x_switch_port_authorized: set dot1x ask handler on interface FastEthernet0/3
00:47:55: dot1x-ev:Received successful Authz complete for 0022.6452.e91e
00:47:55: dot1x-ev:FastEthernet0/3:Sending EAPOL packet to group PAE address
00:47:55:
sw3550#udot1x-ev:dot1x_mgr_pre_process_eapol_pak: Role determination not required on FastEthernet0/3.
00:47:55: dot1x-ev:dot1x_mgr_send_eapol: Sending out EAPOL packet on FastEthernet0/3
00:47:56: %LINK-3-UPDOWN: Interface FastEthernet0/3, changed state to up
00:47:57: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/3, changed state to up
sw3550#u all
關閉Debug調試
All possible debugging has been turned off
查看IP地址靜態綁定
sw3550#show ip dhcp binding
IP address Client-ID/ Lease expiration Type
Hardware address
172.16.0.152 0100.2264.52e9.1e Mar 03 1993 01:18 AM
認證成功之後,分配給客戶端的IP地址 和當前日期
Automatic
sw3550#show dot1x ?
all Show 802.1x information for all interfaces
interface Interface information to display
| Output modifiers
<cr>
sw3550#show dot1x all
Sysauthcontrol Enabled //已經開啓dot1.x
Dot1x Protocol Version 2 //dot1.x協議版本號
Critical Recovery Delay 100
Critical EAPOL Disabled
Dot1x Info for FastEthernet0/4
-----------------------------------
PAE = AUTHENTICATOR
PortControl = AUTO
ControlDirection = Both
HostMode = SINGLE_HOST
ReAuthentication = Enabled
QuietPeriod = 60
ServerTimeout = 30
SuppTimeout = 30
ReAuthPeriod = 3600 (Locally configured)
ReAuthMax = 2
MaxReq = 2
TxPeriod = 30
RateLimitPeriod = 0
sw3550#show dot1x interface fastEthernet 0/4
Dot1x Info for FastEthernet0/4
-----------------------------------
PAE = AUTHENTICATOR
PortControl = AUTO
ControlDirection = Both
HostMode = SINGLE_HOST
ReAuthentication = Enabled
QuietPeriod = 60
ServerTimeout = 30
SuppTimeout = 30
ReAuthPeriod = 3600 (Locally configured)
ReAuthMax = 2
MaxReq = 2
TxPeriod = 30
RateLimitPeriod = 0
後面附上802.1X認證全過程,
整個802.1x的認證過程可以描述如下
(1) 客戶端向接入設備發送一個EAPoL-Start報文,開始802.1x認證接入; (2) 接入設備向客戶端發送EAP-Request/Identity報文,要求客戶端將用戶名送上來;
(3) 客戶端迴應一個EAP-Response/Identity給接入設備的請求,其中包括用戶名;
(4) 接入設備將EAP-Response/Identity報文封裝到RADIUS Access-Request報文中,發送給認證服務器;
(5) 認證服務器產生一個Challenge,通過接入設備將RADIUS Access-Challenge報文發送給客戶端,其中包含有EAP-Request/MD5-Challenge;
(6) 接入設備通過EAP-Request/MD5-Challenge發送給客戶端,要求客戶端進行認證
(7) 客戶端收到EAP-Request/MD5-Challenge報文後,將密碼和Challenge做MD5算法後的Challenged-Pass-word,在EAP-Response/MD5-Challenge迴應給接入設備
(8) 接入設備將Challenge,Challenged Password和用戶名一起送到RADIUS服務器,由RADIUS服務器進行認證
(9)RADIUS服務器根據用戶信息,做MD5算法,判斷用戶是否合法,然後迴應認證成功/失敗報文到接入設備。如果成功,攜帶協商參數,以及用戶的相關業務屬性給用戶授權。如果認證失敗,則流程到此結束;
(10) 如果認證通過,用戶通過標準的DHCP協議 (可以是DHCP Relay) ,通過接入設備獲取規劃的IP地址;
(11) 如果認證通過,接入設備發起計費開始請求給RADIUS用戶認證服務器;
(12)RADIUS用戶認證服務器迴應計費開始請求報文。用戶上線完畢
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章