zoukankan      html  css  js  c++  java
  • zabbix 利用脚本发邮件(mail)

    # 源码安装mailx

    tar jxvf mailx-12.3.tar.bz2

    make && make install UCBINSTALL=/usr/bin/install

    #yum安装

    yum -y install mailx  #一般镜像文件都会有mailx 

    配置mailx   #登陆163申请帐号和设置授权码(很简单的)

    [root@zbx zabbix]# vim /etc/mail.rc

    set smtp=smtp.163.com  #中转站(由于qq需要做ssl认证,不推荐)

    set from=邮箱账户@163.com  #伪装发送人

    set smtp-auth-user=邮箱账户@163.com  #发送人

    set smtp-auth-password=邮箱账户的授权码  #发送箱密码

    set smtp-auth=login  #认证方式(登陆)

     

    # 发送测试邮件

    [root@zbx zabbix]# echo "Hello" | mail -v -s "test" x.x.x.x@qq.com
    Resolving host smtp.guohualife.com . . . done.
    Connecting to x.x.x.x:smtp . . . connected.
    220 smtp.aliyun-inc.com MX AliMail Server(x.x.x.x)
    >>> EHLO zabbix_master
    250-smtp.aliyun-inc.com
    250-STARTTLS
    250-8BITMIME
    250-AUTH=PLAIN LOGIN XALIOAUTH
    250-AUTH PLAIN LOGIN XALIOAUTH
    250-PIPELINING
    250 DSN
    >>> AUTH LOGIN
    334 dXNlcm5hbWU6
    >>> emFiYml4QGd1b2h1YWxpZmUuY29t
    334 UGFzc3dvcmQ6
    >>> MTIzYWJjZCE=
    235 Authentication successful
    >>> MAIL FROM:<zabbix@xxxx.com>
    250 Mail Ok
    >>> RCPT TO:<x.x.x.x@qq.com>
    250 Rcpt Ok
    >>> DATA
    354 End data with <CR><LF>.<CR><LF>
    >>> .
    250 Data Ok: queued as freedom
    >>> QUIT
    221 Bye

    vim /usr/lib/zabbix/alertscripts/maillog.sh  #编写邮件发送脚本(这里的3个变量需要在web页面设置内置的宏值)

    注意#如果需要发邮件带附件在mail加上-a+文件名的参数(文件名最好用txt)

    messages=`echo $3 | tr ' ' ' '`

    subject=`echo $2 | tr ' ' ' '`

    echo "${messages}" | /usr/bin/mailx -s "${subject}" -a /etc/zabbix/scripts/deal_time/log/deal.txt  $1 >>/usr/lib/zabbix/alertscripts/ybt.log 2>&1

    -s  主题

    -a (文件名)  发附件(最好用.txt结尾)

    -c  抄送人(有多人之间用空格隔开)

    ****/tmp/sendmail.log该文件zabbix用户一定要有读写权限

     

    #增加可执行权限

    chown zabbix.zabbix /usr/lib/zabbix/alertscripts/maillog.sh

    chmod a+x /usr/lib/zabbix/alertscripts/maillog.sh

    zabbix web设置

    根据环境使用的mailx,及在/usr/lib/zabbix/alertscripts/maillog.sh创建了一个脚本,每次触发都会调用maillog.sh,脚本maillog.sh中有3个变量对应下面的3个zabbix自带宏值。

    媒介这块应该选用脚本类型

    参数填写zabbix自带的宏值:

    {ALERT.SENDTO}:发送人

    {ALERT.SUBJECT}:主题

    {ALERT.MESSAGE}:内容

    指定新建或默认用户并对用户添加脚本及收件人邮箱

     

     

  • 相关阅读:
    9本Java程序员必读的书
    最短路径问题:dijkstar
    RSA加密算法
    BFC 浅谈
    纯css3配合vue实现微信语音播放效果
    Vue内置组件keep-alive的使用
    vim常用命令
    Java实体映射工具MapStruct的使用
    hexo文章编写部分语法总结以及hexo使用
    高级进程间通信
  • 原文地址:https://www.cnblogs.com/ZhengLiming/p/9936204.html
Copyright © 2011-2022 走看看