本文以Microsoft Azure Activity Directory為整合例子。
OAuth 是 Open standard Authorization 的縮寫,因為變成開放標準,所以可以整合一些社群網站,一個網站就利用取得該社群網站的資訊去註冊會員。
由於雲端化服務,要串接授權服務是透過API,利用ID與Secret去使用API得到權限,與網路傳統的本地端以帳密或是通訊埠對接差異極大。API需要先在後台創造使用權限,然後一番操作才能產生ID與Secret,再放入Clearpass的設定中。
在Aruba Support Portal中可以透過關鍵詞找到Clearpass與其他平台整合的文件,這次的參考文件是《Onboard and Cloud Identity Providers 》。
所需條件:
Microsoft Azure
Clearpass
DNS host for Clearpass
Https Certificate
要整合Azure AD,首先要有個Microsoft Azure帳號,第一次註冊會送一些點數使用,但使用上不會用到收費項目,可以大膽使用。
在Microsoft Azure上的設定,請對應參考文件設定,如果順利完成,可以得到API要使用的應用程式ID與其Secret,並且在Clearpass onboard中設定完成。
使用者使用流程:
使用者設備連線到onboard設定用ssid,跳轉至設定網頁
選擇 Microsoft Azure AD,並且登入帳號密碼。(※如果非該AD內的帳號,會跳出錯誤通知)
得到Onboard連線的SSID設定檔,Windows跟MAC可以直接安裝設定檔,而Android跟iOS需要透過安裝「ClearPass QuickConnect」才能打開並執行設定檔。
使用者手動從設定用SSID切換至連線用SSID。
成功連線。
兩種SSID
第一種設定用SSID是Open的認證方法,目的是為了讓使用裝置能到指定網頁登入,並取得相關設定檔才能連上連線用的SSID。此SSID設定的需要受限制,在白名單盡量最少開放能讓各平台可以運作的Domain Name,除了基本的MS,還要開Google Play讓使用者能下載應用程式。開放太多,也會使得跳轉至登入網頁失靈。
第二種連線用SSID是透過第一種SSID下載的設定檔安裝後才能連線,設定檔裡面包含憑證,這憑證會於802.1x中以TLS協定,對Clearpass來說收到Client的憑證,會去向OSCP URL做查閱,看看該憑證是否為有效的憑證。
在CPPM中,身分驗證方法的OCSP URL要指向簽發使用者憑證的CA
因此簽發設備憑證CA的OCSP URL是很重要的,如果不是用CPPM預設的Local CA,就要記得修改才會正常。
設定流程:
設定規劃與前準備:決定兩種SSID的名稱分別為何?CPPM DNS Name?能被信任的Https Certificate?Onboard License?要用於簽發使用者憑證的CA?
Microsoft Azure AD設定:請參考《Onboard and Cloud Identity Providers 》
Clearpass設定
Controller設定
Clearpass設定
首先進入Policy Manager安裝憑證。
Radius憑證以憑證要求簽名(CSR)向簽發使用者憑證用的CA做簽署,然後放回去。
Https憑證則直接匯入.pfx檔,可以順帶連根與中間CA都匯進去。若是拆開的,根與中間CA要去信任列表手動匯入。
本文是以ClearPass Onboard新增一個Root CA,名為Azure Oauth,若直接使用內建的 Local Certificate Authority也可以。
在Onboard => 配置 => 網路設定,新增一個Profile,SSID名稱為連線用的SSID名稱
在Onboard => 部署和預配 => 配置文件,新增一個Profile,在網路選擇剛剛在網路設置新增的Profile
在Onboard => 部署和預配 => 預設配置,新增一個Profile,配置文件改成上一部新增的Profile。 證書頒發機構與TLS證書頒發機構
在Web-登錄分頁,勾選「使用雲標示/社交網路憑證啟用登錄」,並且添加新身分驗證提供程序。
客戶端ID與密鑰請對照參考文件取得,端點屬性選擇「創建其他端點屬性,已將任何數組轉換為JSON」
添加按鈕html至頁角或頁眉html,Microsoft Azure AD按鈕會出現在該位置。
在Onboard客戶端,地址部分填上CPPM FQDN,按保存。此時CPPM的DNS要能解析出該名稱,否則無法按保存。
按啟動,並且保存該網頁(CPPM Onboar Device Provisioning)的URL,用於設定用SSID的Captive Portal。
在Policy Manager => 配置 => 服務模板與嚮導 ,使用「Onboard」模板。※不要點到「僅Onboard服務」。
在配置 => 服務,會多出三個關於onboard的服務
選擇 Authorization 服務 => 授權,新增 Social Login 與 Endpoint。
選擇 Authorization 服務 => 身分驗證,選擇「EAP TLS With OCSP Enabled」然後複製,改名為「EAP TLS With OCSP Enabled_v2」,並且取消選取「所需授權」。OSCP URL改為簽發使用者憑證CA的OCSP URL。
最後到 配置 => 網路 => 設備,新增Controller。
Controller設定
透過CLI連入Controller,加入以下白名單。
Azure AD白名單
netdestination microsoftazuread
name privacy.microsoft.com
name aadcdn.msauthimages.net
name passwordreset.microsoftonline.com
name passwordsleakcheck-pa.googleapis.com
name *.google.com
name aadcdn.msauth.net
name aadcdn.msftauth.net
name www.microsoft.com
name login.microsoftonline.com
name *.aadcdn.microsoftonline-p.com
name aad.portal.azure.com
!
Android白名單※需要執行google play下載QuickConnect
netdestination googleplay
name android.clients.google.com
name *.googleapis.com
name *.gvt1.com
name *.ggpht.com
name *.googleusercontent.com
name *.gstatic.com
name clients.l.google.com
name accounts.google.com
name accounts.youtube.com
name connectivitycheck.android.com
name connectivitycheck.gstatic.com
!
CPPM白名單 ※二擇一
netdestination cppm
host <cppm ip>
!
netdestination cppm-onboard-provisioning
name <cppm onboard provisioning url>
!
新增Radius CPPM。
Configuration => Authentication => Auth Servers,新增Radius Server CPPM。
Configuration => Authentication => L3 Authentication,新增Captive Portal Profile,Login Page填入CPPM Onboar Device Provisioning的url,白名單選擇這次新增的白名單,再去Server Group更改為CPPM。
依需求新增Roles,SSID open-test需要使用Captive Portal,新增一個對應名稱的Role,Show Advanced View => More => Authentication,將Captive portal profile選擇剛剛新增的Profile。
在Policies,新增logon-control與captiveportal。
Configuration => WLANs,新增設定用SSID(test-open)、Security為open、Default Role為test-open(Captive Portal Role)。 連線用SSID(test-cppm)、Security為WPA2企業、Default Role為authenticated,勾選Server-derived roles可搭配CPPM作不同角色的權限分配。
Configuration => Authentication => AAA Profiles,將連線用的SSID其Server group改為CPPM。
實際測試
連上設定用SSID之後,輸入一個不允許DNS通行(即白名單之外)的網址,網頁會被redirect到設定網頁,按下按鈕Microsoft Azure AD,進行登入。
Windows (11)
登入成功後會下載ArubaQuickConnect.exe,然後使用系統管理員權限去執行它。安裝完成後,設備會直接連線到連線用SSID。
Android (13)
在使用Microsoft Azure AD登入之後,會先詢問有沒有安裝ClearPass QuickConnect,後面的設定檔要使用該APP才能安裝。下一步會自動下載quick1x.networkconfig,使用ClearPass QucikConnect開啟。順利安裝完成後,仍需要手動切換至連線用SSID。
iPadOS (15.6~15.7) iOS (15.5)
因為自動配置的網路設定檔安全層級為WPA,並不是正確的WPA2企業,所以安裝完後無法正常使用。
在使用Microsoft Azure AD登入之後,會先下載憑證,注意!憑證下載好後一定先進設定安裝,再繼續下載配置檔跟進設定安裝配置檔。不能一次下載兩個再一口氣安裝。