Zabbix中自定义Key执行时权限不够

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix中自定义Key执行时权限不够相关的知识,希望对你有一定的参考价值。

前言

平台上有一应用程序需要调用百度的某个接口,需要连接外网,所以编写了脚本来对百度外网的连通性进行测试。但在server端检测时出现权限不够的问题

一. Zabbix-agent 配置自定义key

~]# vim /etc/zabbix/zabbix-agent.conf
UserParameter=baidu_network_status[*], /root/bin/baidu.sh $1

脚本放置目录为/root/bin下

需要重启zabbix-agent服务
~]# service zabbix-agent restart

二. 在Zabbix-Server端测试

技术分享图片

三. 问题排查

1. agent端查看脚本使用有执行权限

技术分享图片

我们知道脚本的执行者是zabbix,而执行权限是所有人都可执行。直接执行脚本是可以执行的,那么我们切换用户身份执行以下

2. agent端切换用户身份执行

技术分享图片

果真切换用户身份无法执行命令,这时我才猛然醒悟,zabbix用户是无法进入到root用户的家目录的,由下图可以看出,/root目录的权限是550,zabbix无法进入,更不用提执行命令了。
技术分享图片

四. 解决问题

将要运行的脚本放在zabbix用户可以执行的目录之下。为了统一规范,将所有脚本放置在/etc/zabbix/scripts目录下。

1.常见脚本目录

~]# mkdir -pv /etc/zabbix/scripts
~]# cp /root/bin/baidu.sh /etc/zabbix/scripts

2.修改zabbix-agent配置文件

技术分享图片

3.重启zabbix-agent

~]# service zabbix-agent restart

五.server端测试key

技术分享图片
可以看到此时能够获取值了。

以上是关于Zabbix中自定义Key执行时权限不够的主要内容,如果未能解决你的问题,请参考以下文章

挂载NFS时提示权限不够怎么办?

linux 安装 NBU 时提示权限不够,怎么解决???

(suse linux)源码安装apache,启动时提示权限不够!命令:bash: /usr/local/httpd/bin/apachectl:权限不够

为啥linux显示自己的权限不够???我加了sudo了,看下面。。。

ubuntu权限不够data目录下运行程序

方法与参数类型########(你的权限不够点赞)