本文提供如何透過快取引擎將適用於Microsoft Windows NT的Cisco安全存取控制伺服器(ACS)設定RADIUS驗證的說明。您應該運行Web Cache Communication Protocol Version 2(WCCPv2),以正確執行此過程。有關WCCP版本2的詳細資訊,請參閱在Cisco Cache引擎和路由器上配置Web快取通訊協定版本2。
嘗試此設定之前,請確保符合以下要求:
熟悉適用於Windows或UNIX的Cisco Secure ACS。
熟悉路由器和快取引擎上的WCCPv2配置。
本文中的資訊係根據以下軟體和硬體版本:
實驗環境下的思科快取引擎505,已清除設定
思科2600路由器
思科快取引擎軟體版本2.31
Cisco IOS®軟體版本12.1(3)T 3
適用於Microsoft Windows NT/2000伺服器的Cisco安全ACS
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
本檔案會使用以下網路設定:
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
使用以下步驟配置用於RADIUS身份驗證的快取引擎:
在Cisco Secure ACS for Windows NT中,將快取引擎配置為網路訪問伺服器(NAS)。
在Cisco Secure ACS for Windows NT中配置使用者資訊。
為RADIUS配置快取引擎,並指定主機和金鑰資訊。
radius-server host 172.18.124.106 radius-server key cisco123
為WCCP配置路由器。
快取引擎的命令列應如下所示:
cepro#configure terminal !--- Enter configuration commands, one per line. !--- End with CNTL/Z. cepro(config)#radius-server host 172.18.124.106 cepro(config)#radius-server key cisco123 cepro#
這是適用於Windows NT的Cisco Secure ACS上的快取引擎/NAS配置:
這是Cisco Secure ACS for Windows NT上的「使用者設定」頁面:
本節提供的資訊可用於確認您的組態是否正常運作。
輸出直譯器工具(僅供註冊客戶使用)支援某些show命令,此工具可讓您檢視show命令輸出的分析。
快取引擎命令:
show version — 顯示快取引擎上運行的軟體版本。
show hardware — 顯示快取引擎上的軟體版本和硬體型別。
show running-config — 顯示快取引擎上的實際運行配置。
show stat http usage — 顯示使用統計資訊。
show radius stat [all |主要 | secondary ] — 顯示主和輔助RADIUS伺服器的身份驗證統計資訊。
以下是show version指令輸出的範例:
cepro#show version Cisco Cache Engine Copyright (c) 1986-2001 by Cisco Systems, Inc. Software Release: CE ver 2.31 (Build: FCS 02/16/01) Compiled: 11:20:14 Feb 22 2001 by bbalagot Image text-base 0x108000, data_base 0x437534 System restarted by Reload The system has been up for 3 hours, 52 minutes, 33 seconds. System booted from "flash"
以下是show hardware命令的輸出示例:
cepro#show hardware Cisco Cache Engine Copyright (c) 1986-2001 by Cisco Systems, Inc. Software Release: CE ver 2.31 (Build: FCS 02/16/01) Compiled: 11:20:14 Feb 22 2001 by bbalagot Image text-base 0x108000, data_base 0x437534 System restarted by Reload The system has been up for 3 hours, 52 minutes, 54 seconds. System booted from "flash" Cisco Cache Engine CE505 with CPU AMD-K6 (model 8) (rev. 12) AuthenticAMD 2 Ethernet/IEEE 802.3 interfaces 1 Console interface. 134213632 bytes of Physical Memory 131072 bytes of ROM memory. 8388608 bytes of flash memory. List of disk drives: /c0t0d0 (scsi bus 0, unit 0, lun 0)
以下是show running-config命令的輸出示例:
cepro#show running-config Building configuration... Current configuration: ! ! logging recycle 64000 logging trap information ! user add admin uid 0 password 1 "eeSdy9dcy" capability admin-access ! ! ! hostname cepro ! interface ethernet 0 ip address 10.27.2.2 255.255.255.0 ip broadcast-address 10.27.2.255 exit ! ! interface ethernet 1 exit ! ip default-gateway 10.27.2.1 ip name-server 161.44.11.21 ip name-server 161.44.11.206 ip domain-name cisco.com ip route 0.0.0.0 0.0.0.0 10.27.2.1 cron file /local/etc/crontab ! bypass timer 1 !--- Specify the router list for use with WCCPv2. wccp router-list 1 10.27.2.1 172.18.124.211 !--- Instruct the router to run web cache service with WCCPv2. wccp web-cache router-list-num 1 !--- WCCPv2 enabled. wccp version 2 ! !--- RADIUS Server host and port is defined. radius-server host 172.18.124.106 auth-port 1645 radius-server host 172.18.124.103 auth-port 1645 !--- RADIUS key defined. radius-server key **** authentication login local enable authentication configuration local enable transaction-logs enable rule no-cache url-regex .*cgi-bin.* rule no-cache url-regex .*aw-cgi.* ! ! end cepro#
路由器命令:
show running-config — 顯示路由器上的實際運行配置。
show ip wccp — 顯示所有已註冊服務。
show ip wccp <service-id> detail — 顯示群集中每個快取的WCCP桶分佈。例如,show ip wccp web-cache detail。
以下是show running-config命令的輸出示例:
33-ns-gateway#show running-config Building configuration... Current configuration: ! version 12.1 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption ! hostname 33-Ns-gateway ! logging buffered 64000 debugging enable secret 5 $1$IWJr$nI.NcIr/b9DN7jEQQC17R/ ! ! ! ! ! ip subnet-zero !--- WCCP enabled. ip wccp web-cache ip cef no ip domain-lookup ip domain-name testdomain.com ip name-server 161.44.11.21 ip name-server 161.44.11.206 ! ! ! ! interface Ethernet0/0 ip address 10.1.3.50 255.255.255.0 no ip route-cache cef ! interface Ethernet1/0 description interface to the CE .5 bandwidth 100 ip address 10.27.2.1 255.255.255.0 full-duplex ! interface Ethernet1/1 description inter to DMZ ip address 172.18.124.211 255.255.255.0 !--- Configure the interface to enable the router !--- to verify that the appropriate !--- packets are redirected to the cache engine. ip wccp web-cache redirect out no ip route-cache cef no ip route-cache no ip mroute-cache ! interface Ethernet1/2 description Preconfigured for recreates 10.27.3.0/24 net ip address 10.27.3.1 255.255.255.0 no ip route-cache cef ! interface Ethernet1/3 no ip address shutdown ! ip classless ip route 0.0.0.0 0.0.0.0 172.18.124.1 no ip http server ! ! line con 0 exec-timeout 0 0 transport input none line aux 0 exec-timeout 0 0 line vty 0 4 exec-timeout 0 0 password ww login ! end 33-Ns-gateway#
本節提供的資訊可用於對組態進行疑難排解。
輸出直譯器工具(僅供註冊客戶使用)支援某些show命令,此工具可讓您檢視show命令輸出的分析。
注意:發出debug指令之前,請先參閱有關Debug指令的重要資訊。
快取引擎命令:
debug authentication all — 調試身份驗證。
debug radius all — 顯示Web介面RADIUS模組調試。
type var/log/translog/working.log — 驗證是否快取了URL,以及使用者是否訪問頁面。任何其他型別的消息都應請參閱思科技術支援以作說明。此日誌中最常見的錯誤消息型別是由於使用者未知或服務器金鑰不正確而身份驗證失敗。
以下是debug radius all和debug authentication all命令的輸出示例:
RadiusCheck(): Begin RadiusCheck(): Begin RadiusCheck(): Begin RadiusBuildRequest(): Begin RadiusBuildRequest(): Begin RadiusBuildRequest(): Begin [82] User-Name = "chbanks" [82] User-Name = "chbanks" [82] User-Name = "chbanks" [82] NAS-IP-Address = 10.27.2.2 [82] NAS-IP-Address = 10.27.2.2 [82] NAS-IP-Address = 10.27.2.2 [82] NAS-Port = 80 [82] NAS-Port = 80 [82] NAS-Port = 80 RadiusAuthenticate(): Begin RadiusAuthenticate(): Begin RadiusAuthenticate(): Begin CfgGetRadiusInfo(): Begin CfgGetRadiusInfo(): Begin CfgGetRadiusInfo(): Begin UpdatePassword(): Begin UpdatePassword(): Begin UpdatePassword(): Begin [82] radsend: Request to 172.18.124.106 id=1, length=171 [82] radsend: Request to 172.18.124.106 id=1, length=171 [82] radsend: Request to 172.18.124.106 id=1, length=171 RadiusReplyValidate(): Begin RadiusReplyValidate(): Begin RadiusReplyValidate(): Begin RadiusReplyValidate(): [82] Received 26 byte message back RadiusReplyValidate(): [82] Received 26 byte message back RadiusReplyValidate(): [82] Received 26 byte message back RadiusReplyValidate(): Got a valid response from server 172.18.124.106. RadiusReplyValidate(): Got a valid response from server 172.18.124.106. RadiusReplyValidate(): Got a valid response from server 172.18.124.106. DecodeReply(): Begin DecodeReply(): Begin DecodeReply(): Begin DecodeReply: WEB_YES_BLOCKING default DecodeReply: WEB_YES_BLOCKING default DecodeReply: WEB_YES_BLOCKING default RadiusCheck(): WEB_YES_BLOCKING RadiusCheck(): WEB_YES_BLOCKING RadiusCheck(): WEB_YES_BLOCKING RemoteUserAdd(): Begin RemoteUserAdd(): Begin RemoteUserAdd(): Begin RemoteUserAdd(): Updated remote user chbanks RemoteUserAdd(): Updated remote user chbanks RemoteUserAdd(): Updated remote user chbanks RemoteUserAuthenticate(): Begin RemoteUserAuthenticate(): Begin RemoteUserAuthenticate(): Begin CfgGetRadiusInfo(): Begin CfgGetRadiusInfo(): Begin CfgGetRadiusInfo(): Begin CfgRadiusGetExcludeState(): Begin CfgRadiusGetExcludeState(): Begin CfgRadiusGetExcludeState(): Begin CfgRadiusGetExcludeState(): flag = 0 CfgRadiusGetExcludeState(): flag = 0 CfgRadiusGetExcludeState(): flag = 0 RemoteUserUpdate(): Begin RemoteUserUpdate(): Begin RemoteUserUpdate(): Begin CfgRadiusGetMultipleUserPromptState(): Begin CfgRadiusGetMultipleUserPromptState(): Begin CfgRadiusGetMultipleUserPromptState(): Begin CfgRadiusGetMultipleUserPromptState(): flag = 1 CfgRadiusGetMultipleUserPromptState(): flag = 1 CfgRadiusGetMultipleUserPromptState(): flag = 1 CfgRadiusGetMultipleUserPromptTimeout(): Begin CfgRadiusGetMultipleUserPromptTimeout(): Begin CfgRadiusGetMultipleUserPromptTimeout(): Begin CfgRadiusGetMultipleUserPromptTimeout(): lMultipleUserPromptTimeout = 25 CfgRadiusGetMultipleUserPromptTimeout(): lMultipleUserPromptTimeout = 25 CfgRadiusGetMultipleUserPromptTimeout(): lMultipleUserPromptTimeout = 25 fsgetUsrInfoforIpAddr_radius will be called fsgetUsrInfoforIpAddr_radius will be called fsgetUsrInfoforIpAddr_radius will be called RemoteUserUpdate() returned true RemoteUserUpdate() returned true RemoteUserUpdate() returned true
路由器命令:
show ip wccp — 顯示全域性WCCP統計資訊。