Cisco IPSec VPN利用Windows RADIUS 认证服务图解

在 Cisco ASA 設定 IPSec VPN Client 已接採用憑證來取代 VPN Group Name 及 Group Password 來進行連接驗證,但登入 VPN 還必須在 Cisco ASA 中建立本機帳號太麻煩,因此本篇實作為 Cisco ASA 為 RADIUS Client 角色而 Microsoft IAS (RADIUS Server) 配合 Windows AD 來達到對 VPN Client 身份驗證的機制進而 VPN 播入提高安全性。
實作環境
•Cisco ASA 5510 Series * 2台
◦Cisco Adaptive Security Appliance Software Version 8.0(4) – asa804-k8.bin
◦Device Manager Version 6.1(3) – asdm-613.bin
◦RADIUS Client IP: 192.168.1.254
•Windows Server 2003 R2 Standard Edition SP2
◦RADIUS Server IP: 192.168.1.10
◦RADIUS 共用密碼: 12345678
安裝及設定
Microsoft Windows 2003 Server IAS (RADIUS) 設定
安裝網際網路驗證服務 (IAS)
請依如下步驟安裝 IAS
【開始】 >> 【控制台】 >> 【新增或移除程式】 >> 【新增/移除 Windows 元件】 >> 【Networking Services】 >> 【詳細資料】 >> 【網際網路驗證服務 (IAS)】 >> 【確定】
安裝完畢後確定 IAS 服務有啟動且並使用下列指令來確定系統有 Listen UDP Port 1645、1646
C:\>netstat -na | find “:16”
UDP 0.0.0.0:1645 *:*
UDP 0.0.0.0:1646 *:*設定 RADIUS 可向 AD 查詢使用者帳號資訊
設定 RADIUS Server 可向 Active Directory 查詢使用者帳號資訊,驗證成功後才使 Cisco VPN Client 能播入 VPN Network 成功反之則失敗,下列步驟為將 RADIUS Server 登記至 Active Directory 以便屆時的查詢動作
方式一、在 Active Directory 中登錄伺服器
1.開啟【網際網路驗證服務】
2.點選【網際網路驗證服務(本機)】 >> 【右鍵】 >> 【在 Active Directory 中登錄伺服器】
方式二、使用 netsh 指令
1.開啟【命令提示字元】
2.鍵入指令 【netsh ras add registeredserver】
RADIUS 登錄至 AD (GUI)
RADIUS 登錄至 AD (Command)
設定 RADIUS Server/Client 共用密碼
設定 RADIUS Server 只接受某些特定的 RADIUS Client 要求 (Server/Client 會設定一組共用密碼),此例 RADIUS 共用密碼為 12345678 而 RADIUS Client 即為 Cisco ASA (192.168.1.254) 設備
1.開啟【網際網路驗證服務】
2.點選【RADIUS 用戶端】 >> 【右鍵】 >> 【新增 RADIUS 用戶端】
1.名稱: Cisco ASA 5510
2.IP: 192.168.1.254
3.用戶端廠商: RADIUS Standard
4.共用密碼: 12345678 (屆時 Cisco ASA 上也要設定此密碼)
5.確認共用密碼: 12345678 (屆時 Cisco ASA 上也要設定此密碼)
新增 RADIUS Client
設定 RADIUS Client 存取原則及存取記錄
設定 RADIUS Client 遠端存取原則及儲存存取記錄,以後日後查詢及分析使用者登入時間及相關資訊
1.設定儲存 RADIUS Client 存取記錄
1.開啟【網際網路驗證服務】
2.點選【遠端存取記錄】 >> 【本機檔案】 >> 【設定】 >> 勾選【驗證要求】 >> 【記錄檔】 >> 指定【Log 存放路徑】 >> 【確定】
2.設定 RADIUS Client 遠端存取原則
1.開啟【網際網路驗證服務】
2.點選【遠端存取原則】 >> 【連線到其它存取伺服器】 >> 點選【授予遠端存取權限】 >> 按下【編輯設定檔】 >> 【驗證】 >> 確認勾選【CHAP、PAP、SPAP】 >> 【加密】 >> 確認勾選【不加密】 >> 【確定】
遠端存取記錄
設定網域使用者允許撥入
完成設定後還必須允許該使用者帳號可以有撥入 VPN 的權限,設定方式如下
1.登入【AD Server】
2.查看內容【使用者資訊】 >> 【撥入】 >> 在士端存取使用權限(撥入或 VPN) 請選擇【透過遠端存取原則來控制存取】
Cisco ASA CA 設定
建立 AAA Server Group
1.建立 AAA (Authentication, Authorization, Accounting) Server Group
1.開啟【ASDM】 >> 【Configuration】 >> 【Remote Access VPN】 >> 【AAA/Local Users】 >> 【AAA Server Groups】 >> 【Add】 >> 【設定相關資訊 (如下)】 >> 【OK】 >> 【Apply】
1.Server Group: Weithenn_Radius
2.Protocol: RADIUS
2.建立 RADIUS Server 資訊
1.開啟【ASDM】 >> 【Configuration】 >> 【Remote Access VPN】 >> 【AAA/Local Users】 >> 【Servers in the Selected Group】 >> 【Add】 >> 【設定相關資訊 (如下)】 >> 【OK】 >> 【Apply】
1.Interface Name: lan
2.RADIUS Server IP: 192.168.1.10
3.Secret Key: 12345678 (RADIUS Server 所設定的共用密碼)
3.修改 IPsec Connection Profiles
1.開啟【ASDM】 >> 【Configuration】 >> 【Remote Access VPN】 >> 【Network (Client) Access】 >> 【IPsec Connection Profiles】 >> 【DefaultRAGroup】 >> 【Edit】 >> Server Group【Weithenn_Radius】 >> 【OK】 >> 【Apply】
2.選擇 IPsec Connection Profiles 套用介面,此例為套用至【wan】
套用介面至 wan
測試 RADIUS 驗證機制
經過上述設定後 Cisco ASA 為 RADIUS Client 應可正常向 RADIUS Server 詢問使用者資訊,此測試為在 Cisco ASA 上測試是否可與 Windows RADIUS Server 進行溝通
方式一、ASDM 操作
1.開啟【ASDM】 >> 【Configuration】 >> 【Remote Access VPN】 >> 【AAA/Local Users】 >> 【AAA Server Groups】 >> 【Test】填入下列資訊進行測試
1.選擇【Authentication】
2.填入【網域使用者帳戶及密碼】,此例為 weithenn / 12345678
3.按下【OK】進行 RADIUS 驗證
測試 RADIUS 驗證機制
方式二、Cisco ASA CLI 命令
#configure terminal //進入 Configure 模式
#test aaa authentication Weithenn_Radius host 192.168.1.10 //測試 RADIUS 驗證
Username: weithenn //輸入網域使用者帳號
Password: ******** //輸入網域使用者密碼
INFO: Attempting Authentication test to IP address (timeout: 12 seconds)
INFO: Authentication Successful //驗證成功訊息
ERROR: Authentication Rejected: AAA failure //驗證失敗訊息若上述 RADIUS 驗證成功後,當您使用 Cisco VPN Client 撥入 VPN Network 通過憑證驗證之後跳出身份驗證視窗時您即可填入【網域使用者帳戶及密碼】即可成功撥入 VPN Network,而您日後您可登入 Windows RADIUS Server 查看 RADIUS Log (類似如下訊息) 查詢及分析使用者登入時間及相關資訊
192.168.1.254,weithenn,03/23/2010,16:50:25,IAS,CA-RADIUS,4
192.168.1.254,5,3,61,5,4108
192.168.1.254,4116,0,4128,Cisco ASA 5510,4155,1,4154,對所有使用者使用 Windows 驗證,4129,WEITHENN\weithenn,4127,1,4149,連線到其他存取伺服器
192.168.1.10 03/23/2010 06:07:08 7,4130,weithenn.org/IT Group/weithenn,4136,1,4142,0
192.168.1.254,weithenn,03/23/2010,16:50:25,IAS,CA-RADIUS,25,311 1
192.168.1.10 03/23/2010 06:07:08 7,4130,weithenn.org/IT Group/weithenn,6,2,7,1,4108,
192.168.1.254,4116,0,4128,Cisco ASA 5510,4155,1,4154,對所有使用者使用 Windows 驗證,4129,WEITHENN\weithenn,4127,1,4149,連線到其他存取伺服器Running-Config
aaa-server Weithenn_Radius protocol radius
aaa-server Weithenn_Radius (lan) host 192.168.1.10
key 12345678
radius-common-pw 12345678
crypto dynamic-map wan_dyn_map 10 set reverse-route
authentication-server-group Weithenn_Radius補充 – Split Tunnel
到目前為止的設定可以完成大部份的作業,但還有個小問題也就是當 VPN Client 從遠端撥入 VPN Network 時 VPN Client 的 Default Gateway 會被 VPN Network 所覆蓋掉,這樣的狀況雖然 VPN Client 可以跟 VPN Network 內的機器溝通的很好,但若有其他需求時這樣的路由設定就反而是個限制,例如 VPN Client 想要一邊跟 VPN Network 的機器溝通又一邊要存取 VPN Client 本地端的 NAS 時就會發生無法存取的狀況,我們可以透過設定 Split Tunnel 功能在 Cisco ASA 上來解決這個問題,也就是 不要覆蓋 VPN Client Default Gateway 又可以跟 VPN Network 的機器溝通。
1.開啟【ASDM】 >> 【Configuration】 >> 【Remote Access VPN】 >> 【Network (Client) Access】 >> 【Group Policies】 >> 選擇您用於 VPN 的政策此例為【Weithenn_Policy】 >> 【Edit】 >> 【Advanced】 >> 【Split Tunneling】
1.取消勾選【Policy 的 Inherit】項目,並選擇【Tunnel Network List Below】
2.取消勾選【Network List 的 Inherit】項目後按下【Manage】 >> 【Add ACL】 >> 建立名稱【Split_Tunnel】 >> 【OK】 >> 【Add ACE】 >> 選擇 VPN Network 網段此例為【Permit、192.168.1.0/24】 >> 【OK】
2.最後按下【Apply】套用剛才設定的 Split Tunnel 政策,此時再使用 VPN Client 撥入後其 Default Gateway 應該就不會被 VPN Network 所覆蓋
上述的動作操作完畢後其實 Running-Config 增加了下列三行
access-list Split_Tunnel standard permit 192.168.1.0 255.255.255.0 //建立 Split Tunnel ACL
group-policy Weithenn_Policy attributes //修改 Weithenn_Policy 內屬性值 (此行原本就存在)
split-tunnel-policy tunnelspecified //增加此行
split-tunnel-network-list value Split_Tunnel //增加此行您也可以參考官網資源

发表评论

电子邮件地址不会被公开。 必填项已用*标注