L2TP over IPSec
在保證L2TP連接沒有任何問題的情況下,才接着按下面介紹去配置。
IPSec原理在這里就不細說,更系統地了解VPN,還是買“華為VPN學習指南”,里面講得非常詳細。畢竟你現在學的也是華為數通產品,購買華為認可出品的書籍學習好一點。直接進入配置環節,環境檢查以L2TP檢查為准。
IPSec基於ACL方式(手工、動態)、虛擬隧道、Efficient三種模式。Efficient需要向華為購買有償服務,用於總部與分部互聯。虛擬隧道多用於總部與分部之間VPN互聯。ACL方式為目前使用較多,其中還細分手工與動態兩種模式。手工方式沒有動態協商安全性高,並且手工方式要求兩端的IPSec設備必須為固定的公網IP地址。根據IPSec不同工作方式和兩端設備環境要求,對於出差員工訪問總部,無疑是基於ACL的IKE動態協商的IPSec。
Secoclient軟件本身是作為“ISAKMP”方式的IPSec安全策略另一端(作為協商發起方),那么路由器設備端就是策略模板方式的IPSec安全策略。講人話就是,secoclient是攻,路由器是受。你懂的!!!
當你明白VPN客戶端是作為協商發起方時,你需要檢查你的VPN軟件能支持哪些功能,才在華為的路由器配置相應的IPSec功能,否則一切白瞎。我現在使用的是secoclient 3.0.3,其它版本或其他類型軟件的相關配置需要你自行探索。
配置路由器端,響應方:
第一:
(1) 配置IPSec安全提議
(2) 配置IKE安全提議
(3) 配置IKE對等體
(4) 配置IPSec策略模板
(5) 配置IPSec安全策略模板
(6) 在接口下調用IPSec安全策略模板
ipsec proposal ipsec //創建一個IPSec安全提議命名:ipsec,命名自定義
transform esp //安全協議為ESP協議(缺省命令,可不配置。不可修改成AH協議,否則無法支持野蠻模式)
esp authentication-algorithm sha2-256 //配置ESP協議的認證算法,推薦
esp encryttion-algorithm aes-256 //配置ESP協議的加密算法,推薦
encapsulation-mode tunnel //配置對數據的封閉模式為隧道模式(缺省命令,可不配置。不可修改成傳輸模式)
ike proposal 10 //創建一個IKE安全提議編號10,數字自定義
authentication-method pre-share //配置IKE安全提議的認證方法 :預共享密鑰
authentication-algorithm sha2-256 //配置IKE安全提議的認證算法,推薦
encryption-algorithm aes-256 //配置IKE安全提議的加密算法,推薦
dh group2 //配置IKE密鑰協商采用1024位的Diffie-Hellman,可選擇更高位數加密方式,需檢查VPN客戶端支持范圍。
sa duration 5657 //配置IKE SA的硬生存周期:缺省時間為:86400,可按需求做調整。個人建議根據VPN接入時間需求適當調整IKE SA的生存時間。因為存活時間過長無法及時刪除IKE SA,不利於安全性。並且兩端設備協商時,實際生效的硬生存周期為兩端設備上配置的硬生存周期中較小的一個。
ike peer ipsec //創建IKE對等體名為l2tp,對等體名自定義
undo version 2 //刪除v2支持,個人推斷secoclien僅支持IKEv1,從軟件配置參數與野蠻模式推斷。如果我描述錯,請糾正我。缺省同時開啟v1和v2版本,默認啟用V2,建議刪除v2支持。
ike-proposal 10 //為當前對等體引用編號1的IKE安全提議
pre-shared-key cipher ipsec //配置預共享密鑰的密碼:ipsec,自定義
lifetime-notification-message enable //使能發送IKE SA 生存周期時間的通知消息。IKEV1中,需要協商生存周期,並取雙方最小值。針對某些友商VPN軟件和兩台華為設備間的建立都需要開啟,因為當前的IKE對等體版本為V1。
local-id-type fqdn //配置IKE協商時本端的ID類型為名稱形式,野蠻模式只能為fqdn
local-id l2tp //配置IKE協商時本端ID值為:l2tp,ID值自定義
remote-id-type fqdn //配置IKE協商時對端的ID類型為名稱形式,野蠻模式只能為fqdn
remote-id l2tp //配置IKE協商是對端ID值為:l2tp,ID值自定義
這里的本端於對端的ID值與L2TP下的“allow l2tp virtual-template 1 remote l2tp”這條命令下的對端ID值要一致,否則會協商失敗。本端ID和對端ID合計四條可不配置,個人出於少許安全角度,都給配置上了。
exchange-mode aggressive //配置IKEV1的協商模式為野蠻模式。當前兩端VPN互聯都經過NAT轉換,必須配置野蠻模才能建立。
ipsec policy-template ipsectemplate 100 //配置策略模板名為ipsectemplate,模板編號為100。模板名稱不能與安全策略名稱相同,提前規划好。編號自定義。
route inject dynamic //配置路由動態注入,主要為了解決沒有到發起方對端的地址導致vpn建立失敗。此命令只能用IKE動態協商方式。路由注入分靜態和動態:靜態方式適用發起方公網固定IP,動態IP會導致路由黑洞。動態方式能適應網絡變化,自動老化不可用路由。AR路由器響應方作為策略模板,又無法獲知發起方的動態IP,導致無法配置高級ACL。配置路由注入后,作為響應方會根據發起方傳遞過來的路由網關,建立隧道連接。相同網關也能建立起隧道連接。L2TP根據IPSec SA中的相關地址來建立L2TP隧道。會在文章后面做出注釋。
proposal ipsec //引用已經建立的IPSec安全提議,ipsec
ike-peer ipsec //引用已經建立的IKE對等體,ipsec
pfs dh-group2 //協商時啟用PFS特性,提高通信的安全性,選用組2。可根據VPN客戶端提供的PFS選項配置。此命令可以不配置,個人認為提高安全性,選擇啟用。
ipsec policy ipsecsecurtiy 10 isakmp template ipsectemplate //創建安全策略名稱ipsecsecurtiy編號為10,並引用策略模板ipsectemplate。此條命令在不同的配置舉例和真機配置命令” display ipsec policy brief “反復對比核實后,可以確認此命令是在配置策略模板。為什么需要加isakmp?從整條命令推測:
- 在系統視圖下配置一條策略模板既可以作為發起方,也可以作為響應方。但是策略模板只能做為響應方,是不會自己作為發起方。這很矛盾!
- 這是華為研發在命令調度上指定要求這么配置,為了適應未來發展出新的模板方式的靈活調度。不存在為什么。
我只能想到是這兩個情況,如果華為研發能為我解答這個命令調度原意的話,是最好不過的,我洗耳恭聽。
將IPSec安全策略配置為策略模板方式在定義保護范圍的ACL是可選的。在不配置ACL的情況下,相當於支持最大范圍的保護,即接受發起方的ACL配置。
interface dialer 1 //此接口為你的動態域名解析的dialer口,我這邊調用的是dialer 1口。根據自己實際環境調配。PPPOE撥號調用在dialer口,固定IP調用在物理接口。
ipsec policy ipsecsecurtiy //引用已經建立的ipsec安全策略
相信有人會疑惑,為什么你說是配置基於ACL的IKE動態協商的IPSec,為什么不在IPSec安全策略下調用security acl ?ACL是其於高級的ACL,需要添加源目地址。因為遠程接入端為PPPOE撥號,目的地址不可能知道。而且我們把AR路由器的IPSec策略配置為策略模板方式,即可不配置ACL規則。如何讓接入方指定流量的走VPN鏈路,在secoclient客戶端上配置即可,在最后面給配置方法。
配置完后,需要檢查各配置:
display ipsec proposal
display ike proposal
display ike peer
display ipsec policy-template
display ipsec policy brief
display ipsec interface brief
以上六條命令分別核對各相應配置檢查。
配置secoclient客戶端,發起方,“ISAKMP”
第二:
在華為官網下載secoclient,版本非常多。我個人選擇3.0.3,1.60也不錯。看自己喜好。系統版本的話,自行搜索下載,下面為windowns-64-3.0.3版本:
http://support.huawei.com/enterprise/zh/software/22854326-ESW2000009393
安裝不可攔截虛擬網卡驅動安裝,否則會出現異常。
1.點擊建立VPN模板:
2.選擇L2TP/IPSec:
把相應的IPSec參數配置完成:
參考IPSec安全提議配置,如跟文檔配置,直接按圖配置。
參考IKE安全提議和對等體配置,如跟文檔配置,直接按圖配置。
參考策略模板配置FPS特征和IKE安全提議,如跟文檔配置,直接按圖配置。
IPSec SA 缺省硬超時時間為3600秒,系統視圖下ipsec sa global-duratio調整ipsec sa硬超時時間。缺省情況下,IPSec SA以時間為基准的全局SA硬生存周期為3600秒,以流量為基准的全局SA硬生存周期為1843200KB。
對於IKE SA和IPSec SA 硬超時時間,為何配置5657和3600?當IKE SA使用默認值86400,需要等待24小時后才能刪除IKE SA。在刪除期間客戶端重新發起,會導致多條相同的公網地址的舊IKE SA出現在IKE SA表里。個人覺得不利於維護IKE SA表,更不利於安全性。當IPSec SA在60分鍾后硬超時斷開后,IKE SA會等待90分鍾后硬超時斷開。硬超時時間過短造成設備開銷增大和過長對安全性造成影響。需要根據實際使用情況調整。
IKE SA和IPSec SA的生存周期有兩種類型:
- 硬生存周期(硬超時時間):是SA 生命周期截止時間。
兩端設備協商時,實際生效的硬生存周期為兩端設備上配置的硬生存周期中較小的一個。
- 軟生存周期(軟超時時間):是從舊SA建立到生命周期截止前啟動協商新IKE SA的時間。
把發起方和響應方配置成相同或不同最后都會協商參數,不影響隧道連接。配置相同數值純粹強迫症。
- 選擇確定,連接。出現賬號密碼輸入窗口,請填寫預設的賬號和密碼。
登陸賬號密碼在AAA下創建,看我分享過的L2TP里的文檔。
選擇登陸,等待十幾秒左右,右下角會出現協商成功,表明L2TP連接正常。
第三:
排錯,接后面文章篇幅接着講。
移動端接入配置只了解,並不配置。
移動端需要把密鑰等級降低才能接入,sha1和aes-128。不能配置本地和對端名稱。有着各種限制條件。從手機目前的VPN功能來看,只是為了FQ功能而來。