因为公司运维的对象是政府单位,所以在实际的监控过程中无法连接到外网,所以最后报警选择的媒介是短信猫,下边就是具体的实施过程。

一、面临的问题

  因为手头上的设备是串口的短信猫,但是zabbix server端不支持,所以无法直接在服务器端挂载串口的短信猫,这样也就无法直接使用gnokii来调用,所以实施方案的选择上大体有两个,一个是在维持服务器端不变,使用一个中间的主机来挂载短信猫,再使用方法来调用短信猫。第二个就是直接在能够使用串口的主机上部署zabbix服务器。最后选择的方案是第二种,是为了保证报警的稳定性。

二、gnokii的安装 (借鉴了诡之轨迹的博客

//实现:在linux下通过短信猫发短信
 
//环境平台
CentOS5.4
intltool-0.41.1.tar.gz
gnokii-0.6.30.tar.gz
yum
 
//安装minicom及依赖包
yum -y install lockdev  minicom perl-XML-Parser
 
//编译安装intltool
tar zxvf intltool-0.41.1.tar.gz 
cd intltool-0.41.1
./configure
make
make install
 
//编译安装gnokii
tar zxvf gnokii-0.6.30.tar.gz
cd gnokii-0.6.30
./configure
make
make install
 
//配置minicom
/usr/bin/minicom -s
 
选择serial port setup

 
选择A( 按A键 ) 修改为
/dev/ttySO   
//ttyS0 为com口
选择E( 按E键 ) 修改为 
同样选择E,9600
回车
 
 
//保存配置,Save setup as dfl
 
//退出配置界面,Exit from Minicom
 
//测试minicom
/usr/bin/minicom
输入 AT 后回车,返回 ok 则成功
//退出minicom
按,[ Ctrl+A ] --> [ z ] --> [ x ]
 
//配置gnokii
mkdir -p /root/.config/gnokii
#cp /usr/local/share/doc/gnokii/sample/gnokiirc /root/.config/gnokii/config 
将源码包里的: Docs/sample目录下的gnokiirc 文件(这个配置文件是gnokii的配置文件)拷贝到/etc下.    //我是这么做的
vi /root/.config/gnokii/config
 
[global]
port = /dev/ttyS0
model = AT
initlength = default
connection = serial
use_locking = no
serial_baudrate = 9600
smsc_timeout = 10
 
[xgnokii]
allow_breakage = 0
 
[gnokiid]
bindir = /usr/local/bin/
 
[connect_script]
TELEPHONE = 12345678
 
[disconnect_script]
 
[logging]
debug = off
rlpdebug = off
xdebug = off
 
[phone_fake]
port = foobar
model = AT
connection = serial
 
[fake_driver]
sms_inbox = /tmp/sms
 
 
//测试gnokii
/usr/local/bin/gnokii --identify
 
[root@Nagios ~]# gnokii --identify
GNOKII Version 0.6.30
Cannot open logfile /root/.cache/gnokii/gnokii-errors
WARNING: cannot open logfile, logs will be directed to stderr
Lockfile /var/lock/LCK..ttyS0 is stale. Overriding it...
IMEI         : 351047888189814
Manufacturer : WAVECOM MODEM
No flags section in the config file.
Model        : MULTIBAND  900E  1800 
Product name : MULTIBAND  900E  1800 
Revision     : 641b09gg.Q2403A 132
 
三、部署完成后的问题
  在gnokii部署完成并测试完成后,遇到了一个问题,在做了action之后一直不给我发短信,于是我使用  echo test  | gnokii --sendsms  185********  &>> /home/zabbix/log.log 来查看到底执行的情况是什么,上边报的错是    无权限读取gnokii的相关文件,但是在实际的使用过程中,我已经都赋予了相关权限,百般无赖之下我使用的方法:
  首先使用visudo,添加   zabbix  ALL=(ALL)NOPASSWD:ALL 
  之后把脚本中的相关语句改成:  echo test | sudo -u root gnokii --sendsms 185******** &>> log.log 之后成功
 
四、总结
  现在仍然无法知道到底是什么原因导致的zabbix无法执行这个命令 ,希望大家谁知道告诉我下,不胜感激。
  ps:在测试中 ,su - zabbix 用户下可以使用gnokii发送短信  
     zabbix版本为3.0.3  

zabbix使用短信猫实现报警的更多相关文章

  1. zabbix实现电话、短信、邮件报警

    该报警方式提前说明:(1)该方式可以实现zabbix免费电话报警以及微信.短信.邮件报警,但有数量限制.详见如下:如数量不能满足需要以及人员需要,可以考虑购买收费版.(2)毕竟是免费版,电话通知要省着 ...

  2. Zabbix应用七:Zabbix发送短信报警

    Zabbix利用Python脚本调用短信API发送报警信息 一.先贴出python脚本: #!/usr/bin/python # _*_ coding:utf8 _*_ import sys impo ...

  3. 在网页程序或Java程序中调用接口实现短信猫收发短信的解决方案

    方案特点: 在网页程序或Java程序中调用接口实现短信猫收发短信的解决方案,简化软件开发流程,减少各应用系统相同模块的重复开发工作,提高系统稳定性和可靠性. 基于HTTP协议的开发接口 使用特点在网页 ...

  4. 基于Socket客户端局域网或广域网内共享同一短信猫收发短信的开发解决方案

    可使同一网络(局域网或广域网)内众多客户端,共享一个短信猫设备短信服务器进行短信收发,短信服务器具备对客户端的管理功能. 下面是某市建设银行采用本短信二次开发平台时实施的系统方案图: 在该方案中,考虑 ...

  5. 短信猫 TIdTCPServer TIdTCPClient

    短信猫 服务端: IdTCPServer1: TIdTCPServer; IdAntiFreeze1: TIdAntiFreeze; unit UnitSever; interface uses Wi ...

  6. C# 短信猫(SMS cat) 操作源码开发经验

    我曾经开发的某项目需要使用短信猫模块,要求使用C#编程操作.能独立使用的动态链接库之一就是网上流传的sms.dll,但它的功能较少,不能满足需求,鉴于一时找不到合适的完整代码,我深入研究了短信协议,借 ...

  7. Java应用短信猫

    首先确定短信猫正常连接到主机,并安装SIM卡.先用超级终端测试短息猫能不能用.安装minicom:#sudo apt-get install minicom安装完成后,执行#sudo minicom ...

  8. wavecom短信猫常用AT命令

    wavecom短信猫常用AT命令 一.一般命令 1. AT+CGMI 给出模块厂商的标识. 2. AT+CGMM 获得模块标识.这个命令用来得到支持的频带 (GSM 900,DCS 1800 或PCS ...

  9. CDMA电信短信猫支持189等电信号码可二次开发

    CDMA电信短信猫支持189等电信号码可二次开发 这款短信猫采用法国wavecom Q2358C模块,支持短信猫二次开发,可提供短信猫二次开发包下载测试.提供相关资料文档. 此款CDMA电信短信猫有串 ...

随机推荐

  1. s5pc100开发板Nand flash移植

    相关软件下载地址:http://pan.baidu.com/s/16yo8Y fsc100开发板 交叉编译工具:arm-cortex_a8-linux-gnueabi-gcc Ÿ   添加针对我们平台 ...

  2. Laravel框架的学习

    用xampp环境 1.Composer的安装 http://www.phpcomposer.com/ 下载Composer的安装exe php.ini中extension_dir.browscap路径 ...

  3. [LeetCode] 929. Unique Email Addresses 独特的邮件地址

    Every email consists of a local name and a domain name, separated by the @ sign. For example, in ali ...

  4. 利用Jenkins实现jdk11+Maven构建springboot项目

    目录 原理图 前期准备 Jdk11安装 Jenkins安装 Maven安装 Jenkins的设置 插件安装 变量配置 搭建项目 1.通用配置 2.源码管理 3.构建触发 4.Maven的构建选项 5. ...

  5. 一、JavaScript之第一个实例,点击按钮修改文本内容

    一.代码如下: 二.运行后效果如下 三.点击按钮,"曾经沧海难为水"变成了日期事件了 <!DOCTYPE html> <html> <meta htt ...

  6. 201912-1 报数 Java

    思路: String.valueOf(int i) : 将 int 变量 i 转换成字符串 String.contains()用于判断字符串是否包含子字符串 import java.util.Scan ...

  7. 使用kali中的Metasploit通过windows7的永恒之蓝漏洞攻击并控制win7系统(9.27 第十三天)

    1.开启postgresql数据库 2.msfconsole 进入MSF中 3.search 17-010 搜索cve17-010相关的exp auxiliary/scanner/smb/smb_ms ...

  8. 读书笔记 - js高级程序设计 - 第十章 DOM

      文档元素 是文档的最外层元素,在Html页面中,文档元素始终都是<html>元素 在xml中,任何元素都可以是文档元素 Node类型 Node.ELEMENT_NODE 元素 Node ...

  9. 在swift调用OC的第三方库

    https://www.jianshu.com/p/4799ac1d7dce 2017.06.02 23:55* 字数 275 阅读 1619评论 0喜欢 3 环境:xcode 8.3.2 系统: M ...

  10. awk 总结

    说明:本文源于“朱双印博客”,原文地址:http://www.zsythink.net/archives/tag/awk awk 命令: 综合: awk功能是对“文本”进行格式化输出,形成报表:awk ...