天天看點

zabbix使用sendEmail實作郵件報警

sendEmail實作郵件報警

  1. 安裝sendEmail
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
tar -xf /opt/software/zabbix/sendEmail-v1.56.tar.gz -C /opt
           
  1. 編寫發送報警郵件腳本
cd /usr/lib/zabbix/alertscripts/
vim sendEmail.sh
#!/bin/bash
[email protected] # 發件人位址
to=$1 # 收件人位址
smtp=smtp.xxxxxx.com:25 # smtp伺服器
subject=$2 # 主題
password=*********** # 發件人密碼
message=$3 # 正文
/opt/sendEmail-v1.56/sendEmail -f $from -t $to -s $smtp -u $subject -m $message -xu $from -xp $password -o
message-content-type=html -o message-charset=utf8 -v
           
chmod +x sendEmail.sh
./sendEmail.sh [email protected] subject message
           

##配置媒介

zabbix使用sendEmail實作郵件報警

按照以下内容進行建立媒介:

zabbix使用sendEmail實作郵件報警

python腳本實作郵件報警

[[email protected] alertscripts]# cat sendEmail.py 
#!/usr/bin/env python
#_*_ coding:utf-8 _*_

import smtplib, sys
from email.mime.text import MIMEText
from email.utils import formataddr

def send_mail(to_email, subject, message):

    #郵箱位址和郵箱密碼
    my_sender = '[email protected]'  #實際的真實郵箱發件人
    my_pass = 'password'      #實際的真實郵件發件人賬号密碼
    my_receiver = to_email

    #發送郵件的資訊主體,發件人,收件人,内容
    msg = MIMEText(message, 'plain', 'utf-8')
    msg['From'] = formataddr(["Zabbix", my_sender])
    msg['To'] = formataddr(["Ops", my_receiver])
    msg['Subject'] = subject

    #發送郵件
    server = smtplib.SMTP_SSL("mail.xxx.cn", 465)   #真實的郵箱伺服器和端口
    server.login(my_sender, my_pass)
    server.sendmail(my_sender, [my_receiver, ], msg.as_string())
    server.quit()

if __name__ == '__main__':
    send_mail(sys.argv[1],sys.argv[2],sys.argv[3])

           

模拟發送郵件:

python sendEmail.py [email protected] aaa  aaa
           
zabbix使用sendEmail實作郵件報警

繼續閱讀