Hướng dẫn sao lưu tập tin cấu hình và gửi về trụ sở chính qua giao thức FTP, kết hợp với đó là thông báo cho người quản trị qua phần mềm chat Telagram. Điều kiện để thực hiện được yêu cầu này là 1 máy chủ FTP - máy chủ này đặt ở trụ sở chính. Điều kiện thứ 2 là cần tạo 1 con Bot và tạo nhóm Chat trên Telegram - mọi người có thể tham khảo trên Internet.
Mô hình kết nối như sau:
*Thông tin máy chủ FTP:
- Địa chỉ IP: 2.2.2.2
- Port: 21
- Username: sysbk
- Password: sysbk
Bắt đầu thôi nào!
Bước 1: Tạo Script. Từ giao diện Winbox->System->Scripts. Sau đó nhấn vào dấu [+] để thêm Script mới.
- Đặt tên cho Script ở phần Name: ftpbk
- Phần Source cho phép chúng ta thao tác các dòng lệnh để thực hiện công việc trên. Mọi người sao chép code bên dưới và dán vào phần Source này.
***Lưu ý:
- Ở phần #Information Telegram: Khi tạo Bot và Nhóm Chat trên Telegram, mọi người sẽ có được thông tin BotID và ChatID
- Tiếp đến là phần #Information FTP-Server: phần này mọi người khai báo các thông tin về máy chủ FTP.
Còn lại không thay đổi.
Code:
#Information Telegram
:local CHID "-381601111"
:local BotID "873048958:AAFZ6879_c6pDAV4tp_6ePKtKE1111_1111"
:local TeleURL "https://api.telegram.org/bot$BotID/sendMessage?chat_id=$CHID&parse_mode=Markdown&text="
#Information FTP-Server
:local ftphost "2.2.2.2"
:local ftpuser "sysbk"
:local ftppassword "sysbk"
:local ftppath "Mikrotik-Router"
#Information Mikrotik-Router
:local CurDate [/system clock get date]
:local CurTime [/system clock get time]
:local GDate [/system clock get date]
:local GDay [ :pick $GDate 4 6 ]
:local GMonth [ :pick $GDate 0 3 ]
:local GYear [ :pick $GDate 7 11 ]
:local GResult "$GDay $GMonth $GYear"
:local Name [/system identity get name]
:local Model [/system routerboard get model]
:local Seri [/system routerboard get serial-number]
:local Version [/system resource get version]
:local DDNS [/ip cloud get dns-name]
:local IPPublic [/ip cloud get public-address]
#Name File Backup
:local BackupConf ([/system identity get name].".backup")
:local ExportConf ([/system identity get name].".rsc")
:log info "->>>>>SaoThienVuong Backup And Sent To FTP Server<<<<<-"
:log info message="Backup Current Config(1/2).";
/system backup save name=$BackupConf
:delay 1s;
:log info message="File Backup Name: $BackupConf";
:log info message="-->Backup Finished.";
:log info message="Export File Config(2/2).";
/export compact file=$ExportConf
:delay 1s;
:log info message="File Config Name: $ExportConf";
:log info message="-->Export Finished.";
#Upload File
:log info message="Start Upload FTP-Server."
:log info message="Upload File BackupConf (1)."
/tool fetch address="$ftphost" src-path=$BackupConf user="$ftpuser" mode=ftp password="$ftppassword" dst-path="$ftppath/$GResult-$BackupConf" upload=yes;
:log info message="Upload File ExportConf (2)."
/tool fetch address="$ftphost" src-path=$ExportConf user="$ftpuser" mode=ftp password="$ftppassword" dst-path="$ftppath/$GResult-$ExportConf" upload=yes;
:log info message="-->Upload To FTP Server Finished.";
:delay 3s;
:local Message "*Hi, SuperAdmin! Backup Completed.* %0A *Information Device:* %0A *MODEL:* $Model %0A *NAME:* $Name %0A *VERSION:* $Version %0A *DDNS:* $DDNS %0A *IPWAN:* $IPPublic %0A *SERIAL:* $Seri %0A * Sao Thien Vuong*"
/tool fetch url=($TeleURL . $Message) keep-result=no
/file remove $BackupConf
/file remove $ExportConf
:log info "Deleting Backup File. ----------ALL DONE----------"
:log info "Sao Thien Vuong"
Bước 2: Đặt lịch khởi chạy Script trên vào 8h00 sáng Chủ Nhật hàng tuần.
Từ giao diện Winbox->System->Scheduler. Sau đó nhấn vào dấu [+] để thêm lịch mới.
– Đặt tên cho lịch ở trường Name. Ví dụ đặt tên cho lịch là scheduler-ftpbk
– Start Date: khai báo ngày/tháng/năm bắt đầu khởi chạy script. Lưu ý chọn ngày rơi vào chủ nhật nhé. Ví dụ [/b]Chủ nhật ngày 19 tháng 07 năm 2020[/b] thì sẽ khai báo như sau: [/b]jul/19/2020[/b]
– Start Time: khai báo giờ/phút/giây bắt đầu khởi chạy script. Trong ví dụ này là lúc 8 giờ thì khai báo như sau: 08:00:00
– Interval: thời gian việc khởi chạy script được lặp lại. Trong ví dụ này thì 7 ngày vì 7 ngày sau thì lại đến đúng Chủ Nhật. Khai báo như sau: 7d 00:00:00
– On Event: khai báo tên script sẽ được khởi chạy, cụ thể hơn chính là tên lúc nãy chúng ta đặt ở phần script, trong ví dụ này script được khởi chạy với tên là ftpbk.
Bước 3: Kiểm tra
Kiểm tra log trên Mikrotik Router.
Kiểm tra trên máy chủ FTP - tập tin cấu hình của Mikrotik Router đã được gửi đến thành công.
Quản trị viên nhận được thông báo kèm với các thông tin về thiết bị.
Thật đơn giản đúng không nào, Chúc mọi người thành công!