Nagios借助yahoo.cn邮箱实现手机短信报警功能
作者:田逸(sery@163.com)
在《Nagios远程监控软件的安装与配置详解》(http://netsecurity.51cto.com/
art/200706/48728.htm)一文中,曾经简单的介绍在没有短信网关或短信猫的情况下使用短信报警的方法。前段时间,经不住yahoo邮件无限制容量的诱惑申请了一个拿来用用,还不错,很来无意中发现还有来信短信提醒功能,乖乖,何不把报警邮件发送到这个yahoo邮箱,然后通过“来信短信提醒功能”把信息转发到手机上。
A如果您是中国移动用户,定制过程包括:绑定手机(免费绑定)-定制服务(10元/月)
具体操作请按照以下步骤进行:
1 用您的Yahoo! ID和密码登录 Yahoo! Mail 的页面
2 点击页面左面的“邮件到达短信提醒”链接
3 如果您的手机还没有与您的Yahoo! ID进行绑定,操作步骤:
请先绑定您的手机号码:
1)在弹出的对话框中的“请输入您的手机号码”后面填入您想绑定的手机号码
2)点击“确定”按钮
3)您的手机会收到系统给您发送的验证码
如果您确实想定制此项服务:
4)在接下来的页面中,填入系统给您发送的验证码,点击“确定”按钮
按照页面的提示,用手机发送数字指令WXD到3721,以完成定制过程.
4 如果您的手机已经绑定Yahoo! ID,点击页面左面的“邮件到达短信提醒”链接
按照页面的提示, 用手机发送数字指令WXD到3721,以完成定制过程.
5 完全登出您的邮箱
1)单击电邮页面右上角的“登出”链接
2)单击“完全登出”链接。
B如果您是中国联通用户,定制过程包括:发送指令,定制服务(10元/月)-绑定手机
具体操作请按照以下步骤进行:
1 用您的Yahoo! ID和密码登录 Yahoo! Mail 的页面
2 点击页面左面的“邮件到达短信提醒”链接
3 如果您的手机还没有与您的Yahoo! ID进行绑定,操作步骤:
1)在弹出对话框中的“请输入您的手机号码”后面填入您想绑定的手机号码
2)点击“确定”按钮
3)发送数字指令“YH”到9372,收到短信提示后,按照提示回复短信,完成定制。
4)点击页面中的“继续”按钮,您会收到一个验证码信息,请将您收到的验证码填写到下一页中的“请输入您
手机收到的验证码”后空白处,并点击“确认”,完成绑定手机过程。
4 如果您的手机已经绑定Yahoo! ID,点击页面左面的“邮件到达短信提醒”链接
按照上面的提示,很容易设置这个功能的。为了使短信提醒符合我们的实际要求,需要对某些项目进行设置。一个是“提示信息选择”,另一个是“提示时间设置”,其设置情况如图所示:
提示信息选择选第3个单选框“您收到[寄件人]发送的邮件:[邮件标题]”,这样设置的目的是因为邮件标题可以很明显的知道故障发生在哪里(标题信息来自Nagios的配置文件);服务器需要24小时监控,所以把“提醒时间设置”相里面的3个复选框全取消。设置完毕后,用一个别的邮箱发个邮件给你的yahoo信箱,片刻手机就会收到短信。
# 'notify-by-email' command definition define command{ command_name notify-by-email command_line /usr/bin/printf "%b" "***** Nagios 2.9 *****nnNotification Type: $NOTIFICATIONTYPE$nnService: $SERVICEDESC$nHost: $HOSTALIAS$nAddress: $HOSTADDRESS$nState: $SERVICESTATE$nnDate/Time: $LONGDATETIME$nnAdditional Info:nn$SERVICEOUTPUT$" | /bin/mail -s "$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ " $CONTACTEMAIL$ } |
默认的有点长,我把它缩短成上面那个样子,即用红色字体标识的是被减缩的。接着修改文件contacts.conf,把收信人地址改称yahoo.cn邮箱。改完后须重启nagios服务。现在来检验一下效果:把nagios监控的某个服务器的服务停掉几分钟,然后去yahoo邮箱收邮件,正常的话,只要邮件一到信箱短信就跟着来了。
为了避免诸如发件人的名称为root这样的问题,启用邮件别名似乎更佳一些。
你收到[vmail @sery.com]的邮件:[Host UP alert for apache_sery] |
没有评论:
发表评论