Cài đặt gửi thông báo trạng thái Offline Online của Vps tới qua Telegram

VPS Giza Data Tháng hai 13, 2023

Để cài đặt thông báo trực tuyến/ngoại tuyến cho VPS chạy CentOS 7 qua Telegram, bạn có thể viết tập lệnh để theo dõi trạng thái của máy chủ và gửi thông báo tới cuộc trò chuyện Telegram bằng API Bot Telegram. Đây là một ví dụ về cách bạn có thể làm điều này:

1. Tạo bot Telegram:

  • Bắt đầu trò chuyện với bot BotFather trong Telegram.
  • Nhập “/newbot” và làm theo hướng dẫn để tạo bot mới.
  • Lưu mã thông báo API của bot để sử dụng sau.

2. Cài đặt các phụ thuộc cần thiết:

Cài đặt công cụ dòng lệnh “curl” bằng lệnh sau:

sudo yum install curl

3. Viết script theo dõi VPS và gửi thông báo:

Tạo một tệp tập lệnh mới, ví dụ: vps-notify.sh và thêm mã sau:

#!/bin/bash

# Replace the placeholder values with your actual values
BOT_TOKEN="<your-bot-token>"
CHAT_ID="<your-chat-id>"

# Function to send a message to Telegram
send_message () {
  curl -s -X POST https://api.telegram.org/bot$BOT_TOKEN/sendMessage -d chat_id=$CHAT_ID -d text="$1"
}

# Check if the VPS is online
if ping -c 1 google.com > /dev/null 2>&1; then
  send_message "VPS is now online."
else
  send_message "VPS is offline."
fi

4. Làm cho tập lệnh có thể thực thi được:

Chạy lệnh sau để làm cho tập lệnh có thể thực thi được:

chmod +x vps-notify.sh

5. Thiết lập một công việc định kỳ để chạy tập lệnh:

Chạy lệnh sau để mở bảng cron để chỉnh sửa:

EDITOR=nano crontab -e

6. Thêm dòng sau vào cuối tệp để chạy tập lệnh mỗi giờ:

0 * * * * /path/to/vps-notify.sh

7. Lưu và thoát tệp.

Bây giờ cần restart lại crontab bằng cách;

  • Đối với RHEL/CentOS 5.x/6.x
rvice crond restart
  • Đối với RHEL/Centos Linux 7.x
systemctl restart crond.service

Bây giờ, tập lệnh sẽ chạy mỗi giờ và gửi thông báo đến trò chuyện Telegram bất cứ khi nào VPS trực tuyến hoặc ngoại tuyến. Bạn có thể điều chỉnh tần suất thông báo bằng cách thay đổi lịch trình trong công việc định kỳ.

Chúc bạn thành công.

Quảng Cáo