Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.

Announcement

Collapse
No announcement yet.

Thiết lập cảnh báo qua SMS trên Zabbix

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Thiết lập cảnh báo qua SMS trên Zabbix

    Chuẩn bị thiết bị và các gói cài đặt:
    • 1 USB 3G (Trong bài viết này sử dụng D-Link DWM 156)
    • USB Modeswitch
    • wvdial
    • Gnokii
    Cấu hình USB 3G gửi SMS:

    Đầu tiên ta dùng lệnh lsusb để kiểm tra xem USB 3G đang ở mode nào



    Như hình trên USB 3G đang ở mode Storage (2001:a706)
    Để có thể chuyển đổi mode giữa Storage và Modem, ta cài đặt USB modeswitch và wvdial để kiểm tra
    Code:
    # sudo apt-get install wvdial usb-modeswitch usb-modeswitch-data
    Sau khi cài đặt xong dùng lệnh lsusb để kiểm tra lại:



    Và dùng lệnh # dmesg | grep GSM để xem USB 3G có đang hoạt động như 1 GSM Modem hay chưa:



    Vậy là USB 3G đã chuyển qua 2001:7d01 là mode Modem

    *Lưu ý: Với 2001:7d01 lần lượt là Vendor:Product, tuỳ vào USB 3G của mỗi hãng mà Vendor và Product sẽ có những mã khác nhau.

    Dùng lệnh # sudo wvdialconf để xem USB 3G đang được nhận ở port nào cũng như tốc độ hoạt động ổn định của USB.



    Cài Gnokii làm SMS Gateway
    Code:
    # apt-get install gnokii gnokii-smsd gnokii-smsd-mysql
    Sửa file cấu hình trong /etc/xdg/gnokii/config
    Code:
    [global]
    port = /dev/ttyUSB0 port sử dụng của USB 3G như hình trên
    model = AT
    initlength = default
    connection = serial
    use_locking = no
    serial_baudrate = 19200
    handshake = hardware
    connect_script =
    disconnect_script = 
    smsc_timeout = 10
    [xgnokii]
    allow_breakage = 0
    [gnokiid] bindir = /usr/sbin/
    [connect_script]
    TELEPHONE = 123456789
    [disconnect_script]
    [logging]
    debug = off
    rlpdebug = off
    xdebug = off
    Sau khi sửa file cấu hình sử dụng # sudo gnokii --identify để kiểm tra xem đã nhận được IMEI và các thông số khác của USB 3G chưa



    Nếu nhận được thì ta dùng lệnh echo "Test from Zabbix server" | gnokii --sendsms +84xxxxxxxxx để test gửi một SMS đến điện thoại.

    *Lưu ý: dùng lệnh # sudo chmod 777 /dev/ttyUSB0 để gnokii có quyền truy cập vào USB 3G



    Cấu hình để gửi Alert từ Zabbix

    Để gửi được Alert từ Zabbix ta phải tạo một script và trên giao diện web của Zabbix tạo một Media trỏ tới script đó để gửi Alert khi một trigger bị vi phạm.
    Các bước thực hiện:

    Tạo một script có tên là sendsms.sh có nội dung và đặt trong /bin (có thể đặt ở đường dẫn khác nhưng phân quyền 777).
    Code:
    #!/bin/bash
    export re=$1
    export sub=$2
    export body=$3
    echo "$sub-$body" | /usr/bin/gnokii --sendsms $re >> /tmp/sms.log
    Sau đó ta vào file config của zabbix server và chỉnh sửa lại dòng:
    AlertScriptsPath=
    Thay bằng
    Code:
    AlertScriptsPath=/bin (nếu đường dẫn khác thì sửa lại đường dẫn)
    Lưu lại và khởi động lại dịch vụ Zabbix Server

    Trên giao diện Web của Zabbix ta vào Administration ¨ Media types và nhấn Create media type




    Name: Đặt tên cho Media này

    Type: Chọn Script

    Script name: Nhập vào đúng tên của Script vừa tạo ở trên

    Script parameters: Add vào 3 biến như sau
    • {ALERT.SENDTO}
    • {ALERT.SUBJECT}
    • {ALERT.MESSAGE}
    Sau đó ta vào Users, chọn user Admin, tab Media:



    Type: Chọn Media type ta vừa tạo ở trên

    Send to: Nhập sdt người sẽ nhận thông báo

    Mục Use if severity ta có thể tuỳ chọn mức độ để zabbix cảnh báo hoặc để mặc định. Nhấn Add và Update để cập nhật thông tin.

    Nếu chỉ để kiểm tra phần SMS có hoạt động không ta có thể làm thêm bước sau (hoặc bỏ qua và tiến hành kiểm tra).

    Ta vào Configuration -> Actions và enable Action mặc định



    Click vào Action trên và tuỳ chỉnh

    Tại mục Operation trong tab Operaion ta click chọn edit



    Tại mục Send only to ta chọn media dành cho SMS đã tạo như trên (mặc định sẽ gửi tới mọi media type).

    Kiểm tra bẳng cách tắt dịch vụ Apache trên 1 host:

Working...
X