获得力量

获得力量

我刚刚通过 Chef 在 CentOS 7 上安装了 NRPE。这是我在所有 CentOS 6 服务器上使用的相同方法 - 并且在那里有效。NRPE 启动了,但出现以下错误:

Jun 13 15:12:21 myserver nrpe[3667]: Could not open config directory '/etc/nagios/nrpe.d' for reading.
Jun 13 15:12:21 myserver nrpe[3667]: Continuing with errors...

所有服务器配置都在 /etc/nagios/nrpe.d 下。这是我的 cfg:

pid_file=/var/run/nrpe.pid
server_port=5666
nrpe_user=nagios
nrpe_group=nagios
dont_blame_nrpe=0
debug=0
command_timeout=60
allowed_hosts=127.0.0.1,192.168.1.14
include_dir=/etc/nagios/nrpe.d

以下是/etc/nagios/nrpe.d 的权限:

# ls -atlr /etc/nagios/
-rwxrwxrwx.  1 nagios nagios  248 Jun 13 14:45 nrpe.cfg
drwxrwxrwx.  2 nagios nagios   89 Jun 13 14:51 nrpe.d

我怎样才能让 NRPE 读取配置目录中的配置?

答案1

我也遇到了同样的问题。请参考以下步骤进行解决。

  1. 使用命令或命令检查文件的权限/etc/nagios/nrpe.cfg,然后检查 SELinux 状态。如果显示“已禁用”,则没有问题。如果显示“允许”,则没有问题,但如果显示“强制”,则执行以下步骤。sestatusgetenforce
  2. 如果您需要 SELinux 处于强制模式,则使用以下命令检查 SELinux 策略文件上下文,

    # pwd
    /etc/nagios
    # ls -Z
    -rw-r--r--. root root system_u:object_r:nrpe_etc_t:s0  nrpe.cfg
    
  3. 如果文件上下文不同,则将其更改为nrpe_etc_t使用以下命令。

    # semanage fcontext -a -t nrpe_etc_t "/etc/nagios/nrpe.cfg"
    # restorecon -R -v /etc/nagios/nrpe.cfg
    

我在 CentOS 7 上进行了同样的测试。

答案2

在nrpe.cfg中打开debug,然后重启服务,如果看到类似“nrpe can not read configure dir /etc/nagios/nrpe.d”的错误信息,说明是selinux导致的问题。

您可以检查并关闭selinux(如果没有安全问题)。

获得力量

执行

设置强制 0

获得力量

宽容

然后使用“service nrpe restart”重启nrpe。现在它应该可以工作了。

答案3

我建议您也查看 /etc/nagios 目录的权限和所有权。

您还可以 su 到 nagios 用户并开始向上移动(cd)目录树来确定权限中断的位置。

相关内容