Thursday, December 14, 2017

Generic Routing Encapsulation (GRE)  là một giao thức được phát triển bởi Cisco, cho phép đóng gói nhiều giao thức ở tầng Network layer trong kết nối point-to-point.
Một tunnel GRE được sử dụng khi cần gưởi gói tin từ mạng này qua mạng khác hoặc mạng không an toàn. Với GRE, một virtual tunnel được tạo ra giữa hai router đầu cuối và gói tin được đóng gói gửi qua virtual tunnel. 
Một điều quna trong là các gói tin gửi qua GRE chưa được mã hóa vì GRE không mã hóa mà chỉ đóng một hearder GRE. Nếu cần mã hóa, thì phải cấu hình thêm IPsec.
Quy trình đóng gói khi qua GRE không mã hóa :


Nhiều người thường nghĩ GRE IPsec tunnel giữa hai cisco router giống như là site to site IPsec VPN, nhưng thực chất là không giống. Sự khác biệt cở bản giữa hai loại này là GRE IPsec tunnel cho phép gói tin multicast gửi qua còn IPsec VPN thì không hỗ trợ gói tin này. Trong một mạng lớn khi chúng ta cần cầu hình OSPF, EIGRP....GRE tunnel là sự lựa chọn tốt nhất. Và phần cấu hình GRE cũng đơn giản hơn nhiều so với IPsec VPN nên hầu hết sẽ ưu tiên GRE tunnel hơn là IPsec VPN.
Trong bài lab này giả lập internet (ISP) là một router. Trên các cổng WAN sẽ chạy ospf để thông với nhau, mặc định khi thuê ip public của ISP thì các ip wan phải ping thấy nhau.
Sơ đồ kết nối :

Đặt interface và cấu hình ospf cho các cổng WAN ping thấy nhau:

Trên SiteA :

SiteA#show run int e0/0
Building configuration...
Current configuration : 82 bytes
!
interface Ethernet0/0
 ip address 1.1.1.1 255.255.255.0
 ip ospf 10 area 0
end

SiteA(config-if)#do show run int tun 0
Building configuration...

Current configuration : 150 bytes
!
interface Tunnel0
 ip address 172.16.0.1 255.255.255.0
 ip mtu 1400
 ip tcp adjust-mss 1360
 tunnel source 1.1.1.1
 tunnel destination 2.2.2.1
end

SiteA#show run int e0/1
Building configuration...

Current configuration : 68 bytes
!
interface Ethernet0/1   // không tham gia ospf
 ip address 192.168.10.1 255.255.255.0
end


Trên SiteB:

SiteB#show run int e0/0
Building configuration...

Current configuration : 82 bytes
!
interface Ethernet0/0
 ip address 2.2.2.1 255.255.255.0
 ip ospf 10 area 0
end


SiteB#show run int e0/1
Building configuration...

Current configuration : 68 bytes
!
interface Ethernet0/1   //không tham ospf
 ip address 192.168.20.1 255.255.255.0
end
================================================
Trên Router Internet :
Internet#show run int e0/0
Building configuration...

Current configuration : 82 bytes
!
interface Ethernet0/0
 ip address 1.1.1.2 255.255.255.0
 ip ospf 10 area 0
end
================================================
SiteB#show run int tun 0
Building configuration...

Current configuration : 150 bytes
!
interface Tunnel0
 ip address 172.16.0.2 255.255.255.0
 ip mtu 1400
 ip tcp adjust-mss 1360
 tunnel source 2.2.2.1
 tunnel destination 1.1.1.1
end
====================================================
Internet#show run int e0/1
Building configuration...

Current configuration : 82 bytes
!
interface Ethernet0/1
 ip address 2.2.2.2 255.255.255.0
 ip ospf 10 area 0
end

Để 2 mạng LAN có thể ping thấy nhau chúng ta sẽ tạo static route trên siteA và SiteB:
Trên SiteA:

SiteA(config)#ip route 192.168.20.0 255.255.255.0 172.16.0.2

Trên SiteB :
SiteB(config)#ip route 192.168.10.0 255.255.255.0 172.16.0.1

Kiểm tra bằng lệnh traceroute xem gói tin qua GRE tunnel :









Vậy là gói tin đã đi qua tunnel. Nhưng đây là gói tin chưa có mã hóa, để mã hóa chúng ta cấu hình thêm IPsec.
Trên SiteA :
SiteA(config)# crypto isakmp policy 1
SiteA(config-isakmp)# encr 3des
SiteA(config-isakmp)# hash md5
SiteA(config-isakmp)# authentication pre-share
SiteA(config-isakmp)# group 2
SiteA(config-isakmp)# lifetime 86400
============================================================
3des là phương thức mã hóa được sử dụng ở phase 1
MD5 là thuật toán hashing
pre-share sử dụng pre-share trong phương thức chứng thực.
group 2 sử dụng nhóm Diffie-Hellman 
============================================================
SiteA(config)# crypto isakmp key cisco address 2.2.2.1
============================================================
thiết lập pre-share key của peer đầu kia để chứng thực là cisco
============================================================
SiteA(config)# crypto ipsec transform-set myset esp-3des esp-md5-hmac
SiteA(cfg-crypto-trans)# mode transport
============================================================
esp-3des là phương thức mã hóa phase 2
md5 thuật toán hashing
thiết lập IPsec ở mode transport
============================================================
SiteA(config)# crypto ipsec profile protect-gre
SiteA(ipsec-profile)# set security-association lifetime seconds 86400
SiteA(ipsec-profile)# set transform-set myset

Apply IPsec lên interface tunnel 0 :

SiteA(config)# interface Tunnel 0SiteA(config-if)# tunnel protection ipsec profile protect-gre
===========================================================
Tương tự trên SiteB :
SiteB(config)# crypto isakmp policy 1
SiteB(config-isakmp)# encr 3des
SiteB(config-isakmp)# hash md5
SiteB(config-isakmp)# authentication pre-share
SiteB(config-isakmp)# group 2
SiteB(config-isakmp)# lifetime 86400
SiteB(config)# crypto isakmp key firewallcx address 1.1.1.1
SiteB(config)# crypto ipsec transform-set myset esp-3des esp-md5-hmac
SiteB(cfg-crypto-trans)# mode transport
SiteB(config)# crypto ipsec profile protect-gre
SiteB(ipsec-profile)# set security-association lifetime seconds 86400
SiteB(ipsec-profile)# set transform-set myset
SiteB(config)# interface Tunnel 0
SiteB(config-if)# tunnel protection ipsec profile protect-gre

Video hướng dẫn :



Bài viết có tham khảo trên trang: firewall.cx





0 comments:

Xem nhiều nhất