Aruba 2930F AAA認證

本篇文章會以簡化設定去完成Aruba 2930F的各種AAA認證。

  • 認證伺服器添加,以ClearPass為例。
  • 管理員登入設備AAA認證
  • 如何在ClearPass上區分管理員登入設備與用戶有線認證
  • 有線AAA認證-MAC
  • 有線AAA認證-802.1X
  • 有線AAA認證-Downloadable User Roles
  • 有線AAA認證-User-Based Tunneling

2930F版本: WC_16_11_0013

ClearPass版本: 6.10.8.188650

Mobility Gateway版本: AOS 8.10.0.8

會寫這篇文章,是因為關鍵設定總藏在滿滿LAB文件中,寫成文章放上來讓大家有個參照。

認證伺服器經常使用Radius Server,而Radius Server設定方式很簡單,在Network Access Server(NAS)上設定Radius Server的IP與約定的Key,在Radius Server上設定NAS IP與約定的Key。

本文NAS為Aruba 2930F Switch。

參考官方文件 2930F Security Guide

部落格文章

目錄

  1. 目錄
  2. 環境
  3. 認證伺服器添加,以ClearPass為例。
  4. 管理員登入設備AAA認證
  5. 如何在ClearPass上區分管理員登入設備與用戶有線認證
  6. 有線AAA認證-MAC
  7. 有線AAA認證-802.1X
  8. 有線AAA認證-UserRole
  9. 有線AAA認證-Downloadable User Roles
  10. 有線AAA認證-User-Based Tunneling

環境

設備IP Address
Aruba 2930F192.168.255.200
Aruba ClearPass192.168.255.201

認證伺服器添加,以ClearPass為例。

radius-server host 172.16.3.37 key arubaaruba
aaa server-group radius "cppm" host 172.16.3.37
aaa server-group radius "mgmt_login" host 172.16.3.37

上述指令建立兩個Group,考量到管理員登入跟有線用戶驗證可能會有不同的認證伺服器。因為此例只有一個ClearPass,所以兩ServerGroup都用同一個ClearPass

管理員登入設備AAA認證

aaa authentication ssh login radius server-group "mgmt_login" local
aaa authentication ssh enable radius server-group "mgmt_login" local
aaa authentication login privilege-mode

鑑於現今網路設備是用SSH登入,因此這邊AAA認證針對SSH去設定,而HTTP跟Telnet都建議不要用。

這裡針對SSH登入,第一個去向ServerGroup「mgmt_logon」去驗證,如果ServerGroup「mgmt_logon」失聯(Timeout)才使用Local的帳密登入。

而Login成功在預設並不會直接進入Privilege Mode,需要在2930F輸入以下指令,並且在ClearPass回傳對應Radius屬性跟值,就能讓對應的帳號一Login就拿到Manage的權限。

aaa authentication login privilege-mode

輸入上方指令,在Login時,就會依照回傳Radius屬性與值,去決定該帳號是否該直接進入Privilege Mode還是User Mode。

在管理員登入時,一般預設使用PAP認證方法,因此ClearrPass的服務上也要使用PAP。

如何在ClearPass上區分管理員登入設備與用戶有線認證

用戶有線認證一定是接線至某個介面,而該介面有啟用驗證,然後發起整個驗證。至於管理員登入則是連至管理IP,像是放在Mgmt Port或是Mgmt VLAN IP,最常見是使用Mgmt VLAN IP。

因此,最大的差異在於,送驗證訊息給認證伺服器時是否帶有實體介面。

用戶有線認證有,管理員登入設備沒有。

因此,在CPPM就能以兩條服務,分別是NAS-Port存在與不存在,分別對應到用戶有線認證、管理員登入設備。

有線AAA認證-MAC

aaa authentication mac-based pap-radius server-group "cppm"
aaa port-access mac-based 3
aaa port-access mac-based addr-format multi-colon

MAC認證最重要的是MAC格式,也就是英文大寫、小寫、分隔符的差異。

此例為英文小寫,分隔符「:」的範例。

並且只針對第3介面啟用MAC認證。

在CPPM的服務上,身份驗證方法擺入MAC AUTH。我這邊驗證使用兩種,第一種是以MAC OUI去建立,第二種是以CPPM上的本地用戶。兩者MAC格式都是用英文小寫,分隔符「:」。

當設定好後,回到交換器上,可以使用查看目前用戶有線存取的情況。

 show port-access clients

有線AAA認證-802.1X

一般筆電接有線網路是沒有啟用802.1X,需要在「服務」中啟用。之後在有線網路卡內容中,才能看到驗證頁籤。

有線端做802.1X,是專門給網域內電腦跟使用者使用,因為需要特別設定才能作用。一旦啟用之後,運作模式就跟無線802.1X相當。

以下範例是針對第5介面,啟用802.1X認證。

aaa authentication port-access eap-radius server-group "cppm"
aaa port-access authenticator 5
aaa port-access authenticator active

因為有線做MAC認證居多,而再啟用802.1X認證是附加在MAC認證已經做好之後。如果要讓設備先進行MAC認證,再進行802.1X認證,可以使用以下指令。

aaa port-access 5 auth-order mac-based authenticator

有線AAA認證-UserRole

認證通過,預設對於認證通過的全通(allowall),沒通過的全被拒絕(denyall)。

只有通與全不通的Role總數是不夠的靈活能面對權限控管需求,身為第一關卡的Switch,可以使用UserRole,UserRole是寫好的存取權限,而驗證通過時,認證伺服器會傳送屬性與值,NAS設備收到就會將該用戶的存取權限設定為該值。

例如AP走MAC認證,ClearPass回傳特定屬性其值為ArubaAP,Switch將同樣名為ArubaAP存取權限套用在該AP上。

2930F身上也要建好對應的User Role。

class ipv4 "all2"
     10 match ip 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
   exit
policy user "allowall2"
     10 class ipv4 "all2" action permit
   exit
aaa authorization user-role name "ArubaAP"
   policy "allowall2"
   vlan-id 2
   logoff-period 0
   cached-reauth-period 60
   device
      poe-priority low
      admin-edge-port
      port-mode
      exit
   exit

有線AAA認證-Downloadable User Roles

Aruba Downloadable User Roles(DUR)適用於中、大型場域部署,透過由ClaerPass做集中化Role權限派發,可避免網管人員在調整使用者網路權限時,需要逐台登入的費工以及因疏忽而未改動的風險。

使用DUR,Aruba NAS會以Https連入ClearPass,並且使用具有DUR權限的帳密登入ClearPass,然後下載Role權限,並且派發給用戶端。

因此,除了FireWall需要打開對應的Port之外,最重要的是,Aruba NAS需要信任ClearPass,至於怎麽樣才能信任?

如果想用影片瞭解關於憑證與HTTPS的信任,可以看此Youtube影片

總之,ClearPass上的HTTPS憑證上的憑證鏈都需要全部信任。Root CA憑證可能已經內置,中繼CA憑證與伺服器憑證都需要匯入NAS設備的信任清單內。

※CPPM上的HTTPS憑證有ECC、RSA,要需要留意CPPM的HTTPS是使用哪一種。預設使用ECC。

好在2930F可以透過一行指令信任CPPM的憑證,其實也就是簡化上段敘述步驟。(前提是已經加入ClearPass為認證伺服器)

radius-server host 192.168.255.201 clearpass
crypto ca-download usage clearpass force

HTTPS憑證能被信任之後,後續操作難度的就大幅減少。

aaa authorization user-role enable download

radius-server cppm identity dur key arubaaruba

在ClearPass加入名為「dur」管理員用戶帳密

NAS設備從ClearPass下載Role權限配置,但是,Aruba NAS有Mobility Gateway(Controller)、AOS Switch、AOS CX Switch,每種設備OS所用的Role語法都有不同,因此,我建議以標準級別的強制配置文件去設定,進階級別要是語句語法打錯就會出問題,這適合高手境界使用。

角色配置模式建議使用「標準」。

關於Role權限,這邊都會以類(Class)做初步配對,類只是框下特定IP或是其他,至於permit還是deny是再交由策略(Policy)決定的。

這裡以名為「all」的類(class),並且符合所有IP。

然後以名為「allowall」的策略(policy),並且Permit名為「all」的類。

透過這樣的概念,我們能組合出三種OS都能適用的類與策略,在服務中使用「標準」配置模式,也可避免對三種OS不同語法不熟而在「進階」配置模式部署錯誤的風險。

關於強制配置文件名稱,我建議以「DUR_<OS Type>_<Role Name>」去取名,並且使用將同一OS設備做成設備組套用進來。

針對認證來說,需要在第一個關卡驗證。如果是接至AP,那AP會做第一把關,因此建議針對AP DUR使用端口模式(Port Mode)。

如果接AP介面不用端口模式,走Bridge Mode的SSID,無線使用者還會被有線再驗證一次。

一般來說,有線用戶不設定端口模式,這樣從這一介面來的設備都會被驗證,才能避免後面再被私接其他設備。

有線AAA認證-User-Based Tunneling

典型的AAA認證後,流量基本上是當地模式。而Aruba 2930F(ArubaOS-Switch),可以像個AP把通過認證後的用戶流量導回MobilityController上。

流量回到Controller的優點是: 簡易部署以及集中控管。

蠻多場域會把有線跟無線網段拆開,這使得UBT一旦運用上,就會讓有線搭上無線控制器,有時候就不會想到這點。

參考文件

在Switch上將MobilityController設定完Tunneled-node-server之後,一臺邏輯上的Switch將會佔用MobilityController上的License: AP、PEF各一個。

假設控制器IP是192.168.255.202

tunneled-node-server
   controller-ip 192.168.255.202
   mode role-based reserved-vlan 4001
   exit

reserved-vlan的功能是Switch用來包裝有線用戶的VLAN給MobilityController,Controller將預設該有線用戶為該VLAN。例如本文使用4001,UBT建成之後,就會通Controller的VLAN4001。

一旦下了reserved-vlan,Switch設定中就會自動生成該VLAN。

接著要如何區分什麼UserRole會走本地?還是走Tunnel?

全看UserRole內有沒有「tunneled-node-server-redirect secondary-role <user role>」

因此,除了Local UserRole也可以使用DUR,下方是UserRole的範例。

class ipv4 "all"
10 match ip any any
exit
policy user "allowall"
10 class ipv4 "all" action permit
exit
aaa authorization user-role name "ubt-guest"
policy "allowall"
tunneled-node-server-redirect secondary-role "allowall"
device
admin-edge-port
exit
exit

有線用戶有很多種類,只能設定一種VLAN是不足夠的。

tunneled-node-server-redirect secondary-role中,我們指定使用Controller本地的UserRole「allowall」,如果要將其VLAN不使用reserved-vlan,那需要在Controller的Role指定其VLAN。

Show tunneled-node-mgr tunneled-users