fbpx

Citrix Gateway、StoreFront和CVAD集成通信流程(上篇)

在本系列文章中,我們將討論Citrix Gateway+StoreFront+CVAD的工作流。我將把工作流分為5個步驟,上篇中介紹前兩個步驟,下篇介紹剩餘三個步驟。


1) SSL連接
2) 認證
3) 獲取桌面/應用列表
4) 點擊應用獲取.ica文件
5) 啟動桌面/應用

1、SSL連接

這是用戶在瀏覽器中鍵入Citrix ADC Gateway vServer位址的第一步。如果出現任何問題,我們需要關注用戶端和伺服器之間的SSL握手。

Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

1.1 Client_Hello

Client_Hello是TLS握手的第一個資料包,我們可以檢查其中的以下專案:

  1. SNI(ServerName Indication)
  2. Cipher Suits
  3. Protocol
Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

1.2 Server Hello

伺服器hello是用戶端hello的回應,用於協商來自用戶端hello的協定版本和密碼集,這些內容對於後續的加密非常重要。

Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

1.3 Certificate

伺服器將其證書發送給用戶端,以便用戶端驗證證書是否可信。

Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

1.4 金鑰交換和更改密碼規範

大多數 SSL/TLS 問題都發生在上述 3 個步驟中。“金鑰交換”步驟用於協商資料加密的主金鑰和工作階段金鑰。使用“更改密碼規範”步驟進入資料加密通道。

Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

1.5 HTTPs資料(加密的HTTP請求和回應)

握手之後,客戶機和伺服器發送由SSL/TLS握手中協商的金鑰加密的HTTP請求和回應。

Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

2. 認證

通常,客戶使用LDAP域身份驗證。在本文中,我將以雙因子身份驗證為例(LDAP+Radius)。

Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

2.1 用戶端鍵入用戶憑據並發送到Gateway vServer

Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

注意:這裡我使用NSG的私密金鑰來解密HTTPs資料

2.2 NSG與LDAP伺服器和Radius伺服器通信,以驗證用戶的憑據

A.
bindRequest被發送到LDAP伺服器以授權NSG本身,LDAP伺服器回應成功。這裡的用戶administrator@donnie.com在Citrix ADC的LDAP策略中配置。

B.
searchRequest被發送到LDAP伺服器以檢查登錄用戶是否存在。

Citrix Gateway、StoreFront和CVAD集成通訊流程(上篇)

C.
LDAP伺服器通過searchResEntry回應searchRequest,searchResEntry包含一些LDAP資訊,例如登錄使用者的組資訊。

D.
NSG向LDAP伺服器發送一個新的bindRequest來驗證登錄使用者的密碼。

E.
NSG使用Radius伺服器和Server responses Access-Accept驗證權杖資訊。

2.3 NSG用一個正常的302響應和另一個200響應將URL重定向到StoreFront

2.4 使用者在Store頁面再次點擊“登錄”。向SF發送新的登錄請求。在這裡,使用者不需要再次輸入用戶名/密碼

2.5 NSGSF通信以通過SF的認證

A.
NSG向SF發送請求,SF回應401,請求NSG執行身份驗證。

B.
NSG通過CitrixAGBasic認證方法將使用者資訊發送給SF。

C.
SF通過使用Kerberos協議聯繫AD伺服器來驗證使用者的用戶名和密碼。

D.
SF returns200 OK to NSG.

E.
NSG向用戶端返回相同的200 OK。

發表迴響

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: