Centos7监控服务异常发送邮件通知

Posted 码农编程进阶笔记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7监控服务异常发送邮件通知相关的知识,希望对你有一定的参考价值。



Mail服务概述

Mail(邮件服务)有很多协议类型在承载邮件服务,例如最常见的:SMTP、POP3、IMAP,它们都隶属于TCP/IP协议簇


邮箱应用场景

很多时候我们在使用shell监控脚本的时候(例如:mysqlnginx,等等),当监控的服务出现问题的需要通过邮箱(当然也可以使用微信、短信或者钉钉)通知给管理员。


SMTP协议

1、SMTP是一种推协议,即服务端向客户端发送推送请求,客户端接受,服务端发送邮件,占用服务器的25/TCP端口

2、SMTP用于将发送方的邮件服务器发送报文到接收方邮件服务器

3、当需要将邮件从接收方服务器发送到用户手中时,不能用SMTP协议,因为当用户不接受邮件时服务器会一直请求,这样会造成资源浪费,此时需要拉协议(最典型的拉协议是HTTP协议)如POP或IMAP


POP3

1、负责从邮件服务器中检索电子邮件,占用服务器的110/TCP端口

2、可以下载邮件、从服务器中删除邮件或询问是否有新邮件


IMAP

1、IMAP是双向的,在本地的操作也会反馈到服务器,占用服务器的143/TCP端口

2、互联网信息访问协议(IMAP)是一种优于POP的新协议,它可以决定客户机请求邮件服务器提交所收到邮件的方式,请求邮件服务器只下载所选中的邮件而不是全部邮件


网易163:smtp.163.comQQsmtp.qq.com

1、安装 mailx

yum install mailx -y

2、配置

vi /etc/mail.rc
# 指定邮箱set from=5***3@qq.com# 邮箱协议:企业邮箱: smtp.exmail.qq.com 个人QQ邮箱: smtp.qq.comset smtp="smtp.qq.com"# 邮箱账号set smtp-auth-user="5***3@qq.com"# 邮箱授权码,QQ邮箱后台里面去授权set smtp-auth-password="slmuozv*****"# 登陆方式set smtp-auth=login


3、发送

echo "hello" | mail -s "this is a testmail" shihua.ma@rubis.com.cn# 参数-s 邮件标题echo "hell0" 邮件的内容 -v 用“-v" 参数来查看返回信息# 或者通过一个文件发送mail -v -s "this is test mail" shihua.ma@rubis.com.cn < /tmp/mail_content.txt

4.结果:

Centos7监控服务异常发送邮件通知

Centos7监控服务异常发送邮件通知

                                  

以上是关于Centos7监控服务异常发送邮件通知的主要内容,如果未能解决你的问题,请参考以下文章

监控tomcat某个Java服务挂了并发送邮件通知实践

使用Python发送邮件,在自己程序出错时发邮件通知自己

laravel5异常及时通知

Centos7上yum安装nagios

编写监控脚本,监控集群内所有服务存活状态,内存磁盘剩余率检测,异常则发送报警邮件

centos7安装Logwatch配合msmtp邮件客户端发送服务器监控分析日志