Linux怎么安装Nagios NRPE插件_Linux远程监控配置方法教程【进阶】

秋强同学_3941

秋强同学_3941

2026-03-28

920人浏览

原创

nrpe插件安装与配置需依次完成:一、安装nagios-plugins依赖并编译;二、编译安装nrpe守护程序,选择xinetd或daemon模式;三、配置nrpe.cfg中allowed_hosts、端口及防火墙;四、定义本地命令并用check_nrpe自检;五、在nagios服务端安装插件、定义命令并关联服务。

linux怎么安装nagios nrpe插件_linux远程监控配置方法教程【进阶】

如果您需要在Linux主机上实现对远程服务状态、系统资源等指标的主动采集与上报,NRPE插件是Nagios监控体系中不可或缺的组件。以下是完成NRPE插件安装与基础配置的具体操作路径:

一、安装Nagios插件基础依赖

NRPE插件运行依赖于Nagios核心插件(nagios-plugins)提供的各类检查命令,因此需先确保其已正确部署。该步骤为后续NRPE调用check_disk、check_load等命令提供可执行文件支持。

1、使用yum或apt安装编译所需开发工具及库文件:
CentOS/RHEL:sudo yum install -y gcc glibc glibc-common gd gd-devel openssl-devel xinetd perl make autoconf automake libtool
Ubuntu/Debian:sudo apt-get update && sudo apt-get install -y build-essential libgd-dev libssl-dev xinetd perl

2、创建专用用户与组以保障权限隔离:
sudo useradd nagios
sudo groupadd nagcmd
sudo usermod -a -G nagcmd nagios

3、下载并解压nagios-plugins源码包(例如nagios-plugins-2.4.2.tar.gz):
wget https://github.com/nagios-plugins/nagios-plugins/releases/download/release-2.4.2/nagios-plugins-2.4.2.tar.gz
tar zxvf nagios-plugins-2.4.2.tar.gz
cd nagios-plugins-2.4.2

4、配置编译参数并完成安装:
./configure --with-nagios-user=nagios --with-nagios-group=nagcmd --enable-perl-modules
make && sudo make install
sudo chown -R nagios:nagcmd /usr/local/nagios

二、编译安装NRPE守护程序

NRPE作为轻量级守护进程,负责接收来自Nagios服务器的check_nrpe请求,并在本地执行对应插件命令后返回结果。安装过程需区分是否启用xinetd托管或独立daemon模式。

1、下载NRPE源码包(如nrpe-4.1.0.tar.gz):
wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.1.0/nrpe-4.1.0.tar.gz
tar zxvf nrpe-4.1.0.tar.gz
cd nrpe-4.1.0

2、执行configure脚本指定用户与路径:
./configure --with-nagios-user=nagios --with-nagios-group=nagcmd --with-ssl=/usr/bin/openssl --with-ssl-lib=/usr/lib/x86_64-linux-gnu

3、编译并安装核心组件:
make all
sudo make install-plugin
sudo make install-daemon
sudo make install-daemon-config

4、选择服务托管方式之一进行部署:
若使用xinetd:sudo make install-xinetd;随后编辑/etc/xinetd.d/nrpe,将only_from = 127.0.0.1 写入配置段
若启用独立daemon:确保/usr/local/nagios/bin/nrpe已存在,且配置文件/usr/local/nagios/etc/nrpe.cfg中server_address=0.0.0.0与allowed_hosts=已正确设置

三、配置NRPE服务监听与访问控制

NRPE默认监听5666端口,必须严格限制允许连接的Nagios服务器IP地址,防止未授权调用导致安全风险。配置项直接影响check_nrpe能否成功建立通信。

1、编辑主配置文件:
sudo vi /usr/local/nagios/etc/nrpe.cfg

2、定位并修改关键参数:
将allowed_hosts=127.0.0.1,中的替换为实际Nagios服务器的IPv4地址,多个地址用英文逗号分隔

3、确认监听端口与绑定地址:
检查server_port=5666未被注释,且server_address=0.0.0.0或具体网卡IP处于启用状态

4、开放系统防火墙端口:
CentOS 7+:sudo firewall-cmd --permanent --add-port=5666/tcp && sudo firewall-cmd --reload
Ubuntu UFW:sudo ufw allow 5666/tcp

四、定义本地监控命令与测试连通性

NRPE通过解析nrpe.cfg中command[xxx]指令调用对应插件,每条命令代表一个可被远程触发的检查逻辑。验证环节需从本机发起测试,确认命令注册有效且输出格式合规。

1、在nrpe.cfg末尾添加示例命令:
command[check_load]=/usr/local/nagios/libexec/check_load -w 5,4,3 -c 10,8,5
command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /

2、重启NRPE服务或xinetd服务:
若为xinetd托管:sudo systemctl restart xinetd
若为独立daemon:sudo /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

3、在被监控主机本地执行自检:
sudo -u nagios /usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_load

4、观察返回结果是否为标准Nagios状态输出格式,例如:OK - load average: 0.05, 0.03, 0.01|load1=0.050;5.000;10.000;0; load5=0.030;4.000;8.000;0; load15=0.010;3.000;5.000;0;

五、在Nagios服务器端配置check_nrpe调用

Nagios服务端需加载check_nrpe插件,并在主机与服务定义中显式声明调用目标与参数,从而将远程检查结果纳入统一告警与展示流程。

1、在Nagios服务器上安装check_nrpe客户端:
下载同版本nrpe源码包,进入目录后执行:
./configure && make && sudo make install-plugin

2、验证服务端到被监控主机的NRPE可达性:
/usr/local/nagios/libexec/check_nrpe -H

3、编辑Nagios服务定义文件(如/usr/local/nagios/etc/objects/commands.cfg),添加新命令:
define command{
  command_name check_nrpe_load
  command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c check_load
}

4、在主机定义中引用该命令:
define service{
  use generic-service
  host_name remote-host
  service_description CPU Load
  check_command check_nrpe_load
}

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
typedef和define区别
typedef和define区别

typedef和define区别在类型检查、作用范围、可读性、错误处理和内存占用等。本专题为大家提供typedef和define相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.26

313

5

define的用法
define的用法

define用法:1、定义常量;2、定义函数宏:3、定义条件编译;4、定义多行宏。更多关于define的用法的内容,大家可以阅读本专题下的文章。

2023.10.11

619

5

github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

2026.01.21

8385

27

GitHub官网入口版本汇总
GitHub官网入口版本汇总

本专题整合了GitHub入口版本地址汇总,阅读专题下面的文章了解更多详细内容。

2026.04.02

818

19

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.08.16

5370

6

SSL检测工具介绍
SSL检测工具介绍

SSL检测工具有SSL Labs、SSL Check、SSL Server Test、SSLMate、SSL/TLS Analyzer等。详细介绍:1、SSL Labs是一个由Qualys提供的在线SSL检测工具,可以评估服务器证书的部署情况、加密套件、协议支持等方面的安全性,它提供了一个详细的报告,包括证书的颁发者、有效期、安全性配置等;2、SSL Check等等。

2023.10.20

730

3

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3870

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3333

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2473

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.4万人学习