若要實作本檔案中的組態,您需要任何支援Security Dynamics Incorporated (SDI)安全ID的Cisco Secure版本。
本文件沒有特定需求。
本文件所述內容不限於特定軟體和硬體版本。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
注意:Secure ID通常在安裝完Cisco Secure UNIX (CSUnix)之前安裝。以下說明介紹了如何在安裝CSUnix後安裝SDI客戶端。
在SDI伺服器上,運行sdadmin。告知SDI伺服器該CSUnix電腦是一個客戶端,並指定在CSUnix客戶端上啟用有問題的SDI使用者。
使用nslookup #.#.#.#或nslookup <hostname>命令,確保CSUnix客戶端和SDI伺服器可以相互執行正向和反向查詢。
將SDI伺服器的/etc/sdace.txt檔案複製到CSUnix客戶端/etc/sdace.txt檔案。
將SDI伺服器的sdconf.rec檔案複製到CSUnix客戶端;此檔案可能位於CSUnix客戶端上的任何位置。但是,如果將其置於CSUnix客戶端上與SDI伺服器上的相同目錄結構中,則無需修改sdace.txt。
/etc/sdace.txt或VAR_ACE都必須指向sdconf.rec檔案所在的路徑。要驗證這一點,請運行cat /etc/sdace.txt或檢查env的輸出,以確保根啟動時在根配置檔案中定義VAR_ACE。
備份CSUnix使用者端的CSU.cfg,然後使用以下行修改AUTHEN config_external_authen_symbols區段:
透過執行K80CiscoSecure和S80CiscoSecure回收CSUnix。
如果$BASE/utils/psg顯示Cisco Secure AAA Server Process進程在CSU.cfg檔案被修改之前處於活動狀態,但之後未啟用,則在CSU.cfg檔案的修訂版中出錯。恢復原始CSU.cfg檔案,然後再次嘗試執行步驟6中概述的更改。
要測試安全ID和CSUnix,請執行以下步驟:
確保非SDI使用者可以Telnet到路由器並使用CSUnix進行身份驗證。如果這不起作用,SDI將不起作用。
在路由器中測試基本SDI身份驗證並運行此命令:
aaa new-model aaa authentication login default tacacs+ none
注意:此處假設tacacs-server命令在路由器中已處於活動狀態。
從CSUnix命令列增加SDI使用者以輸入此命令
$BASE/CLI/AddProfile -p 9900 -u sdi_user -pw sdi
嘗試驗證為使用者。.如果該使用者工作,則SDI是可操作的,並且您可以將附加資訊增加到使用者配置檔案中。
SDI使用者可以使用CSUnix中的unknown_user配置檔案進行測試。(如果所有使用者都傳遞給SDI並且都擁有相同的配置檔案,則無需在CSUnix中明確列出使用者。) 如果已經存在不明的使用者設定檔,請透過以下指令將其刪除:
$BASE/CLI/DeleteProfile -p 9900 -u unknown_user
使用此命令增加其他未知使用者配置檔案:
$BASE/CLI/AddProfile -p 9900 -u unknown_user -pw sdi
此命令將所有未知使用者傳遞給SDI。
不使用SDI執行初始測試。如果沒有用於登入身份驗證的SDI密碼、質詢握手身份驗證協定(CHAP)和密碼身份驗證協定(PAP),此使用者配置檔案將無法使用SDI密碼:
# ./ViewProfile -p 9900 -u cse User Profile Information user = cse{ password = chap "chappwd" password = pap "pappwd" password = clear,"clearpwd" default service=permit service=shell { } service=ppp { protocol=lcp { } protocol=ip { } } }
設定檔運作之後,請將「sdi」加入設定檔中,以取代「clear」,如以下範例所示:
# ./ViewProfile -p 9900 -u cse User Profile Information user = cse{ password = chap "chappwd" password = pap "pappwd" password = sdi default service=permit service=shell { } service=ppp { protocol=lcp { } protocol=ip { } } }
此設定檔可讓使用者以下列組合登入:
Telnet到路由器並使用SDI。(此假設已在路由器上執行aaa authentication login default tacacs+命令。)
撥號網路PPP連線和PAP。(假設已在路由器上執行aaa authentication ppp default if-needed tacacs和ppp authen pap命令)。
注意:在PC上的撥號網路中,確保選中了「接受任何身份驗證,包括明文」。撥號之前,請在終端機視窗中輸入下列其中一種使用者名稱/密碼組合:
username: cse*code+card password: pap (must agree with profile) username: cse password: code+card
撥號網路PPP連線和CHAP。(假設已在路由器上執行aaa authentication ppp default if-needed tacacs和ppp authen chap命令)。
注意:在PC的撥號網路中,必須選中「接受任何身份驗證,包括明文」或「僅接受加密的身份驗證」。撥號之前,請在終端機視窗中輸入以下使用者名稱和密碼:
username: cse*code+card password: chap (must agree with profile)
這些組合會產生以下CSUnix偵錯錯誤:
CHAP,密碼欄位中沒有「明文」密碼。使用者輸入code+card而不是「cleartext」口令。CHAP上的RFC 1994 需要明文密碼儲存。
username: cse password: code+card CiscoSecure INFO - User cse, No tokencard password received CiscoSecure NOTICE - Authentication - Incorrect password;
CHAP和錯誤的CHAP密碼。
username: cse*code+card password: wrong chap password
(使用者傳遞給SDI,SDI傳遞使用者,但CSUnix由於CHAP密碼錯誤而失敗。)
CiscoSecure INFO - The character * was found in username: username=cse,passcode=1234755962 CiscoSecure INFO - sdi_challenge: rtn 1, state=GET_PASSCODE, user=cse CiscoSecure INFO - sdi_verify: cse authenticated by ACE Srvr CiscoSecure INFO - sdi: cse free external_data memory,state=GET_PASSCODE CiscoSecure INFO - sdi_verify: rtn 1 CiscoSecure NOTICE - Authentication - Incorrect password;
PAP和錯誤的PAP密碼。
username: cse*code+card password: wrong pap password
(使用者傳遞給SDI,SDI傳遞使用者,但CSUnix由於CHAP密碼錯誤而失敗。)
CiscoSecure INFO - 52 User Profiles and 8 Group Profiles loaded into Cache. CiscoSecure INFO - The character * was found in username: username=cse,passcode=1234651500 CiscoSecure INFO - sdi_challenge: rtn 1, state=GET_PASSCODE, user=cse CiscoSecure INFO - sdi_verify: cse authenticated by ACE Srvr CiscoSecure INFO - sdi: cse free external_data memory,state=GET_PASSCODE CiscoSecure INFO - sdi_verify: rtn 1 CiscoSecure NOTICE - Authentication - Incorrect password;
使用者需要執行CHAP和登入身份驗證;PAP失敗。
# ./ViewProfile -p 9900 -u cse User Profile Information user = cse{ password = chap "********" password = sdi default service=permit service=shell { } service=ppp { protocol=lcp { } protocol=ip { } }
使用者需要執行PAP和登入身份驗證;CHAP失敗。
# ./ViewProfile -p 9900 -u cse User Profile Information user = cse{ member = admin password = pap "********" password = sdi default service=permit service=shell { } service=ppp { protocol=lcp { } protocol=ip { } } }
這些部分包含CSUnix RADIUS過程。
執行下列步驟以測試驗證:
不使用SDI執行初始測試。如果沒有用於登入身份驗證的SDI密碼,此使用者配置檔案將無法使用,它將無法使用SDI密碼:
# ./ViewProfile -p 9900 -u cse User Profile Information user = cse{ radius=Cisco { check_items= { 2="whatever" } reply_attributes= { 6=6 } } }
一旦此設定檔生效,請將「whatever」取代為「sdi」,如以下範例所示:
# ./ViewProfile -p 9900 -u cse User Profile Information user = cse{ radius=Cisco { check_items= { 2=sdi } reply_attributes= { 6=6 } } }
執行下列步驟以測試驗證:
註:不支援使用CSUnix和RADIUS進行PPP CHAP身份驗證。
不使用SDI執行初始測試。如果沒有用於PPP/PAP身份驗證的SDI密碼和「非同步模式專用」,此使用者配置檔案將無法使用SDI密碼:
# ./ViewProfile -p 9900 -u cse user = cse { password = pap "pappass" radius=Cisco { check_items = { } reply_attributes= { 6=2 7=1 } } }
當上述配置檔案工作之後,請向配置檔案增加password = sdi,並增加屬性200=1,如本示例所示(此示例將Cisco_Token_Immediate設定為yes。):
# ./ViewProfile -p 9900 -u cse user = cse { password = pap "pappass" password = sdi radius=Cisco { check_items = { 200=1 } reply_attributes= { 6=2 7=1 } } }
在「高級GUI,伺服器部分」中,確保已設定「啟用令牌快取」。這可以從指令行介面(CLI)確認:
$BASE/CLI/ViewProfile -p 9900 -u SERVER.#.#.#.# !--- Where #.#.#.# is the IP address of the CSUnix server. TokenCachingEnabled="yes"
假設已在路由器上執行aaa authentication ppp default if-needed tacacs和PPP authen PAP命令。在撥號之前在終端窗口中輸入此使用者名稱和密碼:
username: cse password: code+card
注意:在PC上的撥號網路中,確保選中了「接受任何身份驗證,包括明文」。
這些部分包含調試和驗證提示的提示。
以下是正確偵錯的範例:
CiscoSecure DEBUG - RADIUS ; Outgoing Accept Packet id=133 (10.31.1.6) User-Service-Type = Framed-User Framed-Protocol = PPP CiscoSecure DEBUG - RADIUS ; Request from host a1f0106 nas (10.31.1.6) code=1 id=134 length=73 CiscoSecure DEBUG - RADIUS ; Incoming Packet id=134 (10.31.1.6) Client-Id = 10.31.1.6 Client-Port-Id = 1 NAS-Port-Type = Async User-Name = "cse" Password = "?\235\306" User-Service-Type = Framed-User Framed-Protocol = PPP CiscoSecure DEBUG - RADIUS ; Authenticate (10.31.1.6) CiscoSecure DEBUG - RADIUS ; checkList: ASCEND_TOKEN_IMMEDIATE = 1 CiscoSecure DEBUG - RADIUS ; User PASSWORD type is Special CiscoSecure DEBUG - RADIUS ; authPapPwd (10.31.1.6) CiscoSecure INFO - sdi_challenge: rtn 1, state=GET_PASSCODE, user=cse CiscoSecure DEBUG - profile_valid_tcaching FALSE ending. CiscoSecure DEBUG - Token Caching. IGNORE. CiscoSecure INFO - sdi_verify: cse authenticated by ACE Srvr CiscoSecure INFO - sdi: cse free external_data memory,state=GET_PASSCODE CiscoSecure INFO - sdi_verify: rtn 1 CiscoSecure DEBUG - RADIUS ; Sending Ack of id 134 to a1f0106 (10.31.1.6)
調試儲存在/etc/syslog.conf中為local0.debug指定的檔案中。
任何使用者都無法進行身份驗證- SDI或其他:
增加安全ID後,請確保在修改CSU.cfg檔案時沒有發生錯誤。修正CSU.cfg檔案或回覆至備份CSU.cfg檔案。
以下是正確偵錯的範例:
Dec 13 11:24:22 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_challenge: rtn 1, state=GET_PASSCODE, user=cse Dec 13 11:24:22 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_challenge: rtn 1, state=GET_PASSCODE, user=cse Dec 13 11:24:31 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_verify: cse authenticated by ACE Srvr Dec 13 11:24:31 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_verify: cse authenticated by ACE Srvr Dec 13 11:24:31 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi: cse free external_data memory,state=GET_PASSCODE Dec 13 11:24:31 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi: cse free external_data memory,state=GET_PASSCODE Dec 13 11:24:31 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_verify: rtn 1 Dec 13 11:24:31 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_verify: rtn 1
以下是錯誤偵錯的範例:
CSUnix查詢使用者配置檔案並將其傳送到SDI伺服器,但SDI伺服器因密碼錯誤而使使用者失敗。
Dec 13 11:26:22 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_challenge: rtn 1, state=GET_PASSCODE, user=cse Dec 13 11:26:22 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_challenge: rtn 1, state=GET_PASSCODE, user=cse Dec 13 11:26:26 rtp-evergreen.rtp.cisco.com CiscoSecure: WARNING - sdi_verify: cse denied access by ACE Srvr Dec 13 11:26:26 rtp-evergreen.rtp.cisco.com CiscoSecure: WARNING - sdi_verify: cse denied access by ACE Srvr Dec 13 11:26:26 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi: cse free external_data memory,state=GET_PASSCODE Dec 13 11:26:26 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi: cse free external_data memory,state=GET_PASSCODE Dec 13 11:26:26 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_verify: rtn 0 Dec 13 11:26:26 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi_verify: rtn 0 Dec 13 11:26:26 rtp-evergreen.rtp.cisco.com CiscoSecure: NOTICE - Authentication - Incorrect password; Dec 13 11:26:26 rtp-evergreen.rtp.cisco.com CiscoSecure: NOTICE - Authentication - Incorrect password;
以下示例顯示Ace伺服器發生故障:
在SDI伺服器上輸入./aceserver stop。使用者未收到「Enter PASSCODE」訊息。
Dec 13 11:33:42 rtp-evergreen.rtp.cisco.com CiscoSecure: ERROR - sdi_challenge error: sd_init failed cli/srvr comm init (cse) Dec 13 11:33:42 rtp-evergreen.rtp.cisco.com CiscoSecure: ERROR - sdi_challenge error: sd_init failed cli/srvr comm init (cse) Dec 13 11:33:42 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi: cse free external_data memory,state=RESET Dec 13 11:33:42 rtp-evergreen.rtp.cisco.com CiscoSecure: INFO - sdi: cse free external_data memory,state=RESET
修訂 | 發佈日期 | 意見 |
---|---|---|
1.0 |
17-Oct-2001 |
初始版本 |