返回列表 发帖

CentOS6_通过脚本发送Zabbix告警邮件(使用新浪邮箱的465端口)

笺注:这是在 CentOS6.9编译安装Zabbix4.4.5 的基础上进行的。


在Zabbix服务器上安装发送邮件的软件包mailx:
[root@Zabbix_server_01 ~]# yum -y install mailx

确认mailx安装成功:
[root@Zabbix_server_01 ~]# rpm -q mailx
mailx-12.4-10.el6_10.x86_64

查看mailx的相关文件、目录:
[root@Zabbix_server_01 ~]# rpm -ql mailx
/bin/mail
/bin/mailx
/etc/mail.rc
/usr/bin/Mail
/usr/bin/nail
/usr/share/doc/mailx-12.4
/usr/share/doc/mailx-12.4/AUTHORS
/usr/share/doc/mailx-12.4/COPYING
/usr/share/doc/mailx-12.4/README
/usr/share/man/man1/Mail.1.gz
/usr/share/man/man1/mail.1.gz
/usr/share/man/man1/mailx.1.gz
/usr/share/man/man1/nail.1.gz



下载证书: https://pan.baidu.com/s/16YAXAf2HaSPn2CrKOeFWfg   提取码:y4cd

上传证书:
[root@Zabbix_server_01 ~]# mkdir -p /etc/mail.rc_ssl.crt

[root@Zabbix_server_01 ~]# cp mail.rc_ssl.crt/* /etc/mail.rc_ssl.crt
[root@Zabbix_server_01 ~]# cd /etc/mail.rc_ssl.crt
[root@Zabbix_server_01 mail.rc_ssl.crt]# ll
总用量 384
-rw-r--r-- 1 root root 360448 2月   8 11:33 cert8.db
-rw-r--r-- 1 root root  16384 2月   8 11:33 key3.db
-rw-r--r-- 1 root root  16384 2月   8 11:33 secmod.db



修改mailx的配置文件:
[root@Zabbix_server_01 ~]# vi /etc/mail.rc
覆盖:
set from=j2270168881@sina.com
set smtp=smtps://smtp.sina.com:465
set smtp-auth-user=j2270168881
set smtp-auth-password=e60945932d7cd18e #授权码
set smtp-auth=login
set smtp-user-starttlsset ssl-verify=ignore
set nss-config-dir=/etc/mail.rc_ssl.crt


发送测试邮件:
[root@Zabbix_server_01 ~]# echo "465测试" | mail -s "Title" 22701xxx@qq.com

注释:
正常的话,QQ邮箱是可以收到测试邮件的了;
新浪邮箱发送这种邮件后,在“已发送”里是没有记录的;



######

在Zabbix服务器上创建告警邮件脚本:
[root@Zabbix_server_01 ~]# find / -name alertscripts
/usr/local/zabbix/share/zabbix/alertscripts

[root@Zabbix_server_01 ~]# which mail
/bin/mail

[root@Zabbix_server_01 ~]# cd /usr/local/zabbix/share/zabbix/alertscripts
[root@Zabbix_server_01 alertscripts]# ls
[root@Zabbix_server_01 alertscripts]#
[root@Zabbix_server_01 alertscripts]# vi sendmail.sh
覆盖:
#!bin/bash
FILE=/tmp/mailtmp.txt
echo "$3" > $FILE
#转译,不然邮件显示是附件
dos2unix -k $FILE
/bin/mail -s "$2" $1 < $FILE


设置脚本的权限:
[root@Zabbix_server_01 alertscripts]# chmod 755 sendmail.sh
[root@Zabbix_server_01 alertscripts]# chown zabbix.zabbix sendmail.sh
[root@Zabbix_server_01 alertscripts]# ll sendmail.sh
-rwxr-xr-x 1 zabbix zabbix 134 2月   8 11:52 sendmail.sh


创建临时文本:
[root@Zabbix_server_01 ~]# touch /tmp/mailtmp.txt
[root@Zabbix_server_01 ~]# chown zabbix.zabbix /tmp/mailtmp.txt
[root@Zabbix_server_01 ~]# ll /tmp/mailtmp.txt
-rw-r--r-- 1 zabbix zabbix 0 2月   8 11:40 /tmp/mailtmp.txt

测试:
[root@Zabbix_server_01 ~]# FILE=/tmp/mailtmp.txt
[root@Zabbix_server_01 ~]# dos2unix -k $FILE
-bash: dos2unix: command not found

解决方法:
[root@Zabbix_server_01 ~]# yum -y install dos2unix unix2dos

可以转换就可以了:
[root@Zabbix_server_01 ~]# dos2unix -k $FILE
dos2unix: converting file /tmp/mailtmp.txt to UNIX format ...



######

继续通过浏览器配置Zabbix的邮件功能:

1)管理》报警媒介类型》Email:

类型选择“脚本”,

脚本名称:
sendmail.sh

脚本参数:
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}


如下图:
图片1.png


更新后,可以点击“Email”右边的“测试”:
图片2.png

发送Zabbix的测试邮件:
图片3.png
注释:要指定收件人邮箱。


假如QQ邮箱收到的测试邮件的内容为空,如下图:
图片4.png


再设置一次临时文本/tmp/mailtmp.txt的属主和属组:
[root@Zabbix_server_01 ~]# ll /tmp/mailtmp.txt
-rw-r--r-- 1 root root 0 2月   8 11:40 /tmp/mailtmp.txt

[root@Zabbix_server_01 ~]# chown zabbix.zabbix /tmp/mailtmp.txt

[root@Zabbix_server_01 ~]# ll /tmp/mailtmp.txt
-rw-r--r-- 1 zabbix zabbix 0 2月   8 11:40 /tmp/mailtmp.txt

注释:在这里再配置一次就可以了,往后都不需要再配置了。


再发送Zabbix的测试邮件就正常了,如下图:
图片5.png



2)配置用户的收件邮箱:
管理》用户》Admin:(使用用户Admin进行接收邮件)

添加报警媒介:
图片6.png

图片7.png
注释:要指定收件人邮箱。

点击“更新”:
图片8.png



3)配置触发邮件的条件:
配置》动作》“Report problems to Zabbix administrators”:
图片9.png

自定义“动作”:
图片10.png

图片11.png
注释:
勾选“已启用”;
计算方式选为
使用 触发器警示度


###
自定义“操作”:
图片12.png
注释:
不勾选“暂停操作以制止问题”;
默认操作步骤持续时间 60s
其他地方可以保持默认,点击“更新”;


触发邮件的条件更新成功:
图片13.png

图片14.png



######

当主机Zabbix server的重启后,会触发模板Template OS Linux by Zabbix agent自带的触发器“{HOST.NAME} has been restarted (uptime < 10m)”,收件人会收到如下类似的告警邮件:
图片15.png


大概10分钟后,主机Zabbix server的触发器“{HOST.NAME} has been restarted (uptime < 10m)”会自动消除警告,收件人会收到如下类似的告警恢复邮件:
图片16.png



######

查看Zabbix发送过的邮件:

报表》动作日志:
图片17.png

选择时间范围:
图片18.png

图片19.png

图片20.png


笺注:使用这种方法,Zabbix可以在阿里云的服务器中发送邮件。





相关文章:
使用新浪邮箱的465端口发送邮件报错(535 authentication failed)

CentOS6使用mailx(使用新浪邮箱的465端口)

CentOS8_通过脚本发送Zabbix告警邮件(使用新浪邮箱的25端口)
CentOS8_通过脚本发送Zabbix告警邮件(使用新浪邮箱的465端口)





#################################
#################################
亲,学习研究也要劳逸结合哦,来我微店逛逛,买点东西好好犒劳犒劳自己和家人吧^_^^_^


旖旎澳洲|香浓夏果;包邮【七猩猩_夏威夷果207g*2袋】奶油味 澳洲进口坚果休闲食品,颗粒大奶味足,送开果器
xianweiyi.png

FaSoLa内衣收纳盒三件套 文胸内裤袜子收纳箱有盖整理箱储物
neiyi.png

FaSoLa日式 沥水架 大号塑料厨房 碗碟沥水置物架 厨房角架 碗架
lishui.png

苏泊尔电磁炉火锅家用智能正品学生电池炉灶特价炒菜
su.png

透明文字包中包潮酷风范透明时尚女包斜挎单肩手提包SN-8925
bao.png

返回列表