簡介
本文檔介紹思科ISE與作為外部身份源的安全LDAPS伺服器的整合。
必要條件
需求
思科建議您瞭解以下主題:
- 身份服務引擎(ISE)管理的基本知識
- Active Directory/安全輕量型目錄存取通訊協定(LDAPS)的基本知識
採用元件
本文中的資訊係根據以下軟體和硬體版本:
- Cisco ISE 2.6修補7
- 安裝了Active Directory輕型目錄服務的Microsoft Windows 2012 R2版
- 安裝了本機請求方和使用者證書的Windows 10作業系統PC
- 採用152-2.E6影像的Cisco交換器C3750X
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
LDAPS允許在建立目錄繫結時加密傳輸中的LDAP資料(包括使用者身份證明)。LDAPS使用TCP埠636。
LDAPS支援以下驗證通訊協定:
- EAP通用令牌卡(EAP-GTC)
- 密碼驗證通訊協定(PAP)
- EAP傳輸層安全性(EAP-TLS)
- 受保護的EAP傳輸層安全性(PEAP-TLS)
註:LDAPS外部身份源不支援EAP-MSCHAPV2(作為PEAP、EAP-FAST或EAP-TTLS的內部方法)、LEAP、CHAP和EAP-MD5。
設定
本節介紹網路裝置的配置以及ISE與Microsoft Active Directory (AD) LDAPS伺服器的整合。
網路圖表
在此配置示例中,終端使用與交換機的乙太網連線來連線區域網(LAN)。連線的交換機埠配置為802.1x身份驗證,以便使用ISE對使用者進行身份驗證。在ISE上,LDAPS被配置為外部身份庫。
下圖說明所使用的網路拓撲:
在Active Directory上配置LDAPS
在域控制器上安裝身份證書
若要啟用LDAPS,請在符合以下需求的網域控制站(DC)上安裝憑證:
- LDAPS憑證位於網域控制站個人憑證存放區。
- 與證書匹配的私鑰存在於域控制器的儲存中,並且與證書正確關聯。
- 增強型金鑰使用擴充功能包括伺服器驗證(1.3.6.1.5.5.7.3.1)物件辨識碼(也稱為OID)。
- 網域控制站的完整網域名稱(FQDN) (例如,DC1.testlab.com)必須存在於下列其中一個屬性中:「主旨」欄位中的一般名稱(CN)和「主旨替代名稱延伸」中的DNS專案。
- 憑證必須由網域控制站和LDAPS使用者端信任的憑證授權單位(CA)發行。對於受信任的安全通訊,客戶端和伺服器必須信任彼此的根CA和向它們頒發證書的中間CA證書。
- 必須使用通道加密服務提供程式(CSP)生成金鑰。
存取LDAPS目錄結構
若要存取Active Directory伺服器上的LDAPS目錄,請使用任何LDAP瀏覽器。本實驗使用Softerra LDAP Browser 4.5。
1. 建立到TCP埠636上的域的連線。
2. 為簡單起見,在AD中建立一個名為ISE OU的組織單元(OU),並且必須具有一個名為UserGroup的組。建立兩個使用者(user1和user2),並使其成為UserGroup群組的成員。
注意:ISE上的LDAP身份源僅用於使用者身份驗證。
將ISE與LDAPS伺服器整合
1. 匯入「信任憑證」中的「LDAP伺服器根CA」憑證。
2. 驗證ISE管理員證書並確保ISE管理員證書頒發者證書也存在於受信任的證書庫中。
3. 為了整合LDAPS伺服器,請使用LDAPS目錄中的不同LDAP屬性。導航到管理>身份管理>外部身份源> LDAP身份源>增加:
4. 從「一般」頁標設定這些屬性:
主體物件類別:此欄位對應使用者帳戶的「物件」類別。您可以在此使用下列四個類別之一:
使用者名稱屬性:此欄位是包含要求之使用者名稱的屬性名稱。當ISE查詢LDAP資料庫中的特定使用者名稱時,此屬性從LDAPS檢索(您可以使用cn、sAMAccountName等)。在此場景中,使用終端上的user1使用者名稱。
群組名稱屬性:這是保留群組名稱的屬性。LDAP目錄中的組名屬性值必須與「使用者組」頁面上的LDAP組名匹配
群組物件類別:搜尋時會使用此值,以指定可辨識為群組的物件。
群組對映屬性:此屬性定義使用者對映至群組的方式。
證書屬性:輸入包含證書定義的屬性。這些定義可以選擇性地用於驗證客戶端在定義為證書身份驗證配置檔案的一部分時顯示的證書。在這種情況下,會在客戶端證書和從LDAP身份源檢索的證書之間執行二進位制比較。
5. 要配置LDAPS連線,請定位至連線標籤:
6. 在域控制器上運行dsquery,以獲取用於連線到LDAP伺服器的使用者名稱DN:
PS C:\Users\Administrator> dsquery user -name poongarg
"CN=poongarg,CN=Users,DC=testlab,DC=com"
步驟 1.S設定正確的LDAP伺服器的IP地址或主機名,定義LDAPS埠(TCP 636)和管理DN,以便透過SSL與LDAP建立連線。
步驟 2.啟用安全身份驗證和伺服器身份檢查選項。
步驟 3.從下拉選單中,選擇LDAP伺服器根CA證書和ISE管理員證書頒發者CA證書(我們使用證書頒發機構,安裝在同一LDAP伺服器上以頒發ISE管理員證書)。
步驟 4.選取測試連結至伺服器。此時,由於尚未配置搜尋庫,因此不會檢索任何主題或組。
7. 在目錄組織頁籤下,配置主題/組搜尋庫。它是ISE與LDAP的結合點。現在您只能檢索作為結合點子項的主體和組。在此場景中,主題和組都從OU=ISE OU檢索:
8. 在「組」下,按一下「增加」從ISE上的LDAP導入組並檢索組,如下圖所示:
設定交換器
配置交換機進行802.1x身份驗證。Windows PC連線到switchport Gig2/0/47
aaa new-model
radius server ISE
address ipv4 x.x.x.x auth-port 1812 acct-port 1813
key xxxxxx
aaa group server radius ISE_SERVERS
server name ISE
!
aaa server radius dynamic-author
client x.x.x.x server-key xxxxxx
!
aaa authentication dot1x default group ISE_SERVERS local
aaa authorization network default group ISE_SERVERS
aaa accounting dot1x default start-stop group ISE_SERVERS
!
dot1x system-auth-control
ip device tracking
!
radius-server attribute 6 on-for-login-auth
radius-server attribute 8 include-in-access-req
!
!
interface GigabitEthernet2/0/47
switchport access vlan xx
switchport mode access
authentication port-control auto
dot1x pae authenticator
配置終端
使用Windows Native Supplicant客戶端,並且使用LDAP支援的EAP協定之一,EAP-TLS用於使用者身份驗證和授權。
1. 確保PC配置了使用者證書(針對使用者1),且其用途為客戶端身份驗證,並且在「受信任的根證書頒發機構」中,PC上存在頒發者證書鏈:
2. 啟用Dot1x驗證,並選取「驗證方法」作為Microsoft:智慧卡或其他憑證進行EAP-TLS驗證:
3. 按一下Additional Settings,此時將打開一個窗口。選中specify authentication mode覈取方塊並選擇user authentication,如下圖所示:
在ISE上配置策略集
由於使用EAP-TLS協定,因此在配置策略集之前,需要配置證書身份驗證配置檔案,並在以後在身份驗證策略中使用身份源序列。
請參閱身份源序列中的證書身份驗證配置檔案,並在身份驗證搜尋清單中定義LDAPS外部身份源:
現在配置有線Dot1x身份驗證策略集:
在此配置之後,使用EAP-TLS協定對LDAPS身份源對終端進行身份驗證。
驗證
1. 檢查連線到PC的switchport上的身份驗證會話:
2. 為了驗證LDAPS和ISE配置,您可以檢索與伺服器有測試連線的主體和組:
3. 驗證使用者驗證報表:
4. 檢查終端的詳細身份驗證報告:
5. 驗證資料在ISE和LDAPS伺服器之間加密,方法是將ISE上的資料包捕獲帶往LDAPS伺服器:
疑難排解
本節介紹此配置遇到的一些常見錯誤以及如何排除這些錯誤。
- 在驗證報告中,您可能會看到以下錯誤訊息:
Authentication method is not supported by any applicable identity store
此錯誤消息表明LDAP不支援您選擇的方法。確保同一報告中的身份驗證協定顯示受支援的方法之一(EAP-GTC、EAP-TLS或PEAP-TLS)。
2. 測試繫結至伺服器時因發生錯誤而結束。
最常見的原因是LDAPS伺服器憑證驗證檢查失敗。為了排除此類問題,請在ISE上捕獲資料包,並在調試級別啟用所有三個運行時和prrt-jni元件,重新建立問題,並檢查prrt-server.log檔案。
封包擷取抱怨憑證錯誤,而prrt-server顯示:
04:10:20,197,ERROR,0x7f9c5b6f1700,LdapSslConnectionContext::checkCryptoResult(id = 1289): error message = SSL alert: code=0x22A=554 ; source=local ; type=fatal ; message="Server certificate identity verification failed: host IP didnt match SAN IP.s3_clnt.c:1290
注意:LDAP頁面中的主機名必須使用證書的使用者名稱(或任何使用者替代名稱)進行配置。因此,除非主題或SAN中有此類證書,否則它不起作用,否則需要使用SAN清單中具有IP地址的證書。
3. 在認證報告中,您會發現未在身份庫中找到主題。這意味著報告的使用者名稱與LDAP資料庫中任何使用者的「使用者名稱屬性」不匹配。在此場景中,此屬性值設定為sAMAccountName,這意味著ISE在嘗試查詢匹配項時查詢LDAP使用者的sAMAccountName值。
4. 在繫結到伺服器測試期間無法正確檢索主題和組。導致此問題的最可能原因是搜尋基配置不正確。請記住,LDAP層次結構必須從枝葉到根和dc(可由多個字組成)指定。
相關資訊