Zabbix4.4.3配置邮件告警

Zabbix4.4.3配置邮件告警

在zabbix_server上操作即可

步骤一、安装sendmail或postfix (邮件传送代理MTA)
(标注:如果直接使用外部邮箱发送邮件可以不需要配置sendmail或postfix,直接把这两个软件关掉,直接跳到第3步:配置mail即可实现)

# yum -y install sendmail               
# systemctl start sendmail           #启动sendmail服务
# systemctl enable sendmail           #开机自启动sendmail服务

如果启动成功不需进行以下步骤:

[root@ssticentos65 ~]# /etc/init.d/postfix stop                #暂停postfix服务提示失败,原因是postfix进程正在使用,需要使用kill命令杀掉postfix进程
Shutting down postfix:                                     [FAILED]
[root@ssticentos65 ~]# /etc/init.d/postfix status                #查看postfix服务可以查看到进程号
master (pid  1647) is running...
[root@ssticentos65 ~]# kill -9 1647                                     #杀掉postfix服务进程号
[root@ssticentos65 ~]# /etc/init.d/postfix status                #查看postfix状态
master dead but pid file exists
[root@ssticentos65 ~]# chkconfig postfix off                      #设置postfix开机不启动
[root@ssticentos65 ~]# /etc/init.d/sendmail stop               #暂停sendmail服务
Shutting down sm-client:                                   [  OK  ]
Shutting down sendmail:                                    [FAILED]
[root@ssticentos65 ~]# /etc/init.d/sendmail start                 #启动sendmail服务
Starting sendmail:                                         [  OK  ]
Starting sm-client:                                        [  OK  ]

步骤二、安装邮件发送工具mailx 。(邮件用户代理MUA)

# yum -y install mailx  

步骤三、 配置mail

# vim /etc/mail.rc
新浪邮箱:
set  from=lg1871212539@sina.com        #新浪注册的个人邮箱,用于zabbi服务端转发邮件到指定邮箱
set  smtp=smtp.sina.com                       #填写新浪发送邮箱服务器地址smtp
set  smtp-auth-user= lg1871212539      #新浪个人邮箱用户
set  smtp-auth-password=lg123456      #新浪个人邮箱密码
set  smtp-auth=login                           #登录
 #####################################
以下是qq邮箱配置方法:
set from=xxx@qq.com                                        ---------------自己的邮箱
set smtp=smtp.qq.com                                        ---------------邮件服务器
set smtp-auth-user=xxx@qq.com                       ---------------自己的邮箱
set smtp-auth-password=gdanhcvhdvsqbihd     qq邮箱设置----账户-----POP3/SMTP服务 开启后生成的密钥文件输入这里
set smtp-auth=login                                            默认格式
set smtp-use-starttls                                           默认格式
set ssl-verify=ignore                                           默认格式
set nss-config-dir=/etc/pki/nssdb/                       默认格式

在这里插入图片描述

步骤四、测试邮件能否发送
#发送一份邮件到1440193775@qq.com 这个QQ邮箱(个人申请的QQ测试邮箱)

# echo "test" | mail -s 'test mail'  1440193775@qq.com  

在这里插入图片描述

步骤五、编写邮件发送脚本sendmail.sh

# find / -name alertscripts
/usr/local/share/zabbix/alertscripts
# cd /usr/local/share/zabbix/alertscripts         #进入zabbix默认存放脚本路径
# vim sendmail.sh                                               #编写发送邮件脚本
#!/bin/bash
# export LANG=zh_CN.UTF-8
to=$1
subject=$2
body=$3
FILE=/tmp/mailtmp.txt
echo "$3" >$FILE
dos2unix -k $FILE
/bin/mail -s "$2" $1 < $FILE
# touch /tmp/mailtmp.txt
# chown  zabbix.zabbix /tmp/mailtmp.txt
# chown zabbix.zabbix /usr/local/share/zabbix/alertscripts/sendmail.sh                       #sendmail.sh脚本修改所属用户和用户组
# chmod 755 /usr/local/share/zabbix/alertscripts/sendmail.sh                                     #sendmail脚本赋予执行权限
# ls -l /usr/local/share/zabbix/alertscripts/sendmail.sh                                                 #查看sendmail.sh脚本信息
# find / -name zabbix_server.conf
# vim /usr/local/etc/zabbix_server.conf                                                                         #配置zabbix_server.conf配置文件
AlertScriptsPath=/usr/local/share/zabbix/alertscripts                                                                                      #这个修改成sendmail.sh脚本存放路径
# su zabbix                                                                                                                                  #切换zabbix用户
sh-4.1$ /usr/local/share/zabbix/alertscripts/sendmail.sh 1440193775@qq.com "test linux" "test"                  #zabbix用户执行sendmail.sh脚本看是否有权限

步骤六、Zabbix配置
1、管理—>报警媒介类型 —>创建媒介类型
在这里插入图片描述
2、名称可以随便自己定义—>类型选择脚本—>脚本名称输入上一步编写的发送邮件的脚本名称—>再添加以下3个参数,分别对应脚本需要的3个参数:收件人地址、主题、详细内容:
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
在这里插入图片描述
3、管理—>用户—>选择Admin用户。(自己创建一个用户也可以)
在这里插入图片描述
4、报警媒介—>添加
在这里插入图片描述
5、类型输入刚刚创建的报警媒介类型sendmail脚本—>输入个人邮箱用于接收报警邮件—>启动打勾—>添加
在这里插入图片描述
6、选择更新
在这里插入图片描述
7、权限设置(管理员用户不用修改,权限默认所有服务器,如果要分类权限需要在用户组进行控制)
在这里插入图片描述
8、配置—>动作—>创建动作
在这里插入图片描述
9、动作—>名称自定义—>设置一条新的触发条件—>启用—>添加。(触发条件需要根据实际情况设置)
在这里插入图片描述
10、定义操作
在这里插入图片描述
默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
默认信息:
告警主机IP地址:{HOST.CONN}
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

11、定义恢复操作
在这里插入图片描述
默认接收人:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
恢复信息:
告警主机IP地址:{HOST.CONN}
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

12、测试

# ps -ef | grep zabbix                                            #暂停zabbix_agentd客户端服务
zabbix     2458      1  0 11:57 ?        00:00:00 zabbix_agentd
zabbix     2459   2458  0 11:57 ?        00:00:03 zabbix_agentd: collector [idle 1 sec]
zabbix     2460   2458  0 11:57 ?        00:00:02 zabbix_agentd: listener #1 [waiting for connection]
zabbix     2461   2458  0 11:57 ?        00:00:02 zabbix_agentd: listener #2 [waiting for connection]
zabbix     2462   2458  0 11:57 ?        00:00:02 zabbix_agentd: listener #3 [waiting for connection]
zabbix     2463   2458  0 11:57 ?        00:00:01 zabbix_agentd: active checks #1 [idle 1 sec]
root       8661   1831  0 14:19 pts/0    00:00:00 grep --color=auto zabbix
# kill 2458

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值