應用XAUTH技術部署企業VPN遠程訪問
目前由于寬帶接入的快速發展,廣泛的中小商用企業部署IPSec VPN網絡,構建遠程客戶端對公司中心資源訪問的應用已極為普通。在部署此類遠程訪問的IPSec VPN應用時,通常是要設置多個客戶端連接到VPN中心網絡,網管人員的通常做法是為每一個用戶設置不同VPN策略和預置密碼用以區分每一個用戶,此工作量是巨大的,管理也不方便。因此現在市場上主流的IPSec VPN網關設備提供另外一種解決方案,就是在VPN網關中只要配置一條VPN的策略,就可允許多個如高達1000個遠程客戶端的同時接入,然后只要對遠程客戶分發一個相同的策略配置就可以了。這樣一來,由于所有遠程客戶端的VPN配置策略是相同的,對每個遠程客戶不再進行單獨地區別,因此在提高了方便性的同時卻又降低了整個網絡的安全性。
這樣就促使用戶需要這樣一種技術,就是在VPN網關設備中只需要配置一條策略,但要求每個遠程客戶在接入時需要提供不同的用戶名和口令的身份認證,VPN網關設備可以集中管理遠程用戶的合法信息。這樣就大大減少了網絡管理人員的工作負擔和保證遠程客戶接入的安全性,提高了企業的整體工作效率。這個技術就是融合在IPSec VPN里面的XAUTH擴展認證協議,XAUTH為這些需要區分每個用戶進行身份驗證的應用提供了一種身份認證機制,該機制允許VPN網關使用Radius服務器或者本地數據庫記錄中的用戶信息對用戶進行身份認證。
一.為什么需要在 IPSec VPN網絡中部署 XAUTH 應用
RADIUS (Remote Authentication Dial-In User Service, RFC 2865) 是一個管理網絡里多個用戶的驗證,授權,計費(AAA)的協議。RADIUS服務器在數據庫里存儲有效的用戶信息,并能給要求訪問網絡資源的合法用戶授權。
下圖是個典型的遠程客戶到中心VPN網關的應用XAUTH的說明:
圖1:XAUTH和RADIUS使用范例
圖1中當遠程客戶端開始一個VPN連接的請求的時候,VPN網關通過XAUTH(擴展驗證)強行中斷VPN協商的過程,并要求客戶端必須輸入合法的用戶名的密碼進行驗證,網關在接收到來自客戶端提供的用戶名和密碼之后首先在本地數據庫校驗信息是否合法,如果在本地數據庫找不到相對應的用戶名,則將信息轉發到RADIUS服務器進行校驗,如果判斷為合法,則繼續VPN的協商過程并且在連結成功后為遠程客戶端分配IP地址,如果用戶不合法,則中斷VPN連接。
由于XAUTH結合RADIUS給依賴于大量使用VPN技術的商業用戶帶來了前所未有的安全性和方便的管理特性,因而國際很多知名的VPN設備開發商,比如象Cisco,Checkpoint, Netgear公司等,在他們的產品中都開始支持XAUTH。
二.企業實際應用配置舉例
我司因實際應用需要,采購了美國網件NETGEAR公司的Prosafe VPN Firewall FVX538和FVS338以購建公司內部的VPN網絡,全網以廣州的FVX538為中心,申請固定的IP地址和10M的專線,分支機構分布在上海和北京,采用中國網通的ADSL接入,無需固定的IP地址。在總部和分支獲得穩定的VPN連接的基礎上,還需要增加大概100個用戶左右的客戶端VPN通道,以方便移動客戶訪問公司內部的數據庫。由于管理的用戶眾多,而且用戶的流通性非常大,常常需要更新用戶資料,而采用傳統的VPN客戶管理方式,老用戶的資料既不能輕易修改,同時每當有新用戶加入時都要單獨在VPN設備里配置新的VPN策略,從而給系統的維護帶來了極大的困難。經過再三的論證以后,最后決定采用支持XAUTH技術的高性價比的FVX538來解決該問題。系統建成后,全網穩定運行半年多,由于其穩定的性能和出色的維護辦法因而深受公司使用者的好評。現以我司的VPN接入方案為例子,介紹在美國網件公司(Netgear)的Prosafe VPN Firewall FVX538 上如何實現采用XAUTH驗證技術的遠程客戶端的接入和管理。
2.1 產品軟件版本
為了獲得穩定的XAUTH支持,建議先把FVS538的軟件版本升級到1.6.38以上。我司的FVX538目前穩定運行在該版本上,本文章的相關參數設置都以該軟件版本為基礎。而客戶端軟件則選用FVX538光盤上配套的Prosafe VPN客戶端軟件(客戶端軟件版本10.5.1 (Build 8))。
2.2 選擇合適的Radius服務
NETGEAR ProSafe VPN Firewall FVX538支持多數標準的免費/商業發布的RADIUS服務程序,比如:
FreeRADIUS, 一個開放的LINUX原代碼程序
Microsoft Windows IAS
Funk Software Steel-Belted RADIUS
所有的RADIUS Server的配置信息均可以參考廠家提供的標準配置文檔,本文不再詳細介紹每一種RADIUS的配置辦法,。
2.3 VPN防火墻FVX538的XAUTH配置
(1)設置VPN防火墻的XAUTH模式
在配置VPN的IKE策略的時候,選擇要求使用XAUTH驗證,則可以啟用VPN的XAUTH功能。我們在配置該IKE策略的XAUTH的時候,系統會提供兩種模式給用戶選擇。如下:
IPsec Host — 作為客戶端,在連接到中心時需要提供用戶名和密碼
Edge Device — 作為服務器端(中心),要求客戶端必須進行口令驗證。
當VPN防火墻定義為IPsec Host的時候,在建立VPN連接的時候,設備會給服務器端提供用戶名和密碼信息。
當VPN防火墻定義為Edge device模式的時候,VPN網關則要求客戶端必須輸入合法的用戶名的密碼進行驗證,網關在接收到來自客戶端提供的用戶名和密碼之后首先在本地數據庫校驗信息是否合法,如果在本地數據庫找不到相對應的用戶名,則將信息轉發到RADIUS服務器進行校驗,如果判斷為合法,則繼續VPN的協商過程,如果用戶不合法,則中斷VPN連接。
具體設置如下:
1.進入IKE Policies選項并點擊 Edit按鈕進入IKE Policies編輯頁面
2.在 X AUTHENTICATION 項目下面, 選擇Edge Device.
3.在Authentication Type下選擇Generic使用PAP協議, 否則選擇CHAP以使用CHAP協議. 如果你打算使用RADIUS,則您必須在RADIUS上設置相對應的驗證協議。通常PAP 協議簡單實用,而CHAP則更為安全。
4.點擊應用使配置生效。
1.下一步,設置您的VPN防火墻是通過本地數據庫驗證還是通過擴展的RADIUS 服務器驗證。防火墻首在User Database里面定義的本地數據庫的用戶名和密碼信息進行驗證,如果找不到匹配的條件,則轉交到在RADIUS Clien項目里定義的RADIUS服務器來驗證。
(2)配置VPN防火強使用本地數據庫進行驗證
即使你沒有配置RADIUS服務器,你仍然可以使用VPN防火墻自帶的用戶數據庫實現用戶驗證功能。在使用該功能之前,你必須在User Database項目下面配置用戶信息,如下:
1.在User Database項目下面點擊 add按鈕。
2.在User Name和Password里分別填寫相應的信息。
3.點擊Apply按鈕即可起用本地數據庫。
(3)配置防火墻使用RADIUS服務器進行驗證
在Radius Client項目里面,可以定義一個主的RADIUS服務器和備份的RADIUS服務器。防火墻首先和主的RADIUS服務器聯系,如果主的RADIUS服務器沒有響應,則轉到備份的RADIUS服務器上。
在Primary和Backup Server里面的設置介紹如下:
Server Address — RADIUS的IP地址.
Auth port — RADIUS服務器的驗證端口號,RADIUS客戶端會使用該端口和RADIUS服務器通訊,在大部情況下,默認的端口號都不應該修改。
Acct port — RADIUS的計費端口號。在大多數情況下默認的端口號不需要修改。
Secret Phrase— RADIUS客戶端和服務器之間的通訊密鑰。該密鑰必須在服器端和客戶端單獨配置,并要求相互一致。
NAS Identifier —防火墻充當NAS(網絡訪問服務)角色,允許合法的外部用戶訪問網絡。在一個RADIUS會話里面,NAS必須遞交NAS身份標識到RADIUS服務器,在該例子里NAS的身份標識可以是防火墻的IP地址或有效的用戶名,在某些應用場合里,RADIUS服務器有可能要求NAS提供有效的用戶名,而我們則可以在該處填寫合法的用戶名提交到RADIUS服務器進行驗證。然而在大多數場合下面,RADIUS服務器并不要求NAS提供用戶名。
點擊 Apply保存配置
注意:在試驗中我們采用WINDOWS 的IAS作為RADIUS服務器,NAS身份標識不需要在IAS里面配置,同時在IKE策略里的Authentication Type 應該選擇Generic (PAP)的方式。
2.4 IPSec VPN 客戶端軟件XAUTH的配置
在此之前,你必須在不需要XAUTH的情況下,配置好VPN客戶端。測試到VPN防火墻的連接通過后,在配置里面添加相應的XAUTH選項即可:
1.點擊Authentication選擇Proposal 1. 選擇和在VPN防火墻的IKE策略里匹配的各項參數。
2.在Authentication Method, 選擇Pre-Shared Key; Extended Authentication.
3.點擊 floppy disk圖標以保存配置
2.5測試連接
1.在WINDOWS工具欄里右鍵點擊VPN client圖標選擇My Connections \.
1.幾秒鐘后將出現登陸頁面。
2.輸入正確的用戶名和密碼信息后,客戶端軟件會顯示 "Successfully connected to My Connections\"的信息
3.從安裝客戶端軟件的PC上PING對方局域網內的主機,可以PING通
4.遇到故障的時候,可以參考VPN客戶端軟件里的VPN日志以排除故障。
【編輯推薦】