利用VPN遠程訪問,可以讓用戶在任何位置都可快捷方便地訪問內網資源。但如何對這些VPN訪問進行安全認證,是維護網絡運作不可忽視的問題。使用RADIUS(Remote Authentication Dial-In User Service)服務器,就可以很好地完成任務。RASIUS是一種客戶端/服務器協議,當用戶利用遠程連接工具連接到遠程訪問服務器、VPN服務器(這些服務器稱為RADIUS客戶端)等目標主機上時,這些主機就可以進行用戶身份驗證、授權訪問、記賬操作等相關的任務,提交給RADIUS服務器來完成。
使用域管理員身份登錄某臺服務器,在服務器管理器左側點擊“角色”項,在右側點擊“添加角色”鏈接,在向導界面中點擊“下一步”,在“選擇服務器角色”窗口中選擇“網絡策略和訪問服務”項,在“下一步”窗口中選擇“網絡策略服務器”,之后點擊“安裝”完成安裝操作。對于本機可以在管理工具菜單中點擊“網絡策略服務器”項,來啟動網絡策略服務器。
在本例中,網絡策略服務器隸屬于域環境,所以需要在網絡策略服務器窗口左側選擇“NPS(本地)”項,在右鍵菜單上點擊“在Active Directory中注冊服務器”項,系統會彈出提示窗口。點擊確定按鈕,將網絡策略服務器注冊到其所隸屬的域,或者以域管理員身份登錄RADIUS服 務 器,在PowerShell界面中執行“netsh ras add registeredserver”命令,來實現同樣的效果。
最直接的方法是,以域管理員身份登錄域控制器,在Active Directory管理中心中的“User”中雙擊“RAS and Servers”組,在管理窗口左側點擊“添加”按鈕,將RADIUS服務器添加到該組中。
在本例中,VPN服務器就是RADIUS客戶端。當網絡策略服務器安裝之后,系統默認將其視為RADIUS服務器,這就需要指定RADIUS客戶端。在RADIUS服務器上打開網絡策略服務器控制臺窗口,在左側選擇“NPS(本地)→RADIUS客戶端和服務器→RADIUS客戶端”項,在右鍵菜單中點擊“新建”項,在新建RADIUS客戶端窗口(如圖1)中的“設置”面板中選擇“啟用此RADIUS客戶端”項,在“友好名稱”欄中輸入客戶端名稱(例如“VPN服務”),在“地址(IP或DNS)”欄中輸入VPN服務器的IP地址或者計算機名稱,如果輸入的是計算機名稱,需要點擊“驗證”按鈕,來檢測是否可以解析到VPN服務器的IP地址。
在“共享機密”欄中選擇“手動”項,可以手工輸入密碼。也可以選擇“生成”項,讓系統自動創建密碼。注意,密碼是區分大小寫的,在RADIUS客戶端也需要設置相同的密碼,否則RADIUS服務器將拒絕接受客戶端發送來的各種請求信息。
在“高 級”面 板 中選 擇“Microsoft”或 者“RADIUS Standard”均可。選 擇“Accept-Request消息必須包含Message-Authenticator”項,表示雙方采用了 PAP、CHAP、MSCHAP、MS-CHAP v2安全驗證方式的話,則需要RADIUS客戶端發送消息驗證程序屬性,這樣如有假冒的RADIUS客戶端,就可將其IP找出,這樣可以提高雙方通訊安全性。如果采用的是EAP驗證方式,則默認選中該功能。

圖1 創建RADUIS客戶端

圖2 配置RADIUS客戶端屬性

圖3 添加RADIUS服務器
選 擇“RADIUS客戶端支持NAP”項,表示客戶端需要支持網絡訪問保護功能,即客戶端必須是健康的。保存設置信息后,就可以將VPN服務器變成RADIUS客戶端了。在VPN服務器上打開路由和遠程訪問控制臺,在左側點擊“路由和遠程訪問→VPN(本地)”項,在屬性窗口(如圖2)中的“安全”面板中的“身份驗證提供程序”列表中選擇“RADIUS身份驗證”項。
點擊“配置”按鈕,在彈出窗口中點擊“添加”按鈕,在添加RADIUS服務器窗口(如圖3)中的“服務器名稱”欄中輸入RADIUS服務器的IP,在“共享機密”欄中輸入上述密碼。在“超時”欄中設置合適的數值,默認為5秒。如果VPN服務器將訪問請求發送給該RADIUS服務器后,在預設時間內沒有收到回應信息,就會將驗證請求發送給其他的RADIUS服務器,當然,需要存在多臺RADIUS服務器方可。
如果存在多臺RADIUS服務器,可以在“初始分數”欄中為該RADIUS服務器設置優先級參數,該值越大優先級越高。在發送驗證請求時,VPN服務器會優先將其發送給優先級高的RADIUS服務器。在“端口”欄中可以更改RADIUS服務器的端口號,默認為1812。
選擇“一直使用消息驗證者”項,則需要RADIUS服務器端上選擇“Accept-Request消息必須包含Message-Authenticator”項與之匹配。在“安全”面板中的“記賬提供程序”列表中選擇“RADIUS記賬”項,表示VPN服務器將記賬操作轉交給RADIUS服務器來處理。所謂記賬,指的是記錄每一個遠程連接的狀態,例如接受或者拒絕遠程連接,記錄登錄和注銷操作等。點擊“配置”按鈕可以對其進行配置,具體測操作大體和上述相同,記賬服務的默認端口號為1813。

圖4 查看連接請求策略信息
在一些情況下,單一的RADIUS服務器無法滿足需求,這就需要使用RADIUS代理服務。那么,RADIUS服務器是自行處理連接請求,還是將其轉發給其他的RADIUS服務器,其實是由內置的連接請求策略決定的。當安裝好網絡策略服務器后,其實際上就變成了RADIUS服務器。通過設置連接請求策略,就可以確定是讓該RADIUS服務器來處理連接請求,還是交由另外的RADIUS服務器來處理驗證請求。在RADIUS服務器的網絡策略服務器控制臺(如圖4)左側點擊“NPS(本地)→策略→連接請求策略”項,在窗口右側顯示其內置的名稱為“Use Windows authentication for all users”的連接請求策略,雙擊該策略,在屬性窗口中的“條件”面板中顯示只要一個星期內任意時段都可以連接的控制功能。
在“設置”面板中左側點擊“身份驗證”項,在右側默認選擇“在此服務器上時請求進行身份驗證”項,表示直接由該RADIUS服務器對連接請求進行驗證。如果選擇“將請求轉發到以下遠程RADIUS服務器組進行身份驗證”項,該機就會充當RADIUS代理服務器的角色,在列表中選擇RADIUS服務器組的特定RADIUS服務器。當然,前提是必須創建RADIUS服務器組方可。如果選擇“不驗證憑據就接受用戶”項,則直接允許用戶的任意連接請求。
在網絡策略服務器控制臺左側選擇“NPS(本地)→RADIUS客戶端和服務器→遠程RADIUS服務器組”項,在右鍵菜單上點擊“新建”項,在彈出窗口的“組名”欄中設置RADIUS服務器組的名稱,點擊“添加”按鈕,在打開窗口中的“服務器”欄中輸入目標RADIUS服務器的IP,點擊“驗證”按鈕,如果輸入的是計算機名稱,可以點擊“驗證”按鈕,檢測是否可以解析其IP。
按照同樣的方法,可以添加其他的RADIUS服務器。在上述窗口右側顯示創建的RADIUS服務器組信息,雙擊目標組,在屬性窗口中顯示所包含的所有RADIUS服務器。雙擊目標RADIUS服務器,在屬性窗口中可以更改其地址、身份驗證方式、共享密碼、記賬端口等參數。在“負載均衡”面板中可以設置該RADIUS服務器的優先級和權重,優先級為1表示等級最高。當RADIUS代理服務器在轉發連接請求時,優先級越高,轉發的頻率也越高,即首先轉發給優先級高的RADIUS服務器。如果兩臺RADIUS優先級相同,則比較權重參數,權重越高,轉發的頻率就越高。