GVKun编程网logo

centos – 来自zabbix_agentd的SELinux阻止sudo

7

在本文中,我们将为您详细介绍centos–来自zabbix_agentd的SELinux阻止sudo的相关知识,此外,我们还会提供一些关于2018年第六周-centos7安装zabbix-agentd

在本文中,我们将为您详细介绍centos – 来自zabbix_agentd的SELinux阻止sudo的相关知识,此外,我们还会提供一些关于2018年第六周-centos7安装zabbix-agentd(源码安装方式)、CentOS 6.5 Zabbix-agent3.2 安装 1.0版、CentOS 6.5 Zabbix-Agent安装、CentOS 6.5 Zabbix-windows-Agent安装的有用信息。

本文目录一览:

centos – 来自zabbix_agentd的SELinux阻止sudo

centos – 来自zabbix_agentd的SELinux阻止sudo

我有一个Zabbix的自定义用户参数,它调用硬件RAID CLI工具(arcconf / megacli)并检查是否有任何数组降级.由于这些工具只是root用户,因此我配置了sudoers以允许zabbix用户无需密码访问:
Defaults:zabbix !requiretty
Cmnd_Alias ZABBIX_MEGACLI_Cmds = /opt/MegaraID/MegaCli/MegaCli64 -LDInfo -Lall -aALL
zabbix  ALL     = (ALL) nopASSWD: ZABBIX_MEGACLI_Cmds

在CentOS 5上,zabbix_agentd运行无限制,一切都很顺利.在CentOS 6上,代理现在在单独的zabbix_agent_t域中运行.这引起了问题.最初sudo二进制文件本身无法执行但我添加了这个策略:

sudo_exec(zabbix_agent_t)

现在它以不同的方式死亡:

type=AVC msg=audit(1407137597.193:157): avc:  denied  { create } for  pid=3145 comm="sudo" scontext=unconfined_u:system_r:zabbix_agent_t:s0 tcontext=unconfined_u:system_r:zabbix_agent_t:s0 tclass=unix_dgram_socket
type=SYSCALL msg=audit(1407137597.193:157): arch=c000003e syscall=41 success=no exit=-13 a0=1 a1=80002 a2=0 a3=1 items=0 ppid=3121 pid=3145 auid=0 uid=496 gid=495 euid=0 suid=0 fsuid=0 egid=495 sgid=495 fsgid=495 tty=(none) ses=3 comm="sudo" exe="/usr/bin/sudo" subj=unconfined_u:system_r:zabbix_agent_t:s0 key=(null)
type=AVC msg=audit(1407137597.193:158): avc:  denied  { create } for  pid=3145 comm="sudo" scontext=unconfined_u:system_r:zabbix_agent_t:s0 tcontext=unconfined_u:system_r:zabbix_agent_t:s0 tclass=netlink_audit_socket
type=SYSCALL msg=audit(1407137597.193:158): arch=c000003e syscall=41 success=no exit=-13 a0=10 a1=3 a2=9 a3=7fffce049a20 items=0 ppid=3121 pid=3145 auid=0 uid=496 gid=495 euid=0 suid=0 fsuid=0 egid=495 sgid=495 fsgid=495 tty=(none) ses=3 comm="sudo" exe="/usr/bin/sudo" subj=unconfined_u:system_r:zabbix_agent_t:s0 key=(null)

这是正确的做事方法吗?我可以添加哪些其他策略,以便zabbix_agent_t可以运行sudo?如果sudo工作,它仍然会被限制在zabbix_agent_t域内,或者我应该添加例如TYPE = unconfined_t到sudoers线?我应该采用https://bugzilla.redhat.com/show_bug.cgi?id=917157和s / nrpe_t / zabbix_agent_t /吗?

编辑:

不确定这是不是最好的主意,但……

sudo_exec(zabbix_agent_t)
domtrans_pattern(zabbix_agent_t,sudo_exec_t,unconfined_t)

似乎工作.我想最糟糕的情况是它会依赖于sudo和sudoers文件的安全性.

处理此问题的方法是收集有关程序所需访问权限的所有信息,然后在自定义策略模块中明确仅允许该访问权限.

这很容易做到.

首先,你set the domain permissive,以便SELinux暂时不强制执行其规则.它仍会记录拒绝,稍后您将使用这些日志.

semanage permissive -a zabbix_agent_t

接下来,让程序运行并让它做任何需要做的事情. audit log将填满已被拒绝的内容,这些日志还会显示需要授予的权限.然后view these logs with ausearch.

ausearch -r -m avc -ts today

我们将generate a local policy module包含必要的权限. (您需要在此处使用-r选项和ausearch,以便其他脚本可以处理输出.)

如果您看到明显不相关的条目,请将输出重定向到文件,然后对其进行编辑以将其删除.然后在这里使用该文件.

ausearch -r -m avc -ts today | audit2allow -M zabbix_megacli

最后,我们安装新的本地策略模块并重新启用SELinux实施.

semodule -i zabbix_megacli.pp
semanage permissive -d zabbix_agent_t

2018年第六周-centos7安装zabbix-agentd(源码安装方式)

2018年第六周-centos7安装zabbix-agentd(源码安装方式)

安装完《centos7安装zabbix-server(源码安装方式)》后,就可以安装zabbix-agentd
我这是为了后续的大数据实践做好准备,可以监控服务器的运行情况

安装流程

跟server一样:
1.下载zabbix源码zabbix-3.4.6.tar.gz,网页地址:https://www.zabbix.com/downlo...

wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX Latest Stable/3.4.6/zabbix-3.4.6.tar.gz

2.解压进入目录

tar -zxvf zabbix-3.4.6.tar.gz
cd zabbix-3.4.6

3.创建zabbix用户(不然启动zabbix服务或zabbix代理是不给的)

groupadd zabbix
useradd -g zabbix zabbix

这里开始不一样了
4.配置源码,配置agentd即可

./configure --enable-agent

5.编译安装

make install 

6.修改agentd配置

vim /usr/local/etc/zabbix_agentd.conf
配置三点即可: 
Server=(zabbix_server所在的ip或域名)
ServerActive=(zabbix_server所在的ip或域名)
Hostmame=(就是本机的hostname)

7.登录zabbix的web页面
8.进入Configuration-->Hosts增加被监控的节点

只想简单的增加三点:
Host name
New group
Agent interfaces
Templates(选择Template OS Linux)

TroubleShoot

1.Configuration-->Hosts里Agent interfaces的作用,用于限制agentd配置的Server或ServerActive的ip,如果配置文件的ip和Agent interfaces的ip对不上,则agentd会报错拒绝一个链接接入cat /tmp/zabbix_agentd.log,在这里虽然mysql.centos7.com时本机,但是这个ip:192.168.31.176

 22272:20180130:232616.144 failed to accept an incoming connection: connection from "127.0.0.1" rejected, allowed hosts: "mysql.centos7.com"

2.编译时的错误,configure: error: Unable to use libpcre (libpcre check failed)

yum -y install pcre*

CentOS 6.5 Zabbix-agent3.2 安装 1.0版

CentOS 6.5 Zabbix-agent3.2 安装 1.0版

1.关闭防火墙

service iptables stop


2.更换源、安装zabbix-agent

rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm

yum install -y zabbix-agent


3.修改配置文件

vim /etc/zabbix/zabbix_agentd.conf

Server=192.168.8.228 server端ip

ServerActive=192.168.8.228 server端ip

Hostname=192.168.8.226 agent端ip


4.启动服务

/usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf


5.

wKiom1hY3FmSXG4RAAEfcpUp6tA603.png-wh_50


6.

wKiom1hchaGCVrZ6AACixcQ8jOM343.png-wh_50


7.

wKiom1hcheaCOVB-AAIg0UN8FN4317.png-wh_50

CentOS 6.5 Zabbix-Agent安装

CentOS 6.5 Zabbix-Agent安装


CentOS 6.5 Zabbix-Agent安装


安装

配置前先关闭iptables和SELINUX,避免安装过程中报错

service iptables stop

1,禁用SELINUX

# vi /etc/selinux/config

SELINUX=disabled

让SELINUX生效

#setenforce 0


2,修改主机名

# vi /etc/sysconfig/network

HOSTNAME=hqzabbix


3,修改配置文件

# vi /etc/hosts

10.117.180.37 hqzabbix

121.41.113.14 hqzabbix


4,yum安装


zabbix-agent端

rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm


yum install zabbix-agent-2.4.6-1.el6.x86_64



5,配置agent端配置文件

vim /etc/zabbix/zabbix_agentd.conf #此处千万别写成了zabbix_agent.conf,否则配置了不生效

Server=115.29.245.240 #填写Server的IP地址

ServerActive=115.29.245.240 #修改为Server的IP地址

Hostname=115.29.245.240 #填写Server的HostName,注意Server端要能解析

UnsafeUserParameters=1 #是否允许自定义的key,1为允许,0为不允许

Include= vi etc/zabbix/zabbix_agentd.conf.d/#自定义的agentd配置文件(key)可以在这里面写



如果该文件中的内容(安装目录和可执行文件目录)与实际状况不同,那么则需要修改

启动Zabbix Agent。

service zabbix-agentd_ctl start


设置开机启动

chkconfig zabbix-agent on


使用netstat命令查看Zabbix Agent是否已被正常启动:

netstat -utlnp | grep zabbix


配置防火墙

# vi /etc/sysconfig/iptables

-A INPUT -m state �Cstate NEW -m tcp -p tcp �Cdport 22 -j ACCEPT

-A INPUT -m state �Cstate NEW -m tcp -p tcp �Cdport 10050 -j ACCEPT

上面的只是一个示范,一定要在dport 22下面增加

# /etc/init.d/iptables restart//最后重启防火墙使配置生效

CentOS 6.5 Zabbix-windows-Agent安装

CentOS 6.5 Zabbix-windows-Agent安装


CentOS 6.5 Zabbix-windows-Agent安装


下载路径

www.zabbix.com/downloack/2.2.0/zabbix_agents_2.2.0.win.zip


下载到C盘

在C盘建一个zabbix文件夹


将bin=>win64中的三个程序复制到zabbix中

将conf=>zabbix_agrnt.win.cong复制到C盘

修改zabbix_agrnt.win.cong为zabbix_agrnt.cong


打开 zabbix_agrnt.cong


Server=115.29.245.240 # 填写Server的IP地址

ListenPort=10051# 数据端口

Hostname=115.29.245.240 # 填写Server的HostName,注意Server端要能解析


打开CMD.exe终端

cd c:\zabbix


zabbix_agentd.exe --install



打开我的电脑=>管理=>服务和应用程序=>服务

找到zabbix服务 点击启动


安装成功之后再C盘多了一个zabbix_agent.log文件


获取监控

打开CMD.exe


cd c:\zabbix


typeperf -qx 【这个命令就会线束windows的计数器】


ctrl+C结束


typeperf -qx > c:\cpu.txt【导出到c盘】


打开cpu.txt文件。找到需要监控的监控项。

把里面的监控项复制到zabbix_agrnt.cong文件后面添加。添加之前停止zabbix服务,下面以 \Processor(_Total)\% Processor Time 为例。


PerfCounter=UserPerfCountercpu,"\Processor(_Total)\% Processor Time",3

PerfCounter=UserPerfCountercpuC1,"\Processor(0)\% C1 Time",3

PerfCounter=Logicaldisk_Free_Space,"\Logicaldisk(_Total)\% Free Space",3

【\Processor(_Total)\% Processor Time】导出来的计数器名字

【3】刷新时间

其他的不要动


重启服务



进入zabbix网页管理

新建一个主机群主

组态 ==> 主机群主 ==> 新建主机群主 ==> [windows server]

组态 ==> 主机 ==> 创建主机 ==> 添加IP 端口

主机。填主机的IP

可见名称 随便写

主机组

组态 ==> 模板 ==>

组态 ==> 模板 ==> 点击模板 ==> 项目 ==> 创建监控项 ==> 键值 必须与zabbix_agrnt.cong中的名称一致{UserPerfCountercpu}

数据类型 数字的(浮点)

单位 (%)

组态 ==> 模板 ==> 点击模板 ==> 图像 ==> 创建图形 ==> 项目里面添加刚建立的项目

组态 ==> 主机 ==>

我们今天的关于centos – 来自zabbix_agentd的SELinux阻止sudo的分享就到这里,谢谢您的阅读,如果想了解更多关于2018年第六周-centos7安装zabbix-agentd(源码安装方式)、CentOS 6.5 Zabbix-agent3.2 安装 1.0版、CentOS 6.5 Zabbix-Agent安装、CentOS 6.5 Zabbix-windows-Agent安装的相关信息,可以在本站进行搜索。

本文标签: