GRE Tunnel雖然簡單易用,但考量到現實環境的複雜性,例如大陸的封網或是在一端Office只有浮動IP的狀況下,還是會有使用IPSec Tunnel的需要,因此本文將對於使用IPSec建立Site-To-Site VPN做一個簡單的介紹。
先設定一個keyring,其名稱為ipsec_keying,接著指定使用pre-shared-key的認證方式,目的IP為0.0.0.0,這代表對所有的IP均採用,並指定其key為my_secret。
接著設定一個crypto isakmp policy,序號為1,加密方式採用AES,HASH的部分由於使用預設的SHA,因此不會加以顯示。認證的方式採用pre-share key方式,並設定其Diffie-Hellman Group為2。
然後設定crypto isakp profile,名稱為office。keyring套用之前設定好的ipsec_keyring,在識別身分時用對方Router的hostname做識別。在此例中對方Router的hostname是Branch-Office。
isakmp的相關設定完成後,接著設定ipsec部分。先設定它的transform-set,設定其名稱為transformset。在ESP的部分使用AES做加密,使用MD5做身分驗證。
由於對點的IP不固定,因此需要建立一個dynamic map,其名稱為ipsec_map,序號為1。設定transform-set為先前設定的transformset,並指定其isakmp-profile為office。
最後指定需產生reverse route,以便連線建立後能自動帶出一筆靜態路由至對點路由器。
接著完成crypto map的相關設定,這個map需套用在對外的介面上。指定其名稱為ipsec,它套用的isakmp-profile是office,並將其與剛剛建立的dynamic map:ipsec_map做連結。
相關設定完成後,將此map套用在對外的interface FastEthernet0/0上,讓往外傳送的封包能套用此map。
設定之後會出現如下訊息,代表ISAKMP已啟用。
Branch Office相關設定
先完成底層的設定,FastEthernet0/0是Branch Office對外的介面,這裡將其ip address的設定拿掉,並且enalbe pppoe的相關設定,再指定其dial-pool-number為1。
FastEthernet1/0是Branch Office對內的介面,設定其IP為192.168.3.1。
然後,建立一個名為Dialer0的介面,指定其MTU為1492(一般PPPoE Client建議設定為1492),並設定其IP為透過negotiated取得。指定其encapsulation為PPP(Point to Point Protocol),設定其dialer pool為1。
接著,設定PPP使用PAP(Password Authentication Protocol,密碼驗證通訊協定)做驗證,其帳號及密碼皆為seednet。
隨即設定設備的預設路由,指定所有往外的封包都透過這個介面傳送。
然後,檢查Dialer0是否已取得IP,並測試能否Ping到Main Office的Public IP。
此時,Router已完成網路基本設定,具備連網能力。同樣地,別忘了做路由器時間的確認。緊接著,設定isakmp的部分。
先設定一個isakmp policy,序號為1,加密方式採用AES,HASH部分由於使用預設的SHA,因此不會加以顯示。認證的方式採用pre-share key方式,並設定其Diffie-Hellman Group為2。此處設定必須與Main Office一致。