1. Sơ đồ mạng:
2. Mô tả:
+Controller bao gồm các thiết bị sau:
+Thực hiện tạo xác thực cho các thiết bị
Địa chỉ IP của vBond
Lưu ý: Đảm bảo phần Controller Certificate Authorization phải để Manual
Cấu hình cơ bản:
vManage
vBond
vSmart
vEdge site 1
vEdge site 2
vEdge site 3
Certificate Server:
Ở bài lab này chúng ta sẽ dùng vManage làm server chứng thực. Dùng openssl để tạo và ký certificates từ vshell
Tạo chứng thực ROOTCA.pem và dùng khoá ROOTCA.key để ký chứng thực đó
Chứng thực ROOTCA.pem cần cài đặt thủ công trên mọi thiết bị.
Thoát vshell và cài đặt ROOTCA.pem từ viptela-cli
Kết quả:
Truy cập vào giao diện web để tạo một yêu cầu ký chứng thực
Configuration → Certificates → Controllers → vManage → Generate CSR
Một cửa sổ sẽ hiện ra với mã CSR. Ở mode vshell, sử dụng vim để tạo ra một file với tên vmanage.csr với mã CSR đó
Ký file vmanage.csr với khoá ROOTCA.key
Kết quả:
Dùng lệnh cat để xem nội dung file vmanage.crt và cài đặt chứng thực trên giao diện web
Configuration → Certificates → Controllers → Install Certificate:
Dán nội dung file vmanage.crt vào cửa sổ hiện lên rồi nhấn install
Thông báo cài đặt thành công:
vBond:
Thêm chứng thực ROOTCA.pem vào vBonds root certificate chain
Kết quả:
Thêm vBond vào vManage trên giao diện web
Nhập địa chỉ của vBond là 10.1.1.2 vào
+Thêm các thiết bị vào vManage
Lưu ý: thiết bị Viptela sử dụng hệ điều hành ubuntu 14.04 nên sẽ có 2 chế độ CLI đó là vshell và viptela-cli:
Viptela-cli sẽ hoạt động gần giống như các thiết bị Cisco IOS khác
Vshell:
Để vào mode vshell, dùng câu lệnh vshell. Vshell hoạt động tượng tự như bash shell
3. Thực hiện:
vManage:
Sử dụng trình duyệt web của PC truy cập vào địa chỉ IP của vManage: https://192.168.1.1:8443 để cấu hình với username và password là admin. Vào Administration -> Settings để cấu hình
Nhập tên organization là “vnpro-lab”
Lưu ý: tắt tunnel-interface trên cổng ge0/0 với lệnh “no tunnel-interface” mới kết nối được vBond
Kết quả khi thêm thiết bị thành công
Lấy CSR của vBond
Configuration → Certificates → Controllers → vBond → View CSR
Của sổ hiện lên với CSR của vBond. Dùng vim để tạo file vbond.csr trên vManage
Chứng thực vbond.csr bằng khoá ROOTCA.key
Kết quả
Dùng lệnh cat để xem nội dung file vbond.crt và cài đặt chứng thực trên giao diện web
Configuration → Certificates → Controllers → Install Certificate
Gửi danh sách chứng chỉ qua vBond
Configuration → Certificates → Controllers → Send to vBond
Kết quả khi thành công
vSmart:
Thêm chứng chỉ ROOTCA.pem vào vSmart
Kết quả
Thêm vSmart vào vManage trên giao diện web
Configuration → Devices → Controllers → Add Controller → vSmart
Đăng nhập địa chỉ IP vSmart: 10.1.1.3 và username/password là admin/admin
Copy vSmart CSR
Configuration → Certificates → Controllers → vSmart → View CSR:
Sau đó tạo file vsmart.csr trên vManage với nội dung là CSR phía trên bằng Vim và chứng thực vsmart.csr bằng khoá ROOTCA.key
Dùng lệnh cat trên vshell để xem nội dung file vsmart.crt và cài đặt chứng thực trên web
Configuration → Certificates → Controllers → Install Certificate
Kết quả:
Không cần update to vBond vì vBond đã được cập nhật khi cài đặt các chứng thực
Kiểm tra các thiết bị đã có chứng chỉ đầy đủ
Configuration → Certificates → Controllers
vEdge:
Ở thiết bị vManage, ta dùng lệnh cat để xuất nội dụng file ROOTCA.pem. Sau đó tạo file ROOTCA.key với nội dung trên
Sau khi tạo được file ROOTCA.pem, thực hiện cài đặt lên vEdge bằng lệnh ở viptela-cli
Kết quả:
Sau đó trên vEdge tạo certificate signing request với organization name là vnpro-lab
Kết quả:
Dùng lệnh cat để lấy nội dung file vedge-01.csr mới tạo, và tạo file vedge-01.csr lên vManage bằng lệnh vim ở mode vshell. Sau đó trên vManage ký file csr
Kết quả:
Dùng lệnh cat để lấy nội dung file vedge-01.crt và tạo file vedge-01.crt trên vedge bằng lệnh vim ở mode vshell rồi cài đặt ở mode viptela-cli.
Kết quả:
Lấy thông tin chi tiết certificate của vEdge ở mode viptela-cli :
Kết quả:
Lấy thông tin trên tạo 1 file vedge.csv và upload lên vManage web với cấu trúc nội dung
[chassis number],[serial number]
File vedge.csv sẽ có dạng
Làm tương tự với 2 vEdge còn lại và upload file vedge lên vManage web
Configuration → Devices → Upload vEdge List
Gửi list vEdges đến controller
Configuration → Certificates → vEdge List → Send to Controllers
Validate vEdges
Configuration → Certificates → vEdge List → (vEdge) → Valid
Tiếp theo gửi danh sách vEdge đến các controller
Configuration → Certificates → vEdge List → Send to Controllers
Cấu hình tunnel interfaces để tạo thành control plane
vManage/Smart
vBond
Kiểm tra với lệnh:
Thiết bị | VPN 0 | VPN 512 ( mgmt) |
VManage | 10.1.1.1/24 | 192.168.1.1/24 |
VBond | 10.1.1.2/24 | 192.168.1.2/24 |
VSmart | 10.1.1.3/24 | 192.168.1.3/24 |
PC | 192.168.1.4/24 |
IP Site | IP control plane | |
vEdge-01 | 1.0.0.2/24 | 1.0.0.1/24 |
vEdge-02 | 2.0.0.2/24 | 2.0.0.1/24 |
vEdge-03 | 3.0.0.2/24 | 3.0.0.1/24 |
Tên thiết bị | Username | Password |
vManage | admin | admin |
vBond | admin | admin |
vSmart | admin | admin |
PC | Test123 |
+Controller bao gồm các thiết bị sau:
- vManage NMS: điểm trung tâm giám sát và cấu hình
- vBond Orchestrator: Định danh và xác thực các thiết bị tham gia vào lớp mạng
- vSmartController: Điểm quản lý chính sách Routing
+Thực hiện tạo xác thực cho các thiết bị
Địa chỉ IP của vBond
Lưu ý: Đảm bảo phần Controller Certificate Authorization phải để Manual
Cấu hình cơ bản:
vManage
Code:
vmanage#conf vmanage(config)# system vmanage(config-system)# system-ip 1.1.1.1 vmanage(config-system)# site-id 1000 vmanage(config-system)# organization-name "vnpro-lab" vmanage(config-system)# vbond 10.1.1.2 vmanage(config-system)# vpn 0 int eth0 vmanage(config-interface-eth0)#ip add 10.1.1.1/24 vmanage(config-interface-eth0)#no shut vmanage(config-interface-eth0)#exit vmanage(config-vpn-0)#ip route 0.0.0.0/0 10.1.1.254 vmanage(config-interface-eth0)#vpn 512 int eth1 vmanage(config-interface-eth1)#ip add 192.168.1.1/24 vmanage(config-interface-eth1)#no shutdown vmanage(config-interface-eth1)#commit and-quit
vBond
Code:
vbond#conf vbond(config)#system vbond(config-system)# system-ip 1.1.1.2 vbond(config-system)# site-id 1000 vbond(config-system)# organization-name "vnpro-lab" vbond(config-system)# vbond 10.1.1.2 local vbond-only vbond(config-system)# vpn 0 int ge0/0 vbond(config-interface-ge0/0)#ip add 10.1.1.2/24 vbond(config-interface-ge0/0)#no shutdown vbond(config-interface-ge0/0)#exit vbond(config-interface-ge0/0)#vpn 512 int eth0 vbond(config-interface-eth0)#ip add 192.168.1.2/24 vbond(config-interface-eth0)#no shut vbond(config-interface-eth0)#commit and-quit
vSmart
Code:
vsmart#conf vsmart(config)#system vsmart(config-system)# system-ip 1.1.1.3 vsmart(config-system)# site-id 1000 vsmart(config-system)# organization-name "vnpro-lab" vsmart(config-system)# vbond 10.1.1.2 vsmart(config-system)# vpn 0 int eth0 vsmart(config-interface-ge0/0)#ip add 10.1.1.3/24 vsmart(config-interface-ge0/0)#no shutdown vsmart(config-interface-ge0/0)#exit vsmart(config-vpn-0)#ip route 0.0.0.0/0 10.1.1.254 vsmart(config-interface-ge0/0)#vpn 512 int eth1 vsmart(config-interface-eth0)#ip add 192.168.1.3/24 vsmart(config-interface-eth0)#no shut vsmart(config-interface-eth0)#commit and-quit
vEdge site 1
Code:
vedge#conf vedge(config)#system vedge(config-system)# system-ip 2.1.1.1 vedge(config-system)# site-id 1 vedge(config-system)# organization-name vnpro-lab vedge(config-system)# vbond 10.1.1.2 vedge(config-system)# vpn 0 int ge0/0 vedge(config-interface-ge0/0)#ip add 1.0.0.2/24 vedge(config-interface-ge0/0)#no shutdown vedge(config-interface-ge0/0)#exit vedge(config-vpn-0)#ip route 0.0.0.0/0 1.0.0.1 vedge(config-interface-eth0)#commit and-quit
vEdge site 2
Code:
vedge#conf vedge(config)#system vedge(config-system)# system-ip 3.1.1.1 vedge(config-system)# site-id 1 vedge(config-system)# organization-name vnpro-lab vedge(config-system)# vbond 10.1.1.2 vedge(config-system)# vpn 0 int ge0/0 vedge(config-interface-ge0/0)#ip add 2.0.0.2/24 vedge(config-interface-ge0/0)#no shutdown vedge(config-interface-ge0/0)#exit vedge(config-vpn-0)#ip route 0.0.0.0/0 2.0.0.1 vedge(config-interface-eth0)#commit and-quit
vEdge site 3
Code:
vedge#conf vedge(config)#system vedge(config-system)# system-ip 4.1.1.1 vedge(config-system)# site-id 1 vedge(config-system)# organization-name vnpro-lab vedge(config-system)# vbond 10.1.1.2 vedge(config-system)# vpn 0 int ge0/0 vedge(config-interface-ge0/0)#ip add 3.0.0.2/24 vedge(config-interface-ge0/0)#no shutdown vedge(config-interface-ge0/0)#exit vedge(config-vpn-0)#ip route 0.0.0.0/0 3.0.0.1 vedge(config-interface-eth0)#commit and-quit
Certificate Server:
Ở bài lab này chúng ta sẽ dùng vManage làm server chứng thực. Dùng openssl để tạo và ký certificates từ vshell
Code:
# vshell openssl genrsa -out ROOTCA.key 2048 # output Generating RSA private key, 2048 bit long modulus .................................................. ...+++ ................+++ e is 65537 (0x10001)
Code:
# vshell openssl req -x509 -new -nodes -key ROOTCA.key -sha256 -days 1024 \ -subj "/C=AU/ST=NSW/L=NSW/O=vnpro-lab/CN=vmanage.lab" \ -out ROOTCA.pem
Thoát vshell và cài đặt ROOTCA.pem từ viptela-cli
Code:
vmanage# request root-cert-chain install /home/admin/ROOTCA.pem
Kết quả:
Code:
Uploading root-ca-cert-chain via VPN 0 Copying ... /home/admin/ROOTCA.pem via VPN 0 Updating the root certificate chain.. Successfully installed the root certificate chain
Configuration → Certificates → Controllers → vManage → Generate CSR
Một cửa sổ sẽ hiện ra với mã CSR. Ở mode vshell, sử dụng vim để tạo ra một file với tên vmanage.csr với mã CSR đó
Ký file vmanage.csr với khoá ROOTCA.key
Code:
# vshell
Code:
openssl x509 -req -in vmanage.csr \ -CA ROOTCA.pem -CAkey ROOTCA.key -CAcreateserial \ -out vmanage.crt -days 500 -sha256
Kết quả:
Code:
Signature ok subject=/C=US/ST=California/L=San Jose/OU=vnpro-lab/O=vIPtela Inc/CN=vmanage-436f316d-5761-4fb4-bc4e-d446c581f76e-0.viptela.com/emailAddress=support@viptela.com Getting CA Private Key
Configuration → Certificates → Controllers → Install Certificate:
Dán nội dung file vmanage.crt vào cửa sổ hiện lên rồi nhấn install
Thông báo cài đặt thành công:
vBond:
Thêm chứng thực ROOTCA.pem vào vBonds root certificate chain
Code:
request root-cert-chain install scp://admin@192.168.1.1:/home/admin/ROOTCA.pem vpn 512
Code:
Uploading root-ca-cert-chain via VPN 512 Copying ... admin@192.168.1.1:/home/admin/ROOTCA.pem via VPN 512 Warning: Permanently added '192.168.1.1' (ECDSA) to the list of known hosts. viptela 18.4.3 admin@192.168.1.1s password: ROOTCA.pem 100% 1265 762.8KB/s 00:00 Updating the root certificate chain.. Successfully installed the root certificate chain
Nhập địa chỉ của vBond là 10.1.1.2 vào
+Thêm các thiết bị vào vManage
Lưu ý: thiết bị Viptela sử dụng hệ điều hành ubuntu 14.04 nên sẽ có 2 chế độ CLI đó là vshell và viptela-cli:
Viptela-cli sẽ hoạt động gần giống như các thiết bị Cisco IOS khác
Code:
Viptela-cli sẽ có dạng như sau: Vmanage#
Để vào mode vshell, dùng câu lệnh vshell. Vshell hoạt động tượng tự như bash shell
Code:
Vshell sẽ có dạng như sau:
Code:
Vmanage:~$
vManage:
Sử dụng trình duyệt web của PC truy cập vào địa chỉ IP của vManage: https://192.168.1.1:8443 để cấu hình với username và password là admin. Vào Administration -> Settings để cấu hình
Nhập tên organization là “vnpro-lab”
Lưu ý: tắt tunnel-interface trên cổng ge0/0 với lệnh “no tunnel-interface” mới kết nối được vBond
Kết quả khi thêm thiết bị thành công
Lấy CSR của vBond
Configuration → Certificates → Controllers → vBond → View CSR
Của sổ hiện lên với CSR của vBond. Dùng vim để tạo file vbond.csr trên vManage
Chứng thực vbond.csr bằng khoá ROOTCA.key
Code:
# vshell vmanage openssl x509 -req -in vbond.csr \ -CA ROOTCA.pem -CAkey ROOTCA.key -CAcreateserial \ -out vbond.crt -days 500 -sha256
Code:
Signature ok subject=/C=US/ST=California/L=San Jose/OU=vnpro-lab/O=vIPtela Inc/CN=vbond-4a1fa3eb-7b2e-4b1e-86a7-241979e40475-0.viptela.com/emailAddress=support@viptela.com Getting CA Private Key
Configuration → Certificates → Controllers → Install Certificate
Gửi danh sách chứng chỉ qua vBond
Configuration → Certificates → Controllers → Send to vBond
Kết quả khi thành công
vSmart:
Thêm chứng chỉ ROOTCA.pem vào vSmart
Code:
request root-cert-chain install scp://admin@192.168.1.1:/home/admin/ROOTCA.pem vpn 512
Code:
Uploading root-ca-cert-chain via VPN 512
Code:
Copying ... admin@192.168.1.1:/home/admin/ROOTCA.pem via VPN 512 Warning: Permanently added '192.168.1.1' (ECDSA) to the list of known hosts. viptela 18.4.3 admin@192.168.1.1s password: ROOTCA.pem 100% 1265 762.8KB/s 00:00 Updating the root certificate chain. Successfully installed the root certificate chain
Configuration → Devices → Controllers → Add Controller → vSmart
Đăng nhập địa chỉ IP vSmart: 10.1.1.3 và username/password là admin/admin
Copy vSmart CSR
Configuration → Certificates → Controllers → vSmart → View CSR:
Sau đó tạo file vsmart.csr trên vManage với nội dung là CSR phía trên bằng Vim và chứng thực vsmart.csr bằng khoá ROOTCA.key
Code:
openssl x509 -req -in vsmart.csr \ -CA ROOTCA.pem -CAkey ROOTCA.key -CAcreateserial \ -out vsmart.crt -days 500 -sha256
Configuration → Certificates → Controllers → Install Certificate
Kết quả:
Không cần update to vBond vì vBond đã được cập nhật khi cài đặt các chứng thực
Kiểm tra các thiết bị đã có chứng chỉ đầy đủ
Configuration → Certificates → Controllers
vEdge:
Ở thiết bị vManage, ta dùng lệnh cat để xuất nội dụng file ROOTCA.pem. Sau đó tạo file ROOTCA.key với nội dung trên
Sau khi tạo được file ROOTCA.pem, thực hiện cài đặt lên vEdge bằng lệnh ở viptela-cli
Code:
#trên vedge request root-cert-chain install /home/admin/ROOTCA.pem
Code:
Uploading root-ca-cert-chain via VPN 0 Copying ... /home/admin/ROOTCA.pem via VPN 0 Updating the root certificate chain.. Successfully installed the root certificate chain
Code:
# trên vEdge request csr upload /home/admin/vedge-01.csr
Code:
Uploading CSR via VPN 0 Enter organization-unit name : vnpro-lab Re-enter organization-unit name : vnpro-lab Generating private/public pair and CSR for this vedge device Generating CSR for this vedge device ........[DONE] Copying ... /home/admin/vedge-01.csr via VPN 0 CSR upload successful
Code:
#trên vManage openssl x509 -req -in vedge-01.csr \ -CA ROOTCA.pem -CAkey ROOTCA.key -CAcreateserial \ -out vedge-01.crt -days 500 -sha256
Code:
subject=/C=US/ST=California/L=San Jose/OU=vnpro-lab/O=vIPtela Inc/CN=vedge-aa64e3dc-045a-45fc-997e-ef7eaf62d201-0.viptela.com/emailAddress=support@viptela.com
Code:
Getting CA Private Key
Code:
#trên vedge request certificate install /home/admin/vedge-01.crt
Code:
Installing certificate via VPN 0 Copying ... /home/admin/vedge-01.crt via VPN 0 Successfully installed the certificate
Code:
show certificate serial
Code:
Chassis number: aa64e3dc-045a-45fc-997e-ef7eaf62d201 serial number: AF28F35F48D8307C
[chassis number],[serial number]
File vedge.csv sẽ có dạng
Code:
aa64e3dc-045a-45fc-997e-ef7eaf62d20,AF28F35F48D8307C
Configuration → Devices → Upload vEdge List
Gửi list vEdges đến controller
Configuration → Certificates → vEdge List → Send to Controllers
Validate vEdges
Configuration → Certificates → vEdge List → (vEdge) → Valid
Tiếp theo gửi danh sách vEdge đến các controller
Configuration → Certificates → vEdge List → Send to Controllers
Cấu hình tunnel interfaces để tạo thành control plane
vManage/Smart
Code:
vpn 0 interface eth1 tunnel-interface !
vBond
Code:
vpn 0 interface ge0/0 tunnel-interface encapsulation ipsec !
Nguồn: VnPro