ZABBIX配置自动添加端口监控,并触发重启服务
发表于:2024-10-20 作者:千家信息网编辑
千家信息网最后更新 2024年10月20日,1、配置自动发现脚本#!/bin/bash # ----------------------------------------------------------------------------
千家信息网最后更新 2024年10月20日ZABBIX配置自动添加端口监控,并触发重启服务
1、配置自动发现脚本
#!/bin/bash # -------------------------------------------------------------------------------# Script_name: discovery_port.sh # Revision: 1.0# Date: 2017/05/08# Author: kbsonlong# Email: kbsonlong@gamil.com# Website: www.along.party# ------------------------------------------------------------------------------- source /etc/bashrc >/dev/null 2>&1 source /etc/profile >/dev/null 2>&1 port_discovery () { PORTS=($(cat /data/PRG/zabbix/scripts/PORT.txt|grep -v "^#")) printf '{\n' printf '\t"data":[\n' for((i=0;i<${#PORTS[@]};++i)) { num=$(echo $((${#PORTS[@]}-1))) if [ "$i" != ${num} ]; then printf "\t\t{ \n" printf "\t\t\t\"{#PORT}\":\"${PORTS[$i]}\"},\n" else printf "\t\t{ \n" printf "\t\t\t\"{#PORT}\":\"${PORTS[$num]}\"}]}\n" fi } } case "$1" in port_discovery) port_discovery ;;*) echo "Usage:$0 port_discovery" ;; esac
2、配置自定义KEY port
vim zabbix_agentd.conf 添加如下内容,并重启zabbix agent让自定义key生效
UserParameter=port,/data/PRG/zabbix/scripts/port_discovery.sh port_discovery
3、在zabbix server端使用zabbix_get测试ket是否生效
[root@ctc-167 bin]# ./zabbix_get -s 192.168.xxx.147 -k port{ "data":[ {"{#IP}":" 192.168.xxx.147"}, { "{#PORT}":"80"}, { "{#PORT}":"8080"}]}
4、zabbix web端添加自动发现规则模板(check_port.xml),导入后有如下模板,关联主机后自动创建监控项跟触发器
5、配置触发器动作
6、开启客户端远程执行命令,并重启agent
vim zabbix_agentd.conf EnableRemoteCommands = 1
7、由于远程执行命令使用的是zabbix用户执行,配置sudo,使zabbix用户拥有权限执行重启脚本
# visudozabbix ALL=NOPASSWD:/etc/init.d/nginxd
8、将监控端口关闭,此时通过zabbix web会发现,触发器执行远程命令操作。但是查看端口还是关闭状态
这是由于sudo执行默认需要控制终端
编辑 /etc/sudoers
1)Defaults requiretty,修改为 #Defaults requiretty,表示不需要控制终端。
2)Defaults requiretty,修改为 Defaults:nobody !requiretty,表示仅 nobody 用户不需要控制终端。
如果修改为 Defaults:%nobody !requiretty,表示仅 nobody 组不需要控制终端。
其实只要注释掉)Defaults requiretty 那个就可以了。表示在执行的时候不打开终端
重新开启服务,并等触发器恢复之后再将服务关闭,此时可以看到nginx进程是在16:16分启动。
# ps -ef |grep nginxroot 24516 1 0 16:16 ? 00:00:00 nginx: master process /data/PRG/nginx/sbin/nginx -c /data/PRG/nginx/conf/nginx.confnobody 24517 24516 0 16:16 ? 00:00:00 nginx: worker process nobody 24519 24516 0 16:16 ? 00:00:00 nginx: worker process nobody 24520 24516 0 16:16 ? 00:00:00 nginx: worker process nobody 24521 24516 1 16:16 ? 00:00:00 nginx: worker process root 24710 29543 0 16:17 pts/1 00:00:00 grep nginx
终端
配置
触发器
控制
命令
用户
端口
服务
监控
模板
脚本
主机
内容
动作
客户
客户端
时候
是在
权限
注释
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
宿州网络安全处邵长凯
陈芳毅 网络安全
网络安全法多少个月
每个铁路局都有网络安全中心么
软件开发流程的论文
那些地方可以用到数据库
智能边缘计算服务器价格是多少
网络安全为什么查滴滴
网络安全登录网址
网络安全法进社区宣传活动
幻塔所有服务器数据互通吗
工程设备采购数据库
根据网络安全法关键信息检测
管理世界数据库
未来的互联网高科技
可视化平台软件开发工具
湖南服务器租用
网络安全漏洞个人思考
花网络安全绘画入门
辽宁省网络安全工资待遇
网络服务器多少钱
网络技术的运用步骤
积木易搭互联网科技公司
网络安全既是防线也是底线
贵州网络安全应急响应中心
网络安全法 重大突发事件
泰州和创互联网科技有限公司
泰国农残数据库
太原交通软件开发公司电话
每月网络安全态势