Kịch bản

Công ty có nhiều chi nhánh và liên kết thông qua đường truyền MPLS, internet, v.v…, việc quản lý và chuyển giao traffic giữa các chi nhánh trở nên phức tạp nếu sử dụng cấu hình truyền thống như DMVPN. Sự khó khăn này bao gồm việc quản lý thủ công, khả năng nhầm lẫn, khả năng theo dõi ứng dụng trên đường truyền, và khó khăn khi thêm mới router tại chi nhánh.

Giải pháp SD-WAN của Cisco giải quyết những vấn đề này bằng cách tự động hóa nhiều khía cạnh:

  • Tự động định tuyến giữa các chi nhánh thông qua việc thêm router WAN (vEDGE) vào hệ thống quản lý (NMS – vManage, vSmart, vBond). Quá trình này được thực hiện tự động bởi vSmart thông qua giao thức OMP, và admin có thể thao tác chặn traffic một cách linh hoạt.
  • Khi có router mới ở chi nhánh, chỉ cần cấu hình IP và thêm vào hệ thống NMS. NMS sau đó tự động đẩy cấu hình xuống router mới, giúp admin thao tác dễ dàng thông qua giao diện webgui và sử dụng template. Trong trường hợp mất kết nối do cấu hình mới, vEDGE sẽ tự động rollback về cấu hình trước đó.
  • Cung cấp khả năng theo dõi traffic trên đường WAN và xác định ứng dụng đang chạy.
  • Bảo mật traffic trên đường WAN bằng cách sử dụng mã hóa IPsec, và quá trình này được thực hiện tự động với việc enable IPsec.

Tóm tắt quá trình

Bạn xây dựng Lab như trên ảnh, recommend khoảng 16 CPU và 30GB Ram.

Nhiệm vụ:

  • Vmanage: quản lí dạng giao diện, cho phép giám sát các thành phần khác, tạo policy, config rồi đẩy xuống các thiết bị còn lại
  • Vbond: làm cầu nối xác thực để giúp các router WAN (wan edge) gia nhập vào mạng lưới sdwan
  • Vsmart: điều khiển, phân phối routing giữa các router WAN (tương tự vai trò của Route Reflector trong BGP)

Khi khởi động vManager, vBond hoặc vSmart lần đầu tiên, bạn sẽ chỉ có quyền truy cập vào CLI. Chúng ta sẽ cấu hình hai phần:

  • Cấu hình hệ thống: Cấu hình cơ bản như tên máy chủ, tên tổ chức và một số mục khác.
  • Interface VPN0 : Đây là overlay network.

Sau đó, chúng sẽ có khả năng kết nối mạng và có thể nói chuyện với nhau. Một điều khác, Cisco SD-WAN yêu cầu certificates trên mỗi thiết bị. Để tạo chứng chỉ, bạn cần thiết lập root CA mới và tự ký chứng chỉ cho tất cả các bộ điều khiển.

Cấu hình vManage

Đăng nhập với tên người dùng và mật khẩu mặc định là “admin”

vmanage login: admin
Password: 
Welcome to Viptela CLI
admin connected from 127.0.0.1 using console on vmanage
You must set an initial admin password.
Password: 
Re-enter password: 

Sau đó, bạn sẽ phải chọn thiết bị lưu trữ. Tôi sử dụng ổ đĩa 100 GB mà tôi đã tạo khi xây dựng cấu trúc liên kết trong EVE-NG

Available storage devices:
vdb     100GB
hdc     3GB
1) vdb
2) hdc
Select storage device to use: 1
Would you like to format vdb? (y/n): y
mke2fs 1.43.8 (1-Jan-2018)
Creating filesystem with 26214400 4k blocks and 6553600 inodes
Filesystem UUID: 55c71c51-4e3d-4f74-96cb-cee2c32917f2
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
        4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (131072 blocks): done
Writing superblocks and filesystem accounting information: done   

wall: cannot get tty name: Success
                                                                               
Broadcast message from root@vmanage (somewhere) (Thu Jul  8 13:36:31 2021):    
                                                                               
13:44:26.454 §Thu Jul  8 13:36:31 UTC 2021: The system is going down for reboot NOW!

Sau khi format ổ đĩa, vManager sẽ khởi động lại, quá trình này có thể mất vài phút. Chờ cho đến khi bạn thấy thông báo “System Ready”, đăng nhập lại, nếu không sẽ báo đăng nhập lỗi.

Sau khi đăng nhập xong, bạn sẽ ở CLI mode, nhập configure để vào mode config và cấu hình cơ bản

vmanage# configure
vmanage(config)# system
vmanage(config-system)# host-name vManage1
vmanage(config-system)# system-ip 1.1.1.1 ## ip loopback
vmanage(config-system)# site-id 1
vmanage(config-system)# organization-name test.local ## đồng nhất tên org
vmanage(config-system)# vbond 10.0.0.2 ## ip LAN của vbond
vmanage(config-system)# exit

Cấu hình VPN0 interface

vmanage(config)# vpn 0
vmanage(config-interface-eth0)# ip route 0.0.0.0/0 10.0.0.254
vmanage(config-vpn-0)# interface eth0
vmanage(config-interface-eth0)# ip address 10.0.0.1/24
vmanage(config-interface-eth0)# no shutdown
vmanage(config-interface-eth0)# tunnel-interface
vmanage(config-tunnel-interface)# allow-service all
vmanage(config-tunnel-interface)# exit
vmanage(config-interface-eth0)# exit
vmanage(config-vpn-0)# exit
vmanage(config)# commit ## lưu cấu hình
Commit complete.

Cấu hình Vbond

Đăng nhập với tên người dùng và mật khẩu mặc định là “admin”, thực hiện tương tự như trên.

Sau khi đăng nhập xong, bạn sẽ ở CLI mode, nhập configure để vào mode config và cấu hình cơ bản

vbond# configure
vbond(config)# system
vbond(config-system)# host-name vBond1
vbond(config-system)# system-ip 2.2.2.2 ## ip loopback
vbond(config-system)# site-id 1
vbond(config-system)# organization-name test.local ## đồng nhất tên org
vbond(config-system)# vbond 10.0.0.2 local ## khai báo tôi là vbond
vbond(config-system)# exit

Cấu hình VPN0 interface

vbond(config)# vpn 0
vbond(config-interface-eth0)# ip route 0.0.0.0/0 10.0.0.254
vbond(config-vpn-0)# interface ge0/0
vbond(config-interface-ge0/0)# ip address 10.0.0.2/24
vbond(config-interface-ge0/0)# tunnel-interface
vbond(config-tunnel-interface)# encapsulation ipsec ## bật IPSec
vbond(config-tunnel-interface)# allow-service all
vbond(config-tunnel-interface)# no shutdown
vbond(config-tunnel-interface)# exit
vbond(config-interface-eth0)# exit
vbond(config-vpn-0)# exit
vbond(config)# commit ## lưu cấu hình
Commit complete.

Cấu hình Vsmart

Đăng nhập với tên người dùng và mật khẩu mặc định là “admin”, thực hiện tương tự như trên.

Sau khi đăng nhập xong, bạn sẽ ở CLI mode, nhập configure để vào mode config và cấu hình cơ bản

vsmart# configure
vsmart(config)# system
vsmart(config-system)# host-name vSmart1
vsmart(config-system)# system-ip 3.3.3.3 ## ip loopback
vsmart(config-system)# site-id 1
vsmart(config-system)# organization-name test.local ## đồng nhất tên org
vsmart(config-system)# vbond 10.0.0.2 ## ip LAN của vbond
vsmart(config-system)# exit

Cấu hình VPN0 interface

vsmart(config)# vpn 0
vsmart(config-interface-eth0)# ip route 0.0.0.0/0 10.0.0.254
vsmart(config-vpn-0)# interface eth0
vsmart(config-interface-eth0)# ip address 10.0.0.3/24
vsmart(config-interface-eth0)# tunnel-interface
vsmart(config-tunnel-interface)# allow-service all
vsmart(config-tunnel-interface)# no shutdown
vsmart(config-tunnel-interface)# exit
vsmart(config-interface-eth0)# exit
vsmart(config-vpn-0)# exit
vsmart(config)# commit ## lưu cấu hình
Commit complete.

Tạo Cert và install trên vManager

Tạo root CA và private key

vManage1# vshell
vManage1:~$
vManage1:~$ openssl genrsa -out ROOT-CA.key 2048 ## tạo khóa bí mật
Generating RSA private key, 2048 bit long modulus
.........
......
e is 65537 (0x10001)
vManage1:~$ openssl req -x509 -new -nodes -key ROOT-CA.key -sha256 -days 3652 -subj "/C=NL/ST=NL/O=test/CN=vmanage1.lab.test.local" -out ROOT-CA.pem ## tạo cert từ khóa bí mật trên
vmanage:~$ cat ROOT-CA.pem ## xem nội dung của cert
-----BEGIN CERTIFICATE-----
MIIDczCCAlugAwIBAgIJAL0YvJsnyG61MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNV
BAYTAk5MMQswCQYDVQQIDAJOTDEWMBQGA1UECgwNbndsLWxhYi1zZHdhbjEcMBoG
A1UEAwwTdm1hbmFnZTEubGFiLm53bC5haTAeFw0yMTA3MDgxMzUxMTNaFw0zMTA3
MDgxMzUxMTNaMFAxCzAJBgNVBAYTAk5MMQswCQYDVQQIDAJOTDEWMBQGA1UECgwN
bndsLWxhYi1zZHdhbjEcMBoGA1UEAwwTdm1hbmFnZTEubGFiLm53bC5haTCCASIw
DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALXqecoq4L19Stwbz92iDr7X0o20
Uq1sMKKsDVIKRrJW78kIP+tJD3qb9iuKSsViqlOY7nqT96306adKRJtcx002f4gN
ETiY/APhk3R5ryTuEPJ5dnDa2TYtjUbsK4/f54RBWjBeMvm8x2g+/xYMKaYrPU6+
VYY8HR2idPF/q5B7mg7Thpr16qbmDM5F2MxK8WZFqPjRg0fyIzK5T/tb82PuTJpE
+MFxv2BYsW/xZbfu1jXZnCj/6OaoaJ0j0ZYX0JGd8TnNglCSxjL5OpC2PKKwlqrr
1Xq/hg5L9NMRHCCFr0616HZkw9Okr47R2kmXsemP6y40ydm+XwkYPzHGJ4sCAwEA
AaNQME4wHQYDVR0OBBYEFBv1C14HVrF0H2kMrzfrjtr23fxKMB8GA1UdIwQYMBaA
FBv1C14HVrF0H2kMrzfrjtr23fxKMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEL
BQADggEBAFnwbs5RaUQs8d9SSGZ/YDCCxFf+T4QdQGhkH2E8gb5sKC/VW8bvTcjT
65ac0DUkhVnBWCShVCia5egzyqUzpYdrOcRPZh5RiLecU2ekvOHsm1PiQctnPehL
eDTw+Ft0IAuQMrHO7rwquV1JQyuPQEBIabSTwrDn3dQh61nuFk9qGb8mcwzqrQ7Z
sRXYOUwT9awMP5UKx3j6jt3vN5xvpeShd9H5scww0NyUew5ucd8raO4Jb/LKLIgJ
E9TuBX2Wv9RhM5Bcv1iznUe+hcvsHUrfRhysZetbftJ5Z80QIfcaLWLjPe6kASRr
q9JEcuKO1OoJOgDuWe8BqYVYruBn+cU=
-----END CERTIFICATE-----

Truy cập vManage GUI, đây là nơi chúng ta cần cài đặt chứng chỉ. Mở trình duyệt với IP của vManage https://10.0.0.1:8443

Đăng nhập, sau đó vào Administration -> Settings

Sửa phần tên tổ chức và IP của vBond như cấu hình

Dưới phần Controller Certificate Authorization, chọn Enterprise Root Certificate và paste nội dung cert vào đây

Tiếp theo , mỗi thiết bị Vmanage, Vbond, Vsmart cần tạo ra file CSR, rồi chuyển file CSR đó lên con CA (Certificate Authority) để kí , tạo ra file chứng chỉ.

Vào Configuration -> Certificates -> Controllers, ở vManage chọn Generate CSR

Bạn không phải tải xuống hoặc sao chép file này vì nó được lưu tự động tại /home/admin/vmanage_csr

Quay lại vManage, tạo cert vmanage1.crt từ file CSR vừa tạo

vManage1# vshell
vManage1:~$ ls -lh
total 16K
-rw-r--r-- 1 admin admin 1.7K Jul  8 13:50 ROOT-CA.key
-rw-r--r-- 1 admin admin 1.3K Jul  8 13:51 ROOT-CA.pem
-rw-r--r-- 1 admin admin  394 Jul  8 13:40 archive_id_rsa.pub
-rw-r--r-- 1 root  root  1.2K Jul  8 14:14 vmanage_csr
vManage1:~$ openssl x509 -req -in vmanage_csr -CA ROOT-CA.pem -CAkey ROOT-CA.key -CAcreateserial -out vmanage1.crt -days 1826 -sha256
Signature ok
subject=/C=US/ST=California/L=San Jose/OU=nwl-lab-sdwan/O=Viptela LLC/CN=vmanage-4a0c409a-bc56-428d-9449-c27635715990-0.viptela.com/[email protected]
Getting CA Private Key
vmanage:~$ cat vmanage1.crt
-----BEGIN CERTIFICATE-----
MIIDmTCCAoECCQCSxilWaQdcEjANBgkqhkiG9w0BAQsFADBQMQswCQYDVQQGEwJO
TDELMAkGA1UECAwCTkwxFjAUBgNVBAoMDW53bC1sYWItc2R3YW4xHDAaBgNVBAMM
E3ZtYW5hZ2UxLmxhYi5ud2wuYWkwHhcNMjEwNzA4MTQxOTAyWhcNMjYwNzA4MTQx
OTAyWjCBzDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExETAPBgNV
BAcTCFNhbiBKb3NlMRYwFAYDVQQLEw1ud2wtc2R3YW4tbGFiMRQwEgYDVQQKEwtW
aXB0ZWxhIExMQzFDMEEGA1UEAxM6dm1hbmFnZS00YTBjNDA5YS1iYzU2LTQyOGQt
OTQ0OS1jMjc2MzU3MTU5OTAtMC52aXB0ZWxhLmNvbTEiMCAGCSqGSIb3DQEJARYT
c3VwcG9ydEB2aXB0ZWxhLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
ggEBALb1M9g86ZNl0HA1rk0mrjUosXNZ/rvlwPpPk5uhcJkmTAgweLKBm0E1DCri
j3qx1v9awePzX5JCQWWjeXvIZgyqWI/zmiHRts3cTxALWtsvI7ndjyW4njE4zqJs
d1X1LPgf4oMUhY21JhZKUbXwXLuyY7TSaIbVVcGG4pLb/pCZLQBTag98Lb2k5uOl
hntrH0R2m3uipGLmHmVIMd3fJune8toubRfqq8tvnhtzxWpRYiXIQ8+psvvO13Y+
TCs2Umy7ZgGMp+NyXhGHtV4ZhRQbHV2wBrELp6JOkiEzylPxf31FImPSf0PTNpsV
R2o7Y+JZ4u8ljx1kqprwk6Dr49UCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAoa4f
OaOe8qSzmHy4/KL0idDgq6mgz7KcW9fn2HJMMYqiRt02Lrl4VG3XczTe2OWVsmCD
COj4000laRyQqlt1d7m0zyKd+gBcJC9ZS0NVyRhfMqqFOTEfU1+XsB6ZCkIrkuOd
vPGUpdwZqb5FewYUDSTZ+LG6Sr69TmP0ZfLIkckGwr178/TiSJgP8s9UVIoO0hvs
ffLroq5Aoa9unkKJIcsZ/vMgMJcaR8mCkuv0J9jk7uPpORvTbMaxpPq8TX4IbTZ9
cjNAPrheD9CtmUPzCC/1DAVbbQYGhIlw3ka04mdN+l7RwIOuokR9m1tCHBNUompL
H3Y1/nuTytOAar5Fig==
-----END CERTIFICATE-----

Quay lại vManage GUI và chọn Install Certificate với nội dung file vmanage1.crt. Như này là thành công.

Tạo cert cho vBond

Trên vManage GUI, vào Configuration -> Devices -> Controllers. Bấm Add controller -> Vbond

Điền IP vBond và username, password và Generate CSR, sau đó quay lại vBond CLI

vBond1# vshell
vBond1:~$ request download scp://[email protected]:/home/admin/ROOT-CA.pem ## lấy file cert từ vmanage
vBond1:~$ request root-cert-chain install /home/admin/ROOT-CA.pem ## install cert
vBond1:~$ request upload scp://[email protected]:/home/admin/ vbond_csr ## đẩy file CSR lên vmanage để kí

Sau đó quay lại vManage, kí file CSR để tạo certificate cho vBond

vManage1# vshell
vManage1:~$ openssl x509 -req -in vbond_csr -CA ROOT-CA.pem -CAkey ROOT-CA.key -CAcreateserial -out vbond.crt -days 1826 -sha256
vManage1:~$ cat vbond.crt

Quay lại vManage GUI và Install Certificate với nội dung file vbond.crt là xong.

Tạo cert cho vSmart

Làm tương tự vBond để tạo file CSR, sau đó vào CLI

vBond1# vshell
vBond1:~$ request download scp://[email protected]:/home/admin/ROOT-CA.pem ## lấy file cert từ vmanage
vBond1:~$ request root-cert-chain install /home/admin/ROOT-CA.pem ## install cert
vBond1:~$ request upload scp://[email protected]:/home/admin/ vsmart_csr ## đẩy file CSR lên vmanage để kí

Sau đó quay lại vManage, kí file CSR để tạo certificate cho vSmart

vManage1# vshell
vManage1:~$ openssl x509 -req -in vsmart_csr -CA ROOT-CA.pem -CAkey ROOT-CA.key -CAcreateserial -out vsmart1.crt -days 1826 -sha256
vManage1:~$ cat vsmart1.crt

Quay lại vManage GUI và Install Certificate với nội dung file vsmart1.crt là xong.

Kiểm tra

Vào vManage GUI, Settings -> Certificates -> Controllers, thấy 3 controller đã được xác nhận

Kiểm tra trên CLI

vManage1# show control connections | t
## thấy hiện vbond và vsmart trên vmange
vBond1# show orchestrator connections | t
## thấy hiện vmange và vsmart trên vbond

Leave a Reply

This site uses cookies to offer you a better browsing experience. By browsing this website, you agree to our use of cookies.