1 / 34

實驗 5: 安裝及建置 AAA Server

實驗 5: 安裝及建置 AAA Server. 實驗目的. 本實驗需安裝與建置 AAA Server ,我們使用 Open Source 套件 –FreeRADIUS 來完成 AAA 協議的三項功能。 Authentication 採用 802.1x 控制 User 未經授權之前,無法使用網路資源。 認證協定使用 PEAP (Protected EAP) 。 Authorization

henry
Download Presentation

實驗 5: 安裝及建置 AAA Server

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 實驗 5:安裝及建置AAA Server

  2. 實驗目的 實驗 5:安裝及建置AAA Server • 本實驗需安裝與建置AAA Server,我們使用Open Source套件–FreeRADIUS 來完成AAA協議的三項功能。 • Authentication • 採用802.1x 控制User未經授權之前,無法使用網路資源。 • 認證協定使用PEAP (Protected EAP)。 • Authorization • 我們將在NAS (Network Access Server, 向RADIUS提出請求的網路設備)上建置多個VLAN,並在這些VLAN上預先設定不同的Access Control List。 • FreeRADIUS依據User所在的群組授權不同的VLAN ID, • NAS會依照RADIUS回傳的屬性,將User分配到不同的VLAN下。 • Accounting • 我們將展示FreeRADIUS的計費記錄資訊。

  3. 實驗目的 實驗 5:安裝及建置AAA Server • 本實驗所需的網路拓墣如上。 • FreeRADIUS • 安裝於Linux作業系統。 • Cisco Router 2600 • 為了讓實驗環境(私有網域)存取Internet資源,所以在Router上執行NAT機制。 • Cisco Catalyst 3560 Switch • 連接各台主機的設備,並啟用它的IP Routing功能。 • 我們在Switch上設定802.1x,讓User未經許可前,無法存取網路資源。 • 共新增兩個VLAN(VLAN ID 2, 3),讓User與Guest分別在不同的網域。

  4. 實驗流程 實驗 5:安裝及建置AAA Server • 本實驗大致上可分為下列幾個部份 • FreeRADIUS安裝與設定 • 路由器設定 • 交換器設定 • 利用MySQL 模組記錄FreeRADIUS的資訊 • 最高層認證中心、客戶端與伺服端之憑證製作 • 在WindowXP安裝客戶端憑證與設定PEAP

  5. FreeRADIUS安裝與設定 實驗 5:安裝及建置AAA Server • RADIUS介紹 • FreeRADIUS介紹 • FreeRADIUS安裝 • FreeRADIUS設定 • FreeRADIUS執行與測試 圖片來源:國家高速網路與計算中心

  6. RADIUS介紹 實驗 5:安裝及建置AAA Server • 遠端用撥入驗證服務 (Remote Access Dial In User Service)的應用場合通常有 • 撥接用戶撥入身份認證 • 有線、無線網路存取身份認證 • 其它網路設備管理者登入認證 • 它具備AAA功能: • 驗證(Authentication) • 你是誰? • 授權(Authorization) • 允許你能使用那些服務? • 計費(Accounting) • 使用服務後付費 • 採用UDP封包做為傳輸協定,標準認證使用的通訊埠為1812、計費使用的通訊埠為1813。 • 運作流程(如左圖所示): 使用者向網路設備(NAS)提出存取要求,NAS則傳送一目地埠為1812的UDP封包至本地RADIUS伺服器,若該使用者屬於漫遊身份時,則將由其它RADIUS伺服器代理驗證並回傳驗證結果至NAS。NAS依驗證結果授權使用者是否可以使用網路資源。

  7. FreeRADIUS介紹 實驗 5:安裝及建置AAA Server • 在眾多的RADIUS軟體中,認證機制的支援度最高、功能性最強大。 • Open Source專案,據統計目前約有5萬的軟體開發者。 • 支援的作業系統 • Linux、AIX、Cygwin、FreeBSD、HP-UX、Mac OSX、NetBSD、OpenBSD、OSF/Unix 、Solaris • 支援的硬體平台 • IA-64 (Itanium & Itanium2)、PPC (IBM POWER & PowerPC)、Sparc、x86 • 支援的認證協定 • PAP、CHAP、MS-CHAP、EAP-MD5、EAP-GTC、EAP-TLS、EAP-TTLS、PEAPv0、LEAP、EAP-SIM、Digest • 支援完整的AAA能力。 • 設定方式模組化,容易維護。 • 官方網站 • http://www.freeradius.org/

  8. FreeRADIUS安裝 實驗 5:安裝及建置AAA Server • 左圖為FreeRADIUS於Gentoo Linux上的安裝流程。 • Portage Tree更新至最新版。 • 在安裝FreeRADIUS時,也安裝mysql、ssl等相關模組。 • 設定檔路徑 • /etc/raddb • 記錄檔路徑 • 系統運作及認證記錄檔 • /var/log/radius/radius.log • 計費資訊記錄檔 • /var/log/radius/radacct/<NAS IP位址>/auth-detail-計費日期 • 執行檔路徑 • /usr/sbin/radiusd

  9. FreeRADIUS設定 實驗 5:安裝及建置AAA Server • 系統運作流程 • 程式啟動: 讀取radiusd.conf系統設定 • UDP 1812/1813 • 收到認證請求(Access-Request)封包 • 比對client.conf的認證來源設定 • 若該請求為合法用戶時,則比對領域名稱(Realm),決定認證處理方式 • 比對proxy.conf的領域名稱設定 • 有相同的realm設定 • 使用proxy.conf中所設定的處理方式由其它RADIUS代理認證 • 無相同的realm設定 • 使用users中所設定的預設處理方式比對users中的帳號與金鑰

  10. FreeRADIUS設定- radiusd.conf 實驗 5:安裝及建置AAA Server • 主要的FreeRADIUS系統設定檔,系統啟動時會讀取這個檔案,用以決定執行時的功能及運作方式。 • user = radiusd • 執行時身份為radiusd • group = radiusd • 執行時群族為radiusd • bind_address = * • * 代表監視所有的網路介面 • port = 0 • 使用預設的1812/1813 • proxy_requests = yes • 啟用proxy RADIUS Server代理認證 • 其它的設定可參考radiusd.conf檔,內有詳細的參數說明。

  11. FreeRADIUS設定- client.conf 實驗 5:安裝及建置AAA Server • Client通常是要求認證的網路設備, clients.conf處理與Client端相關的設定(如左所示),所有合法的IP位址或網段都必須記錄在這個檔案之中,若無記錄則視為非法客戶則不提供認證服務。 Client < IP Address>{ secret = <祕密金鑰> Shortname = <名稱> nastype = <NAS型別> } Client 127.0.0.1 { secret = es602 Shortname = localhost nastype = other } 網路設備outgoing_switch, IP ADDRESS為 140.125.32.1 與RADIUS SERVER的通訊 祕密金錀為es602, nastype為other。 Client 140.125.32.1 { secret = es602 Shortname = wire_802dot1X nastype = other } Client < IP Address 網段>{ secret = <祕密金鑰> Shortname = <名稱> nastype = <NAS型別> }

  12. FreeRADIUS設定- users 實驗 5:安裝及建置AAA Server • 設定認證帳號的處理方式 • DEFAULTAuth-Type = System • 使用系統帳號 • DEFAULTAuth-Type = Local • 使用users檔案中的帳號 • DEFAULTAuth-Type = LDAP • 使用LDAP作為認證方式 <帳號名稱> Auth-Type := Local, <帳號驗證條件> 範例: nortel Auth-Type := Local, User-Password ==“es602” Service-Type = Administrative-User 設定使用者帳號nortel,其使用者密碼為es^02, 若使用者認證成功後,RADIUS則回傳授權屬性 Service-Type = Administrative-User

  13. FreeRADIUS設定- proxy.conf 實驗 5:安裝及建置AAA Server • 記載當伺服器收到一個帳號的認證要求時,各個 realm 應該使用(被轉送至)哪些RADIUS伺服器進行處理。 • REALM (領域名稱) • 帳號所屬單位或是伺服器的辨識依據。 • 不區分大小寫。 • ldflag (平衡負載旗標) • FreeRADIUS支援在多個RADIUS之間的Load balancing及Redundancy機制。 • round_robin: 依序循環地選擇符合realm字串的RADIUS伺服器。(Load balancing) • fail_over: 符合realm字串的第一筆RADIUS伺服器,若該伺服器未能正常提供服務時,則由符合realm字串的第二筆記錄的伺服來認證。(Redundancy) • FreeRADIUS預設為fail_over。 • nostrip (不濾除realm字串) • Strip功能為FreeRADIUS收到帳號名稱時,濾除其realm名稱,以便後端模組進行帳號及密碼認證。 • FreeRADIUS預設為strip。 realm <REALM 名稱> { type = radius authhost= <認證伺服器IP>:<port> accthost = <計費伺服器IP>:<port> secret = <祕密金鑰> ldflag = <round_robin | fail_over> <nostrip> } LWC @ edu.tw realm Account

  14. FreeRADIUS設定- proxy.conf-example 實驗 5:安裝及建置AAA Server • 當Local RADIUS收到由LWC@edu.tw的送出Access-Request封包後,比對後發現在proxy.conf有一筆realm記錄符合edu.tw時,則依照該記錄將Access-Request交給Proxy RADIUS驗證。採用round_robin平衡負載的策略和不去除realm的選項(nostrip)以避免Proxy RADIUS無法識別該LWC@edu.tw的帳號。以下是Local RADIUS伺服器的proxy.conf所記錄realm為edu.tw的記錄。 • realmedu.tw{ type = radius authhost = 140.125.32.240:1812 accthost = 140.125.32.240:1813 ldflag = round_robin nostrip }

  15. FreeRADIUS 執行及測試 實驗 5:安裝及建置AAA Server • FreeRADIUS背景執行 • /usr/local/sbin/radiusd • FreeRADIUS除錯模式(emerge時USE旗標需設定) • /usr/local/sbin/radiusd –X • 認證測試工具radtest • radtest <帳號> <密碼> <認證伺服器 IP> <:PORT | 0> <密鑰> • 其它Windows測試工具 • ntradping • 若無法測試成功請檢查 Client.conf、users、proxy.conf及radiusd.conf檔案設定。

  16. 安裝FreeRADIUS與設定 實驗 5:安裝及建置AAA Server • 下列圖示按滑鼠右鍵選擇播放,Step by Step說明安裝過程。 • 影片的播放過程中出現綠框黑鍵時,影片將停留在那個畫面,並請點選它,以便影片繼續進行。

  17. FreeRADIUS Configuration -Authentication 實驗 5:安裝及建置AAA Server • 在FreeRADIUS使用SQL記錄AAA的功能需求 • 先確定已完成FreeRADIUS的安裝與設定並啟用與MySQL Server的模組設定。 • 記錄於SQL資料庫中的使用者帳號與密碼。 • Select * From `radcheck` LIMIT 0,30; • 可在這個資料表(radcheck)新增使用者名稱、密碼。 • 記錄於SQL資料庫中使用者所在群組。 • Select * From `groupcheck` LIMIT 0,30; • 這個資料表可以分派使用者屬於那個群組。

  18. FreeRADIUS Configuration - Authorization 實驗 5:安裝及建置AAA Server • 當使用者認證成功後,RADIUS將回傳的相關授權屬性,其中包含各群組的VLAN name。若對以下屬性、數值對有疑問的話,可以參考RFC2865。 • Select * From `radgroupreply` LIMIT 0,30 • 各NAS廠商對RADIUS支援度各有不同,所以在添購設備之前,建議先行調查。

  19. FreeRADIUS – Accounting information 實驗 5:安裝及建置AAA Server ID 使用者帳號 領域位置 NAS IP位址 計時開始 計時結束 上傳流量 Session歷時 NAS實體位址 USER實體位址 計費中斷原因 下傳流量 USER IP

  20. 路由器設定 實驗 5:安裝及建置AAA Server • telnet 2600 • Configure terminal • interface FastEthernet0/0 • ip address 140.125.32.248 255.255.255.0 • ip nat outside • exit • interface FastEthernet0/1 • ip address 192.168.1.254 255.255.255.0 • ip nat inside • exit • ip route 0.0.0.0 0.0.0.0 140.125.32.254 • ip nat inside source list 1 interface FastEthernet0/0 overload • access-list 1 permit any • 由於我們的實驗在私有網域(Private Network)下進行,其網路拓墣需要使用一路由器,提供網路位址轉譯(Network Address Translation)之用。 • 使用兩個網路介面(Fa0/0、Fa0/1)、分別為inside、outside網路之用。 • 新增一「允許全部IP的ACL」至NAT位址轉譯的條件,主要目的為把由內往外的封包上的來源IP位址,偽裝成Fa0/0的IP位址。 • 該路由器的預設通訊閘為「140.125.32.254」。 • 左邊的設定為在Cisco 2600 Router上的設定。

  21. 交換器設定 實驗 5:安裝及建置AAA Server • telnet 3560 • Configure terminal • aaa new-model • aaa authentication dot1x default group radius • aaa authorization network default group radius • aaa accounting dot1x default start-stop group radius • radius-server host 140.125.32.6 auth-port 1812 acct-port 1813 key cisco • ip classless • ip route 0.0.0.0 0.0.0.0 192.168.1.1 • dot1x system-auth-control • interface FastEthernet0/7 • switchport mode access • dot1x pae authenticator • dot1x port-control auto • dot1x timeout reauth-period 6000 • dot1x reauthentication • dot1x auth-fail max-attempts 2 • spanning-tree portfast • 網路拓墣需要使用一交換器,提供使用者存取網路之用,並與RADIUS Server協同執行802.1x的存取控制。 • 實驗需架設RADIUS,所以我們在Linux平台上安裝FreeRADIUS套件;亦可在Window2000上安裝Cisco ACS套裝軟體。 • 本實驗採用中階的路由交換器網路設備(Cisco Switch 3560),該設備可以完全符合我們的實驗需求(Authentication、Authorization、Accounting的功能)。 • NAS與RADIUS通訊時使用的金鑰為「cisco」。 • 左邊的設定為在Cisco Switch 3560上的設定。

  22. 交換器: IEEE 802.1x 實驗 5:安裝及建置AAA Server • 以連接埠為基礎的網路存取控制(Port-Based Network Access Control)藉由身份認證,來增強安全性的不足。 • 當使用者欲存取Internet網路資源時,首先需經過認證伺服器(FreeRADIUS)的身份認證。當使用者與Switch處於Port Unauthorized狀態時,代表所有的資料將不能通過;唯有認證的封包才允許通行。直到認證成功後,狀態轉變成Port Authorized後,使用者此時才可使用網路資源。 • NAS若要完成該實驗,則需要支援兩種網路協定;一是EAP(802.1X)協定,另外則是RADIUS協定。

  23. 交換器設定(續) 實驗 5:安裝及建置AAA Server • interface Vlan1 • ip address 192.168.1.254 255.255.255.0 • interface Vlan2 • ip address 192.168.2.254 255.255.255.0 • interface Vlan3 • ip address 192.168.3.254 255.255.255.0 • ip dhcp pool dhcp-vlan-1 • network 192.168.1.0 255.255.255.0 • default-router 192.168.1.254 • dns-server 140.125.252.1 140.125.253.2 • ip dhcp pool forguest • network 192.168.2.0 255.255.255.0 • default-router 192.168.2.254 • dns-server 140.125.252.1 140.125.253.2 • ip dhcp pool foruser • network 192.168.3.0 255.255.255.0 • default-router 192.168.3.254 • dns-server 140.125.252.1 140.125.253.2 • 配置三個Virtual LAN • Vlan1 讓Switch、Router們獨立形成一區域網路。 • Vlan2 讓訪客存取的區域網路。 • Vlan3 讓使用者存取的區域網路。 • 啟用三個ip dhcp pool • dhcp-vlan-1 這個設定在本實驗並無太大用途,但它供一般VOIP Phone自動取得IP位址、IP遮罩、通訊閘、DNS資訊。 • forguest 讓訪客能自動取得IP位址、IP遮罩、通訊閘、DNS資訊。 • foruser 讓使用者能自動取得IP位址、IP遮罩、通訊閘、DNS資訊。

  24. 交換器設定(續) 實驗 5:安裝及建置AAA Server • ip access-list extended aclguest • permit tcp any any eq www • permit tcp any eq www any • permit udp any any eq bootps • permit udp any eq bootps any • permit udp any any eq domain • permit udp any eq domain any • vlan access-map guest_vlan 10 • action forward • match ip address aclguest • vlan filter guest_vlan vlan-list 2 • 我們將限制訪客存取網路資源的權限,只開放訪客能使用 • WWW – http protocol • Bootps – dhcp reguest • Domain – dns reguest • vlan filter guest_vlan vlan-list 2 • 2代表Vlan2的VLAN ID Number。

  25. 利用MySQL 模組記錄FreeRADIUS的資訊 實驗 5:安裝及建置AAA Server • 我們將在MySQL記錄FreeRADIUS的認證、授權設定與計費資訊。

  26. 利用MySQL 模組記錄FreeRADIUS的資訊 實驗 5:安裝及建置AAA Server • 當我們匯入db_mysql.sql後,裡面包含許多的資料表,其中 • usergroup • 記錄使用者屬於那個群組。 • 我們新增四筆帳號資訊。 • radcheck • 記錄使用者認證時所需的帳號與密碼。 • 我們新增四筆對應帳號的密碼資訊。 • radreply • 設定RADIUS該回應屬性數值對給使用者。(針對單一使用者)

  27. 利用MySQL 模組記錄FreeRADIUS的資訊 實驗 5:安裝及建置AAA Server • radgroupreply • 設定RADIUS該回應屬性數值對給群組。(針對群組內的使用者)

  28. 利用MySQL 模組記錄FreeRADIUS的資訊 實驗 5:安裝及建置AAA Server • radpostauth • 我們使用phpmyadmin套件來觀察記錄於radpostauth的認證資訊,該資料表包含id數值、使用者名稱、密碼、回應訊息、時戳欄位。

  29. 利用MySQL 模組記錄FreeRADIUS的資訊 實驗 5:安裝及建置AAA Server • radacct • 記錄計費資訊。 ID 使用者帳號 領域位置 NAS IP位址 計時開始 計時結束 上傳流量 Session歷時 NAS實體位址 USER實體位址 計費中斷原因 下傳流量 USER IP

  30. 最高層認證中心、客戶端與伺服端之憑證製作: CA階層信任模型 實驗 5:安裝及建置AAA Server • 憑證 憑證(Certificate)是附上憑證所有人(Owner)的資料(公司名稱、伺服器名稱、個人真實姓名、E-mail、通訊地址等資料),並在後面附上有數位簽章的個人公鑰(Public Key)。憑證上會附有幾個數位簽章,代表這些簽名的單位,已嚴格檢驗擁有這個Public Key的所有人的個人資料與憑證相符,沒有假造。 • 認證中心 認證中心(Certificate Authority, CA)也是一種憑證,上面附有認證中心的資料,主要用以簽發憑證使用,證明憑證所有人和憑證上所記載的資料相符。 • 最高層認證中心 最高層認證中心(Root CA)也是認證中心的一種,與一般認證中心的差別是它不會直接簽發憑證,而是授權給中間的認證中心,讓這些中間的認證中心簽發憑證給用戶。 • 在X.509中,每個合格的憑證皆會有一個簽名,在最下層的憑證(Certificate)上,會有認證中心(CA)的簽名,代表認證中心(CA)檢查過該名使用者的資料;中間的認證中心(CA),也會有管轄它的最高層認證中心(Root CA),代表最高層認證中心授權給它。由於最高層認證中心位處金字塔最頂層,所以無人能簽署,只能自己簽自己。 Root CA CA CA CA Certificate Certificate Certificate Certificate SSL採用的是X.509,由上往下階層式的憑證制度

  31. 最高層認證中心、客戶端與伺服端之憑證製作: CA階層信任模型 實驗 5:安裝及建置AAA Server • 我們將使用OpenSSL製作出PEAP所需要的憑證。 • Root CA Certificate • Client Certificate • Server Certificate • 我們將安裝Root CA的憑證與帶有Private Key的Client憑證至WindowXP中。 Root CA (NYUST_CNL_ADM) Server (forDOT1X) Client (es602) 本實驗需建立的憑證。 Root CA的憑證 Client的附有私鑰的憑證

  32. 最高層認證中心、客戶端與伺服端之憑證製作與設定最高層認證中心、客戶端與伺服端之憑證製作與設定 實驗 5:安裝及建置AAA Server • 下列圖示按滑鼠右鍵選擇播放,Step by Step說明安裝過程。 • 影片的播放過程中出現綠框黑鍵時,影片將停留在那個畫面,並請點選它,以便影片繼續進行。

  33. 在WindowXP安裝客戶端憑證與設定PEAP 實驗 5:安裝及建置AAA Server • 下列圖示按滑鼠右鍵選擇播放,Step by Step說明安裝過程。

  34. 參考資料 實驗 5:安裝及建置AAA Server • FreeRADIUS安裝與管理 國家高速網路與計算中心/唐可忠 • http://www.freeradius.org/ • http://wiki.freeradius.org/Main_Page • http://wlanrc.nchc.org.tw/index1-1.html • HOWTO: EAP-TLS Setup for FreeRADIUS and Windows XP Supplicant • RFC 2865, Remote Authentication Dial In User Service (RADIUS) • IEEE 802.1x Multi-Domain Authentication on Cisco Catalyst Layer 3 Fixed Configuration Switches Configuration Example • 「Configuring 802.1X Port-Based Authentication」, Cisco • 「Combined Avaya and Cisco QoS Strategy」, Cisco • 「Configuring VLAN ACLs」, Cisco

More Related