AAA服務器實現用戶telnet認證


  AAA簡介


AAA是Authentication,Authorization and Accounting(認證、授權和計費)的簡稱,它提供了一個對認證、授權和計費這三種安全功能進行配置的一致性框架,實際上是對網絡安全的一種管理。
這裏的網絡安全主要是指訪問控制,包括:
      哪些用戶可以訪問網絡服務器。
      具有訪問權的用戶可以得到哪些服務。
      如何對正在使用網絡資源的用戶進行計費。
針對以上問題,AAA必須提供認證功能、授權功能和計費功能。
1. 認證功能
AAA支持以下認證方式:
      不認證:對用戶非常信任,不對其進行合法檢查。一般情況下不採用這種方式。
      本地認證:將用戶信息(包括本地用戶的用戶名、密碼和各種屬性)配置在設備上。本地認證的優點是速度快,可以降低運營成本;缺點是存儲信息量受設備硬件條件限制。
      遠端認證:支持通過RADIUS協議或HWTACACS協議進行遠端認證,設備(如Quidway系列交換機)作爲客戶端,與RADIUS服務器或TACACS服務器通信。對於RADIUS協議,可以採用標準或擴展的RADIUS協議。
2. 授權功能
AAA支持以下授權方式:
      直接授權:對用戶非常信任,直接授權通過。
      本地授權:根據設備上爲本地用戶帳號配置的相關屬性進行授權。
      RADIUS認證成功後授權:RADIUS協議的認證和授權是綁定在一起的,不能單獨使用RADIUS進行授權。
      HWTACACS授權:由TACACS服務器對用戶進行授權。
3. 計費功能
AAA支持以下計費方式:
      不計費:不對用戶計費。
      遠端計費:支持通過RADIUS服務器或TACACS服務器進行遠端計費。
AAA一般採用客戶端/服務器結構:客戶端運行於被管理的資源側,服務器上集中存放用戶信息。因此,AAA框架具有良好的可擴展性,並且容易實現用戶信息的集中管理。

 

ISP域簡介


ISP域即ISP用戶羣,一個ISP域是由屬於同一個ISP的用戶構成的用戶羣。
“userid@isp-name”形式的用戶名中,“@”後的“isp-name”即爲ISP域的域名。接入設備將“userid”作爲用於身份認證的用戶名,將“isp-name”作爲域名。
在多ISP的應用環境中,同一個接入設備接入的有可能是不同ISP的用戶。由於各ISP用戶的用戶屬性(例如用戶名及密碼構成、服務類型/權限等)有可能各不相同,因此有必要通過設置ISP域的方法把它們區別開。
在ISP域視圖下,可以爲每個ISP域配置包括使用的AAA策略(使用的RADIUS方案等)在內的一整套單獨的ISP域屬性。


RADIUS協議簡介


AAA是一種管理框架,因此,它可以用多種協議來實現。在實踐中,人們最常使用RADIUS協議來實現AAA。
1. 什麼是RADIUS
RADIUS(Remote Authentication Dial-In User Service,遠程認證撥號用戶服務)是一種分佈式的、客戶端/服務器結構的信息交互協議,能保護網絡不受未授權訪問的干擾,常被應用在既要求較高安全性,又要求維持遠程用戶訪問的各種網絡環境中。
RADIUS服務包括三個組成部分:
      協議:RFC 2865和RFC 2866基於UDP/IP層定義了RADIUS幀格式及其消息傳輸機制,並定義了1812作爲認證端口,1813作爲計費端口
      服務器:RADIUS服務器運行在中心計算機或工作站上,包含了相關的用戶認證和網絡服務訪問信息。
      客戶端:位於撥號訪問服務器設備側,可以遍佈整個網絡。
RADIUS基於客戶端/服務器模型。交換機作爲RADIUS客戶端,負責傳輸用戶信息到指定的RADIUS服務器,然後根據從服務器返回的信息對用戶進行相應處理(如接入/掛斷用戶)。RADIUS服務器負責接收用戶連接請求,認證用戶,然後給交換機返回所有需要的信息。
RADIUS服務器通常要維護三個數據庫,如圖1-1所示。
      第一個數據庫"Users"用於存儲用戶信息(如用戶名、口令以及使用的協議、IP地址等配置)。
      第二個數據庫"Clients"用於存儲RADIUS客戶端的信息(如共享密鑰)。
      第三個數據庫"Dictionary"存儲的信息用於解釋RADIUS協議中的屬性和屬性值的含義。


另外,RADIUS服務器還能夠作爲其他AAA服務器的客戶端進行代理認證或計費。
2. RADIUS的基本消息交互流程
RADIUS客戶端(交換機)和RADIUS服務器之間通過共享密鑰來認證交互的消息,增強了安全性。RADIUS協議合併了認證和授權過程,即響應報文中攜帶了授權信息。  
用戶、交換機、RADIUS服務器之間的交互流程

 基本交互步驟如下:
(1) 用戶輸入用戶名和口令。
(2) RADIUS客戶端根據獲取的用戶名和口令,向RADIUS服務器發送認證請求包(Access-Request)。
(3) RADIUS服務器將該用戶信息與Users數據庫信息進行對比分析,如果認證成功,則將用戶的權限信息以認證響應包(Access-Accept)發送給RADIUS客戶端;如果認證失敗,則返回Access-Reject響應包。
(4) RADIUS客戶端根據接收到的認證結果接入/拒絕用戶。如果可以接入用戶,則RADIUS客戶端向RADIUS服務器發送計費開始請求包(Accounting-Request),Status-Type取值爲start。
(5) RADIUS服務器返回計費開始響應包(Accounting-Response)。
(6) 用戶開始訪問資源。
(7) RADIUS客戶端向RADIUS服務器發送計費停止請求包(Accounting-Request),Status-Type取值爲stop。
(8) RADIUS服務器返回計費結束響應包(Accounting-Response)。
(9) 用戶訪問資源結束。

RADIUS協議採用UDP報文來承載數據,通過定時器管理機制、重傳機制、備用服務器機制,確保RADIUS服務器和客戶端之間交互消息正確收發。RADIUS報文結構

(1) Code域(1字節)決定RADIUS報文的類型,   

(2) Identifier域(1字節)用於匹配請求包和響應包,隨着Attribute域改變、接收到有效響應包而不斷變化,而在重傳時保持不變化。
(3) Length域(2字節)指明整個包的長度,內容包括Code,Identifier,Length,Authenticator和Attribute。超過長度域的字節被視爲填充,在接收時應被忽略;如果包比長度域所指示的短時,則應被丟棄。
(4) Authenticator域(16字節)用於驗證RADIUS服務器傳輸回來的報文,並且還用於密碼隱藏算法中,分爲Request Authenticator和Response Authenticator。
(5) Attribute域攜帶專門的認證、授權和計費信息,提供請求和響應報文的配置細節,該域採用(Type、Length、Value)三元組的形式提供。
     類型(Type)域1個字節,取值爲1~255,用於指明屬性的類型。表1-2列出了RADIUS授權、認證常用的屬性。
     長度(Length)域1個字節,指明此屬性的長度,單位爲字節,包括類型字段、長度字段和屬性值字段。
     屬性值(Value)域包括該屬性的信息,其格式和內容由類型域和長度域決定,最大長度爲253字節。                      

 

RADIUS協議具有良好的可擴展性,協議中定義的26號屬性(Vendor-Specific)用於設備廠商對RADIUS進行擴展,以實現標準RADIUS沒有定義的功能。
如圖1-4所示的報文結構,Vendor-ID域佔4字節,表示廠商代號,最高字節爲0,其餘3字節的編碼見RFC1700。廠商可以封裝多個自己定義的“(Type、Length、Value)”子屬性,從而在應用中得以擴展。   

 配置案例

一、實驗描述

 
通過AAA服務來實現用戶telnet到交換機的認證

二、環境搭建
1、AAA服務器
ACS server –H3C client 實現AAA認證,server部分的配置
2、ACS server在配置時的環境:
安裝jre,ACS需要JVM的支持,同時要調IE瀏覽器的安全級別,設爲中低以下,否則安裝了通過http://server ip:2002出現空白頁,無法進入配置。
Telnet管理用戶到ACS Radius Server認證由ACS給telnet用戶下發權限,爲了使對應用戶獲取相應權限,需要導入H3C的用戶級別的私有Radius屬性到ACS中,保證用戶權限正常下發。
3、配置步驟
安裝JRE

安裝ACS

 
調節IE


 

在ACS中導入華爲私有屬性
編輯配置文件 h3c.ini
[User Defined Vendor]
Name=Huawei
IETF Code=2011
VSA 29=hw_Exec_Privilege
[hw_Exec_Privilege]
Type=INTEGER
Profile=IN OUT
Enums=hw_Exec_Privilege-Values
[hw_Exec_Privilege-Values]
0=Access
1=Monitor
2=Manager
3=Administrator
[Encryption-Type]
1=1
2=2
3=3
[Frp_Directory]
Type=STRING
Profile=OUT
在cmd中導入配置文件

通過IE進入界面
 

二、實驗配置
 1、配置ACS 

 
Interface Configuaration
 

 

 Group Setup中編輯用戶組

 


在user setup中添加用戶賬戶

查看用戶

 注:其中Group1組的privilege爲access ,RADIUSHuawei組的privilege爲administrator

2、配置交換機
創建radius方案
radius scheme h3c
配置radius 屬性
server-type huawei                                   設置支持何種類型的RADIUS服務器
primary authentication 192.168.100.100  設置認證服務的的IP地址
accounting optional                                  設置用戶計費模式
key authentication 123456                       設置認證共享密鑰(要跟服務器上的相同)
user-name-format without-domain            設置發送給RADIUS服務用戶名的格式
創建ISP域
domain hu
配置ISP域
scheme radius-scheme h3c   配置域使用的AAA方案
radius-scheme h3c              設置域使用的RADIUS方案
access-limit enable 10         指定可容納最大用戶數
accounting optional             設置用戶計費模式
設置終端用戶登錄驗證模式
user-interface vty 0 4
authentication-mode scheme
查看配置如下
<sw5>dis cu
#
 sysname sw5
#
radius scheme system
 server-type huawei
 primary authentication 127.0.0.1 1645
 primary accounting 127.0.0.1 1646
 user-name-format without-domain
radius scheme h3c
 server-type huawei
 primary authentication 192.168.100.100 1812
 accounting optional
 key authentication 123456
 user-name-format without-domain

domain hu
 radius-scheme h3c
 access-limit enable 10
 state active
 vlan-assignment-mode integer
 idle-cut disable
 self-service-url disable
 messenger time disable
                                         
domain system                            
 radius-scheme system
 access-limit disable
 state active
 vlan-assignment-mode integer
 idle-cut disable
 self-service-url disable
 messenger time disable

 domain default enable system
#
 local-server nas-ip 127.0.0.1 key huawei

local-user user1
 password simple 123
 service-type telnet level 3
#
 queue-scheduler wrr 1 2 4 8
#
 web set-package force flash:/wnm2.2.2-0001.zip
#
vlan 1
#
interface Vlan-interface1                
 ip address 192.168.100.25 255.255.255.0
#
interface Aux0/0
#
interface Ethernet0/1
#
interface Ethernet0/2
#
interface Ethernet0/3
#
interface Ethernet0/4
#
interface Ethernet0/5
#
interface Ethernet0/6
#
interface Ethernet0/7
#
interface Ethernet0/8
#
interface Ethernet0/9
#                                        
interface Ethernet0/10
#
interface Ethernet0/11
#
interface Ethernet0/12
#
interface Ethernet0/13
#
interface Ethernet0/14
#
interface Ethernet0/15
#
interface Ethernet0/16
#
interface Ethernet0/17
#
interface Ethernet0/18
#
interface Ethernet0/19
#
interface Ethernet0/20
#                                        
interface Ethernet0/21
#
interface Ethernet0/22
#
interface Ethernet0/23
#
interface Ethernet0/24
#
interface Ethernet0/25
#
interface NULL0
#
user-interface aux 0
user-interface vty 0 4
 authentication-mode scheme
#
return

四、實驗結果

test的級別爲access級別,test1級別爲administror級別

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章