Friday, December 22, 2017

Site to Site VPN tunnel đang được sử dụng để cho phép truyền dữ liệu an toàn, dữ liệu void hoặc dữ liệu video giữa 2 site với nhau ( ví dụ : giữa trụ sở chính và chi nhánh hoặc giữa các chi nhánh với nhau.....)
VPN tunnel được tạo thông qua mạng internet, và được mã hóa với các loại thuật toán mã hóa tiên tiến để đảm bảo bảo mật khi truyền dữ liệu.
Trong bài này sẽ trình bày làm sao cấu hình tạo một kết nối an toàn vpn tunnel giữa hai router cisco, sử dụng IP Secutiy potocol(IPsec).
IPsec VPN tunnel cũng có thể cấu hình bằng GRE (Generic Routing Encapsulation) Tunnel. VPN GRE có cấu hình đơn giản có thể tham khảo tại bài viết Cấu hình GRE VPN Tunnel
Trong bài LAB này sử dụng IP public giữa 2 router, sơ đồ kết nối như sau :
Ở đây mô phỏng kết nối VPN site to site giữa trụ sở ở Sài gòn và trụ sở ở Đà nẵng.
Cấu hình trên Router Sài gòn :
Cấu hình ISAKMP Phase 1 :

SG(config)# crypto isakmp policy 1
SG(config-isakmp)# encr 3des
SG(config-isakmp)# hash md5
SG(config-isakmp)# authentication pre-share
SG(config-isakmp)# group 2
SG(config-isakmp)# lifetime 86400

- 3DES Phương thức mã hóa được sử dụng cho phase 1
- md5 là thuật toán hashing
- group 2 Deffie-Hellman Group
-86400 Session key lifetime. đây là giá trị default.
 Định nghĩa key cho pre share key bằng câu lệnh :
SG(config)# crypto isakmp key 0 cisco address 1.1.1.1
    Key pre share được đặt là cisco để xác thực với router có địa chỉ là 1.1.1.1.
   Tạo IPsec Transform (ISAKMP Phase 2):
   Tạo transform set để bảo vệ dữ liệu với tên là myset :

SG(config)# crypto ipsec transform-set myset esp-3des esp-md5-hmac

Tạo ACL :
ACL cho phép lớp mạng nào được tham gia VPN


SG(config)# ip access-list extended VPN
SG(config-ext-nacl)# permit ip 192.168.100.0 0.0.0.255 172.16.100.0 0.0.0.255

Tạo Crypto MAP :

SG(config)# crypto map CMAP 10 ipsec-isakmp
SG(config-crypto-map)# set peer 2.2.2.1
SG(config-crypto-map)# set transform-set myset
SG(config-crypto-map)# match address VPN


Apply Crypto MAP vào Interface Public:

SG(config)# interface Ethernet0/1
SG(config- if)# crypto map mymap

Tương tự với Router ở Đà nẵng :

DN(config)# crypto isakmp policy 1
DN(config-isakmp)# encr 3des
DN(config-isakmp)# hash md5
DN(config-isakmp)# authentication pre-share
DN(config-isakmp)# group 2
DN(config-isakmp)# lifetime 86400
DN(config)# crypto isakmp key cisco address 1.1.1.1
DN(config)# ip access-list extended VPN
DN(config-ext-nacl)# permit ip 172.16.100.0 0.0.0.255 192.168.100.0 0.0.0.255
DN(config)# crypto ipsec transform-set TS esp-3des esp-md5-hmac
DN(config)# crypto map CMAP 10 ipsec-isakmp
DN(config-crypto-map)# set peer 1.1.1.1
DN(config-crypto-map)# set transform-set myset 
DN(config-crypto-map)# match address VPN
DN(config)# interface Ethernet0/1
DN(config- if)# crypto map mymap

Tạo route giữa hai mạng :

SG(config)#ip route 192.168.100.0 255.255.255.0 1.1.1.2 


DN(config)#ip route 172.16.100.0 255.255.255.0 2.2.2.2

Video tham khảo :







Wednesday, December 20, 2017

 Broadcast dùng để gửi tới tất cả các host trong cung một subnet, khi switch nhận gói tin broadcast sẽ forward ra tất cả các cổng trong cùng VLAN trừ cổng mà nó nhận gói tin.Tất cả các host trong cùng VLAN sẽ xử lý gói tin.


Dùng Wireshark để bắt và phần tích gói tin chúng ta thấy rằng Dest MAC của gói tin Broadcast luôn là ff:ff:ff:ff:ff:ff
Multicast  dùng để gưởi gói tin từ 1 tới một nhóm được xác định. ví dụ trong ospf có area 0 khi trong area gưởi 1 gói tin broadcast thì chỉ có area 0 nhận được còn các area khác sẽ không nhận được.



Dùng Wireshark để bắt và phần tích gói tin chúng ta thấy rằng Dest MAC của gói tin Multicast luôn là 01:00:5e:00:00:05, ta thấy rằng Octet đầu luôn có giá trị 01 :
Unicast là gói tin được gưởi từ một host tới một host xác định. Ví dụ 1 máy tính A ping tới 1 máy tính B.
Dùng Wireshark để bắt và phần tích gói tin chúng ta thấy rằng Dest MAC của gói tin Unicast ta sẽ thấy Dest MAC của gói tin có Octet đầu luôn có giá trị 00 ví dụ :00:50:79:66:68:00
Đây là đặc điểm để host có thể nhận biết đâu là gói tin Broadcast đâu là gói tin Unicast
Dùng Wireshark để bắt và phần tích gói tin chúng ta thấy rằng Dest MAC của gói tin ta sẽ thấy rõ hơn :

Giao thức Point to Point Tunnel (PPTP) là một giao thức mạng sử dụng để tạo VPN tunnel giữa các mạng Public với nhau. Dữ liệu đi trong các VPN tunnel này đã được mã hóa end to end, PPTP thường được sử dụng trong trường hợp kết nối từ client tới Server. Trong đó Server là mạng của công ty còn client là máy tính người dùng có thể kết nối tới mạng LAN công ty bất cứ nơi đâu khi có internet bằng PPTP.
Thuật toán mã hóa của PPTP là đã đạt được một mức độ bảo mật, nhưng PPTP không phải là thuật toán mã hóa tốt ngày nay. PPTP còn có nhiều nhược điểm nên không được sử dụng cho các kết nối dài hạn. PPTP sử dụng thuật toán mã hóa Password Authentication Protocol and the Challenge Handshake Authentication Protocol. PPTP cung cấp các tùy chọn mã hóa là : 40, 56 và 128.
PPTP là giải pháp tối ưu cho việc kết nối VPN tạm thời bởi vì trên nền tảng Windows hỗ trợ tất cả và không cần phải cài đặt thêm ứng dụng hay driver nào.
Router Cisco có thể thiết lập PPTP server, hay còn có cách gọi khác là Virtual Private Dialup Network (VPDN) server.

Sơ đồ kết nối :
Nói qua một tý về sơ đồ :
Router internet mô phỏng môi trườn internet.
Router Home mô phỏng router ở nhà hay ở quán cà phê hay bất cứ nơi đâu :)
Router Company là router cần cấu hình PPTP server để máy tính kết nối tới.

Mặc định thì máy tính của bạn sẽ ping được tới ip public của công ty nhé. ở đây  để đơn giản mình sẽ chạy ospf để thông các ip public với nhau.
Bắt đầu vào cấu hình VPDN nào :
trên route Company :
Bước 1 : bật chức năng VPDN trên router
R1# configure terminal
R1(config)# vpdn enable 
R1(config)# vpdn-group 1 
R1(config-vpdn)# accept-dialin
R1(config-vpdn-acc-in)# protocol pptp 
R1(config-vpdn-acc-in)# virtual-template 1 
R1(config-vpdn-acc-in)# exit
Bước 2: tạo liên kết giữa virtual interface và interface vật lý :

R1(config)# interface Virtual-Template1
R1(config-if)# ip unnumbered Ethernet 0/0
R1(config-if)# peer default ip address pool PPTP
R1(config-if)# no keepalive
R1(config-if)# ppp encrypt mppe 128
R1(config-if)# ppp authentication ms-chap ms-chap-v2
Câu lệnh ppp encrypt là câu lệnh quy định kểu mã hóa được sử dụng, trong trường hợp này đang sử dụng à 128 bit, các bạn có thể sử dụng tùy chọn auto ....
Kiểu chứng thực ms-chap ms-chap-v2 là kiểu chứng thực tốt nhất được sử dụng hiện nay.
Tất các VPDN client sẽ nhận được IP là một phần của mạng |LAN hiện tại (ví như ở ví dụ này), hoặc client sẽ được gán ip hoàn toàn khác với ip LAN hiện tại ví dụ như : 192.168.0.2 192.168.0.100
Nếu muốn gán cho VPDN lient cho mạng LAN hiện tại thì ta cần liên kết virtual intface và interface vật lý bằng câu lệnh "ip unnumbered" cổng vật lý trong ví dụ này Ehternet 0/0.
Cấu hình gán IP cho VPDN client một phần của mạng nội bộ hiện tại :
R1(config)# ip local pool PPTP 192.168.100.5 192.168.100.10

Cấu hình tên và Password chứng thực khi user truy cập tới router:

R1(config)# username admin password cisco
Truy cập từ xa phải thành công khi đăng nhập bằng user trên.
Thiết lập tại máy client ở đây sử dụng windows 7 :
vào Network sharching and center
Clink vào set up a new connection or network :
Chọn connect to a workplace rồi next :
chọn Use my internet connection (VPN)

Internet address điền ip public của công ty vào rồi ấn next

Video tham khảo :

Sunday, December 17, 2017


User trong Windows :

Khi cài đặt windown nếu không tạo thêm user thì window sẽ có mặc định 2 user là Administrator và guest trong đó guest đang ở trạng thái Disable. Để kiểm tra, ấn chuột phải vào Mycomputer chọn Manage :
Tiếp theo vào mục Local Users and Group ==> Users ở đây chúng ta sẽ thấy các user trong máy local


Tạo thêm User ấn chụt phải vào một điểm bất kỳ hoặc ấn chuột phải vào Users ấn New User....

Tiếp tục :
Điền thông tin và ấn Create.
User must change password at next logon : User phải thay đổi pass khi login lần kế tiếp.
User cannot change password : User không thay đổi được password
Password never expires : Pass không bao giờ bị hết hạn
Account is disable : Disable và enable account này. tích vào tức là disable còn ko tích là enable

Thay đổi mật khâu cho User :
Ấn chuột phải vào User muốn thay đổi pass chọn Set password:



Một bảng thông báo hiện ra :
Ấn Proceed :

Nhập Password mới và ấn Ok.


Policy Trong Windows :

Vấn đề bảo mật là một vấn đề được quan tâm hàng đầu của người dùng cũng như các nhà sản xuất. Và Microsoft cũng không ngoại lệ, để bảo mật Microsoft đã tạo ra rất nhiều policy để bảo vệ người dùng. Để kiểm tra và quản lý policy này chúng ta vào start gõ: "gpedit.msc" hoặc ấn tổ hợp phím Start+R và gõ "gpedit.msc".
Trong hộp thoại này bao gồm 2 phần :
  • Computer Configuration : thiết lập policy trong mode này policy chỉ ảnh hưởng tới Computer không ảnh hưởng User (Sẽ rõ hơn nếu trong môi trường domain). 
  • User configuration : Thiết lập Policy trong mode này chỉ ảnh hưởng tới Users.
Một hộp thoại được mở, tiếp tục vào Windows Settings ==> Security Settings ==> Account Policies ==> Password Policies
Enforce pasword history : Số lần ghi nhớ mật khẩu cũ, nghĩa là nếu đang đặt mật khẩu là 123 khi thay đổi lần tiếp theo phải khác 123. nhỏ nhất là 0 và max là 24.
Maximum password age : Số ngày lớn nhất mà mật khẩu phải thay đổi, ví dụ mặc định là 42 ngày thì sau 42 ngày user phải thay đổi password mới.
Minimum password age : Thời gian nhỏ nhất mà mật khẩu được phép thay đổi, ví dụ là 1 ngày thì sau 1 ngày mật khẩu mới tạo mới được thay đổi khác được.
Minimum password length: Số ký tự yêu cầu khi đặt password, ví dụ như 8 ký tự.
Password must meet complexity requirements : yêu cầu đặt mật khẩu phức tạp, Mật khẩu phức tạp được Microsoft định nghĩa là phải có 1 chữ hoa, 1 chữ số và 1 ký tự đặc biệt(@#$....).
Khi mở máy thông thường sẽ hiện luôn User chỉ cần nhập Pass và nữa là được:
Như vậy sẽ lộ User người dùng và hacker chỉ cần dò pass nữa :)
Để bảo mật khi login, bắt buộc user phải nhập cả user và pass thì chúng ta chỉnh policy sau:
Computer configuration ==> Security setting ==> Security Local ==> Security options ==> tìm dòng Interactive logon : Sonot display last user name ấn chuột phải chọn properties hoặc ấn đúp chọn enable :


Ấn Apply rồi ok, mở cmd : gõ lệnh  gpupdate /force để update các policy mới thiết lập.

 Từ lần logon tiếp theo sẽ phải đăng nhập cả user và pass mới có thể login vào được máy:
Và bây giờ thì hacker phải dò cả user và pass.( ôi nhọ lắm)


Các bạn có thấy ở góc phải màn hình có nút retart hoặc shutdow khi chưa login vào. Để làm mất không cho shutdow khi chưa login vào máy ta có thể chỉnh Policy sau :
Trong mục Security Options ==> tìm đến Shutdown: allow system to be shut down without having to log on ==> ấn đúp chọn disable ( mặc định nó enable). Lần logon kế tiếp sẽ không còn có thể shutdow khi chưa login được.

Nút shutdow đã biến mất.
Và đây còn rất nhiều Policy khác các bác từ từ khám phá nhé ;) :

Và tới đây mình có vài kết luận nhỏ nhỏ rằng: có nhiều người nói rằng Windows không bảo mật bằng linux......hay gì đó. Theo mình nghĩ thì không phải windows không bảo mật mà là một phần do người dùng còn chủ quan, hai là hầu hết các phần mềm hacker viết ra điều để hacker windows và các hacker hầu như cũng chỉ nghiên cứu các lỗ hổng của windows để tấn công. Chứ không phải là do windows kém bảo mật đâu nhé ;). Hầu hết tất cả các phần mềm, ứng dụng hay OS nào cũng có lỗ hổng hết. hihi ok.
Video tham khảo :

Friday, December 15, 2017

Trong quá trình sử dụng máy tính sẽ có những lúc chúng ta lỡ tay xóa đi dữ liệu quan trọng trong máy tính hoặc trong USB, để khôi phục lại dữ liệu đã mất chúng ta có thể sử dụng phần mềm Active@ File Recovery 14.5.0 đây là một phần mềm khá mạnh để khôi phục dữ liệu.
Mình đã thử với các file của office như word, excell....rồi các file như pdf hay .zip .rar thì sẽ được khôi phục 100% dữ liệu còn các file như .Exe, .msi.... thì khôi phục khoảng 60% thui.
Download phần mềm tại : Active@ File Recovery 14.5.0
Hướng dẫn cài đặt và Active :
Sau khi cài đặt và Active mở phần mềm lên :
Giao diện khá dễ sử dụng nhé mọi người, chọn ổ đĩa bị mất dữ liệu ví dụ mình bị mất dữ liệu ở ổ D sẽ chọn ổ D rồi ấn Super Scan nhé.
Nếu dữ liệu nhiều thì thời gian Scan khá lâu. Lần mình Recover 2G mất khoảng 1 tiếng :)
Sau khi Scan xong thì chúng ta kiểm tra dữ liệu nó Scan được và Recover nó nhé .
Đây là dữ liệu được tìm thấy :
Muốn khôi phục dữ liệu nào thì ân vào folder đó và Recover.

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





Tuesday, December 12, 2017

Phương thức hoạt động của DMVPN:

trước khi đi vào cấu hình DMVPN chúng ta tìm hiểu qua phương thức hoạt động của DMVPN nhé :

  • Mỗi Spoke sẽ kết nối về Hub bằng 1 đường IPsec Tunnel
  • Mỗi Spoke sẽ đăng ký là 1 client của NHRP server. Hub router đảm nhận là NHRP server
  • Khi Lan của Spoke này muốn gưởi gói tin cho LAN của Spoke kia, nó sẽ hỏi NHRP server địa chỉ ip của Spoke kia.
  • Sau khi nó biết được địa chỉ của Spoke đã nói nó sẽ tạo 1 đường hầm tới Spoke kia.
  • Kết nối tunnel Spoke-to-Spoke được thiết lập bằng mGRE interface.
  • Kết nối tunnel Spoke-to-Spoke được thiết lập bất cứ khi nào có trao đổi gói tin.
  • Tất cả dữ liệu đi qua tunnel đều được mã hóa IPsec.
Sơ đồ mô phỏng :

NOTE: Ở đây môi trường giả lập nên Internet sẽ được thay thế bằng 1 router nhé. Mặc định khi công ty thuê 1 hay 2 hay 3 hoặc nhiều ip public thì đều có thể ping thấy nhau trên các ip public này. để đơn giản mình sẽ chay ospf cho các cổng WAN của các router cho các ip public ping thấy nhau nhé.

Cấu hình trên HUB:

Cấu hình cổng LAN và WAN cho router :

interface FastEthernet0/0


 description WAN-Network
 ip address 1.1.1.1 255.255.255.0
 ip ospf 10 area 0
 duplex auto
 speed auto
!
interface FastEthernet0/1  // không than gia ospf nhé.
 description LAN-Network
 ip address 192.168.10.1 255.255.255.0
 duplex auto
 speed auto

Cấu hình cổng Tunnel cho Router:

interface Tunnel0
 description mGRE - DMVPN Tunnel
 ip address 172.16.0.1 255.255.255.0
 no ip redirects
 ip nhrp authentication cisco
 ip nhrp map multicast dynamic
 ip nhrp network-id 1
 tunnel source 1.1.1.1
 tunnel mode gre multipoint
============================================
Ở đây tunnel des đã được thay bằng multipoit. nó được thay thế bằng câu lệnh  tunnel mode gre multipoint.
 ip nhrp map multicast dynamic là câu lệnh bật tính năng truyền multicast tới nhrp server.
 ip nhrp authentication cisco  là câu lệnh chứng thực với nhrp server mật khẩu là cisco.
 ip nhrp network-id 1 là lệnh để xác định cloud của DMVPN này. có thể nói nó giống area trong ospf vậy.


Cấu hình trên Spoke1 và Spoke2:

interface FastEthernet0/0
 ip ospf 10 area 0

 description WAN-Network
 ip address 2.2.2.1 255.255.255.0
 duplex auto
 speed auto
!
interface FastEthernet0/1 // không tham gia ospf nhé
 description LAN-Network
 ip address 192.168.20.1 255.255.255.0
 duplex auto
 speed auto

interface Tunnel0
 description R2 mGRE - DMVPN Tunnel
 ip address 172.16.0.2 255.255.255.0   //trên spoke2 là 172.16.0.3 255.255.255.0
 no ip redirects
 ip nhrp authentication cisco
 ip nhrp map multicast dynamic
 ip nhrp map 172.16.0.1 1.1.1.1
 ip nhrp map multicast 1.1.1.1
 ip nhrp network-id 1
 ip nhrp nhs 172.16.0.1
 tunnel source 2.2.2.1   // trên spoke 2 thay là 3.3.3.1
 tunnel mode gre multipoin
Cấu hình trên Spoke 2 tương tự như Spoke1 chỉ cần thay ip vào.
====================================================
 ip nhrp nhs 172.16.0.1  là câu lệnh nói cho Spoke biết đâu nhrp server, nhs là next hop server.
 ip nhrp map multicast 1.1.1.1 là câu lệnh để đảm bảo răng gói tin multicast chỉ gửi cho nhrp server là 1.1.1.1


Trên Router đóng vai trò là Internet :

interface Ethernet0/0
 ip address 1.1.1.2 255.255.255.0
 ip ospf 10 area 0
interface Ethernet0/1
 ip address 2.2.2.2 255.255.255.0
 ip ospf 10 area 0
end
interface Ethernet0/2
 ip address 3.3.3.2 255.255.255.0
 ip ospf 10 area 0
end

Bây giờ thì các cổng WAN đã ping thấy nhau rồi. Và thiết lập DMVPN đã xong ta kiểm tra bằng lệnh

HUB#show dmvpn
Legend: Attrb --> S - Static, D - Dynamic, I - Incomplete
        N - NATed, L - Local, X - No Socket
        # Ent --> Number of NHRP entries with same NBMA peer
        NHS Status: E --> Expecting Replies, R --> Responding, W --> Waiting
        UpDn Time --> Up or Down Time for a Tunnel
==========================================================================

Interface: Tunnel0, IPv4 NHRP Details
Type:Hub, NHRP Peers:2,

 # Ent  Peer NBMA Addr Peer Tunnel Add State  UpDn Tm Attrb
 ----- --------------- --------------- ----- -------- -----
     1 2.2.2.1              172.16.0.2    UP 01:30:49     D
     1 3.3.3.1              172.16.0.3    UP 01:31:43     D

Spoke1#show dmvpn 
Legend: Attrb --> S - Static, D - Dynamic, I - Incomplete
        N - NATed, L - Local, X - No Socket
        # Ent --> Number of NHRP entries with same NBMA peer
        NHS Status: E --> Expecting Replies, R --> Responding, W --> Waiting
        UpDn Time --> Up or Down Time for a Tunnel
==========================================================================

Interface: Tunnel0, IPv4 NHRP Details 
Type:Spoke, NHRP Peers:2, 

 # Ent  Peer NBMA Addr Peer Tunnel Add State  UpDn Tm Attrb
 ----- --------------- --------------- ----- -------- -----
     1 1.1.1.1              172.16.0.1    UP 01:31:14     S
     1 3.3.3.1              172.16.0.3    UP 00:58:50     D


Spoke2#show dmvpn 
Legend: Attrb --> S - Static, D - Dynamic, I - Incomplete
        N - NATed, L - Local, X - No Socket
        # Ent --> Number of NHRP entries with same NBMA peer
        NHS Status: E --> Expecting Replies, R --> Responding, W --> Waiting
        UpDn Time --> Up or Down Time for a Tunnel
==========================================================================

Interface: Tunnel0, IPv4 NHRP Details 
Type:Spoke, NHRP Peers:2, 

 # Ent  Peer NBMA Addr Peer Tunnel Add State  UpDn Tm Attrb
 ----- --------------- --------------- ----- -------- -----
     1 1.1.1.1              172.16.0.1    UP 01:32:29     S
     1 2.2.2.1              172.16.0.2    UP 00:59:11     D


Mã hóa DMVPN mGRE Tunnel với IPsec

Cấu hình IPsec cho HUB:

crypto isakmp policy 1
encr 3des
hash md5
authentication pre-share
group 2
lifetime 86400
!
crypto isakmp key cisco address 0.0.0.0
!
crypto ipsec transform-set myset esp-3des esp-md5-hmac
!
crypto ipsec profile protect-gre
set security-association lifetime seconds 86400
set transform-set myset
!
interface Tunnel 0
tunnel protection ipsec profile protect-gre
============================================
để có thể peer tới các Spoke nhận ip động từ ISP nên ta phải dùng câu lệnh crypto isakmp key cisco address 0.0.0.0 
Cấu hình IPsec cho Spoke1 và Spoke2 :
crypto isakmp policy 1
encr 3des
hash md5
authentication pre-share
group 2
lifetime 86400
!
crypto isakmp key cisco address 0.0.0.0 0.0.0.0
!
crypto ipsec transform-set myset esp-3des esp-md5-hmac
!
crypto ipsec profile protect-gre
set security-association lifetime seconds 86400
set transform-set myset
!
interface Tunnel 0
tunnel protection ipsec profile protect-gre

=========================================================


Kiểm tra các thiết lập IPsec:

HUB#show crypto ses
Crypto session current status

Interface: Tunnel0
Session status: UP-ACTIVE     
Peer: 3.3.3.1 port 500 
  Session ID: 0  
  IKEv1 SA: local 1.1.1.1/500 remote 3.3.3.1/500 Active 
  IPSEC FLOW: permit 47 host 1.1.1.1 host 3.3.3.1 
        Active SAs: 2, origin: crypto map

Interface: Tunnel0
Session status: UP-ACTIVE     
Peer: 2.2.2.1 port 500 
  Session ID: 0  
  IKEv1 SA: local 1.1.1.1/500 remote 2.2.2.1/500 Active 
  Session ID: 0  
  IKEv1 SA: local 1.1.1.1/500 remote 2.2.2.1/500 Active 
  IPSEC FLOW: permit 47 host 1.1.1.1 host 2.2.2.1 
        Active SAs: 2, origin: crypto map


Spoke1#show crypto session
Crypto session current status

Interface: Tunnel0
Session status: UP-ACTIVE   
Peer: 3.3.3.1 port 500
  Session ID: 0
  IKEv1 SA: local 2.2.2.1/500 remote 3.3.3.1/500 Active
  Session ID: 0
  IKEv1 SA: local 2.2.2.1/500 remote 3.3.3.1/500 Active
  IPSEC FLOW: permit 47 host 2.2.2.1 host 3.3.3.1
        Active SAs: 2, origin: crypto map

Interface: Tunnel0
Session status: UP-ACTIVE   
Peer: 1.1.1.1 port 500
  Session ID: 0
  IKEv1 SA: local 2.2.2.1/500 remote 1.1.1.1/500 Active
  Session ID: 0
  IKEv1 SA: local 2.2.2.1/500 remote 1.1.1.1/500 Active
  IPSEC FLOW: permit 47 host 2.2.2.1 host 1.1.1.1
        Active SAs: 2, origin: crypto map

Routing giữa các DMVPN với nhau:

Để các mạng LAN giữa các Router có thể Ping thấy nhau ta phải route cho nó:
Trên HUB:
ip route 192.168.20.0 255.255.255.0 172.16.0.2
ip route 192.168.30.0 255.255.255.0 172.16.0.3

Trên Spoke1:
ip route 192.168.10.0 255.255.255.0 172.16.0.1
ip route 192.168.30.0 255.255.255.0 172.16.0.3
Trên Spoke2 :
ip route 192.168.1.0 255.255.255.0 172.16.0.1
ip route 192.168.2.0 255.255.255.0 172.16.0.2
Video hướng dẫn: 

Bài viết có tham khảo tại : firewall.cx

Xem nhiều nhất