![](https://blog.crfnetwork.com/wp-content/uploads/2024/02/image-18.png)
Giới thiệu
Việc backup định kỳ file cấu hình của Cisco là một thủ tục quan trọng để đảm bảo tính an toàn, dự phòng, và khôi phục trong mạng thông tin của bạn.
- Đảm bảo an toàn dữ liệu: File cấu hình chứa các thiết lập và cấu hình của thiết bị mạng. Nếu xảy ra sự cố như hỏng phần cứng, lỗi cấu hình, tấn công độc hại hoặc lỗi người dùng, bạn có thể khôi phục các thiết lập mạng từ bản sao lưu.
- Dự phòng và khôi phục: Backup định kỳ là một phần quan trọng trong chiến lược dự phòng và khôi phục. Nó giúp đảm bảo rằng bạn có một bản sao lưu của cấu hình hiện tại và bạn có thể phục hồi hệ thống nhanh chóng sau sự cố.
- Quản lý thiết bị: Việc backup định kỳ cho phép bạn quản lý và kiểm soát các cấu hình trên các thiết bị mạng của mình. Nếu bạn thay đổi cấu hình mạng hoặc thêm mới các tính năng, bạn có thể lưu trữ bản sao lưu trước và phục hồi lại nếu cần.
- Nghiên cứu và phân tích: Backup cấu hình cũng hỗ trợ các hoạt động nghiên cứu và phân tích. Nếu bạn muốn nghiên cứu sự thay đổi trong cấu hình hoặc phân tích hiệu suất mạng theo thời gian, có các bản sao lưu cấu hình trước đó là vô cùng hữu ích.
- Tuân thủ và bảo mật: Trong môi trường mạng doanh nghiệp, việc backup cấu hình cũng có thể là yêu cầu bởi chính sách bảo mật và tuân thủ của tổ chức. Nó giúp đảm bảo tính bảo mật và tuân thủ các quy định về dữ liệu và cấu hình mạng.
Backup cấu hình bằng Docker container
Container là một công nghệ cho phép bạn đóng gói ứng dụng và các phụ thuộc của nó (thư viện, môi trường thực thi, các file cấu hình) vào một gói đơn nhất. Các container cô lập ứng dụng và các thành phần của chúng khỏi hệ thống máy chủ và các container khác, nhưng chia sẻ hạt nhân của hệ điều hành. Điều này làm cho việc triển khai ứng dụng linh hoạt, di động, và dễ dàng.
Chuẩn bị
Trước tiên bạn cần cài đặt Docker, Docker có sẵn trên cả Windows lẫn Linux nên việc cài đặt khá đơn giản.
Tạo thư mục lưu trữ file backup (ví dụ cisco-backup-config)
Bật SSH trên các thiết bị cần backup
Backup thôi
Image mình sử dụng là ltp1120/backup-cisco. Image có 2 phiên bản chính:
- ltp1120/backup-cisco:1.1: chạy Ubuntu 20.04
- ltp1120/backup-cisco:1.2: chạy Ubuntu 18.04
Nếu bạn sử dụng các thiết bị Cisco đời cũ thì nên sử dụng version 1.0.2 vì phiên bản ssh trên Ubuntu 18.04 tương thích với các thiết bị cũ nhiều hơn.
Nếu bạn nào sử dụng các thiết bị Cisco đời mới có thể sử dụng version 1.0.1 chạy Ubuntu 20.04.
docker run --name=cisco-backup-config --rm \
-e USERNAME=<Username SSH> \
-e PASSWD=<mật khẩu SSH> \
-e TIMEOUT=10 \
-e ARRAY='<danh sách IP phân tách bởi khoảng trắng>' \
-v <thư mục backup>:/backup-cisco \
ltp1120/backup-cisco
Ví dụ
docker run --name=cisco-backup-config --rm \
-e USERNAME=admin \
-e PASSWD=123 \
-e TIMEOUT=10 \
-e ARRAY='192.168.123.2 192.168.100.1 192.168.100.2 192.168.100.3 192.168.100.4 192.168.100.5 192.168.100.6 192.168.100.7 192.168.100.8' \
-v ./cisco-backup-config:/backup-cisco \
ltp1120/backup-cisco:1.2
Container được tạo ra để thực hiện sao lưu cấu hình của các thiết bị mạng Cisco được liệt kê trong biến ARRAY, sau khi hoàn thành công việc, nó sẽ tự động bị xóa bỏ khỏi hệ thống.
Kết quả của sao lưu cấu hình sẽ được lưu trong thư mục cisco-backup-config trên máy host.
Kiếm tra kết quả
Thư mục sau khi backup sẽ có 2 file là config và vlan được chia theo ngày và phân theo từng thiết bị.
$ tree cisco-backup-config
/home/ubuntu/cisco-backup-config
├── 192.168.100.1
│ └── 2023-07-21
│ ├── config_192.168.100.1.conf
│ └── vlan_192.168.100.1.conf
├── 192.168.100.2
│ └── 2023-07-21
│ ├── config_192.168.100.2.conf
│ └── vlan_192.168.100.2.conf
├── 192.168.100.3
│ └── 2023-07-21
│ ├── config_192.168.100.3.conf
│ └── vlan_192.168.100.3.conf
├── 192.168.100.4
│ └── 2023-07-21
│ ├── config_192.168.100.4.conf
│ └── vlan_192.168.100.4.conf
├── 192.168.100.5
│ └── 2023-07-21
│ ├── config_192.168.100.5.conf
│ └── vlan_192.168.100.5.conf
├── 192.168.100.6
│ └── 2023-07-21
│ ├── config_192.168.100.6.conf
│ └── vlan_192.168.100.6.conf
├── 192.168.100.7
│ └── 2023-07-21
│ ├── config_192.168.100.7.conf
│ └── vlan_192.168.100.7.conf
├── 192.168.100.8
│ └── 2023-07-21
│ ├── config_192.168.100.8.conf
│ └── vlan_192.168.100.8.conf
├── 192.168.123.2
│ └── 2023-07-21
│ ├── config_192.168.123.2.conf
│ └── vlan_192.168.123.2.conf
└── note.sh
18 directories, 19 files
Đây là nội dung thông tin Vlan.conf, mình sẽ không backup file vlan.dat mà sẽ lấy thông tin vlanid và tên vlan, sau đó tổng hợp lại thành file configure. Sau này khi sang thiết bị mới chỉ cần copy paste là xong.
![](https://blog.crfnetwork.com/wp-content/uploads/2024/02/image-19.png)
Còn đây là file config lấy từ show running-config
![](https://blog.crfnetwork.com/wp-content/uploads/2024/02/image-20.png)
Tạo lịch backup thường xuyên
Ngoài ra, bạn có thể sử dụng Crontab (trên Linux) hoặc Task Scheduler (trên Windows) để lập lịch cho nó chạy hàng ngày.