在本教程中,我们将引导您完成将 Nagios 监视软件安装到树莓派的过程。
Nagios 是一种流行的开源软件,旨在监视系统,网络和基础结构。
Nagios 的最重要优点之一是,与其他替代品相比,它相对较轻。
轻巧的特性使其非常适合在树莓派上运行,从而使您可以在单个设备上完成的工作量最大化。
在本教程中,我们将向您展示如何使用 Nagios 监视树莓派中的设备。
访问 Nagios 网站时,您会看到有两种版本的 Nagios 。
在本指南中,我们将向您展示如何安装 Nagios Core,这是 Nagios 的免费开源版本。
设备清单
下面我们列出了用于在树莓派上安装和设置 Nagios 的这些步骤的设备。
推荐的
树莓派
Micro SD 卡
电源
Ethernet Cord 或 * WiFi dongle (Pi 3 和 4 具有内置 WiFi)
可选的
- 树莓派外壳
对于有关安装 Nagios 的教程,我们使用了树莓派 4,该版本运行了 [树莓派 OS] 的最新可用版本。
本指南适用于运行基于 Debian 操作系统的任何人,例如 Ubuntu Server 或 Kali Linux/raspberry-pi-kali-linux/)。
为 Nagios 准备您的树莓派
在本节中,我们将为您的树莓派做好准备,以编译和运行 Nagios 软件。
1 在开始之前,请确保我们的操作系统完全是最新的。
要更新所有内容,我们需要在终端中输入以下两个命令。
sudo apt update
sudo apt full-upgrade
2 树莓派完成更新后,我们现在可以安装将用于运行 Nagios 的软件包。
运行以下命令以安装我们需要的所有软件包。
sudo apt install -y autoconf构建必需的 wget 解压缩 apache2 apache2-utils php libgd-dev snmp libnet-snmp-perl gettext libssl-dev wget bc gawk dc libmcrypt-dev
此命令将安装我们需要的几个软件包。这些软件包包括编译 Nagios 软件所需的编译器。我们还安装了 Apache Web 服务器,该服务器用于 Nagios 的 Web 界面。
下载和编译 Nagios
在本节中,我们将引导您快速完成在树莓派上编译 Nagios 软件所需的几个步骤。
1 首先,我们将首先进入 /tmp
目录。
我们将在此目录下载,提取和编译 Nagios 源代码。
cd/tmp
2 现在,我们可以通过运行以下命令将 Nagios 源代码下载到我们的树莓派中。
wget -O nagios.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.6.tar.gz
该命令将使用 wget 将 Nagios 源代码下载到我们的 /tmp 目录中。
3 存档下载完成后,我们可以通过运行以下命令将其解压缩。
tar xzf nagios.tar.gz
4 现在转到 Nagios 目录并配置要编译的软件。
cd /tmp/nagioscore-nagios-4.4.6/
./configure --with-httpd-conf =/etc/apache2/sites-enabled
我们进入要存储 apache2 配置的路径。该路径将在本教程的后面部分中使用。
5 现在,我们通过运行以下命令来编译 Nagios 。
全部制作
此过程可能需要一些时间,因为它需要编译所有 Nagios 代码。在树莓派 4 上运行此程序大约需要 5 分钟。
在树莓派上设置 Nagios
在本节中,我们将向您展示如何在树莓派上设置 Nagios 。接下来的几个步骤将完成 Nagios 的设置过程。
1 让我们使用 make
命令来创建 Nagios 需要运行的用户和组。
我们还将”www-data” 用户添加到由我们的 make 命令创建的”nagios” 组中。
sudo make install-groups-users
sudo usermod -a -G nagios www-data
2 接下来,使用以下命令将编译后的二进制文件安装到我们的操作系统中。
sudo 使安装
3 我们还可以使用 make 命令安装 Nagios 服务并将其设置为在启动时启动。运行以下命令以安装 Nagios 核心守护程序。
sudo make install-daemoninit
4 现在,我们可以运行以下命令来设置外部命令目录。
sudo make install-commandmode
5 下一步是使用 make
命令再次复制示例配置文件。
sudo 制作安装配置
这些配置文件是 Nagios 运作所必需的。没有配置文件,软件将无法加载。
6 我们的第二步是安装 Apache 配置文件。
该命令会将所需的配置文件安装到我们配置 makefile 时指定的目录中。
我们还将使用两个 a2enmod
命令来确保启用了所需的 Apache 模块。
sudo make install-webconf
sudo a2enmod重写
sudo a2enmod cgi
7 在最后一步中,我们将创建一个 Apache 用户,您将使用该用户访问树莓派上的 Nagios 界面。
以下命令将创建一个名为 nagiosadmin
的用户。系统将要求您为此用户指定密码。
sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
必须将用户称为”nagiosadmin” 才能满足 Nagios 的默认配置。
在树莓派上启动 Nagios
在本节中,我们将引导您如何在树莓派上启动 Nagios 软件。
1 我们的第一步是通过运行以下命令来重新启动 Apache Web 服务器。
sudo systemctl restart apache2
重新启动 Apache 将允许我们加载新的配置文件。
2 接下来,启用 Nagios 服务并通过运行以下两个命令来启动它。
sudo systemctl启用 nagios
sudo systemctl启动 nagios
通过启用该服务,我们将允许 Nagios 在您的树莓派上启动时启动。
3 您可以通过运行以下命令来验证 Nagios 是否已在树莓派上启动。
sudo systemctl状态 Nagios
如果一切正常,您将看到以下文本输出到终端。
活动:活动(运行中)
这段文字告诉我们该服务已激活并且正在运行。
安装 Nagios 插件
为了让 Nagios 正常工作,我们需要安装其插件。没有它,Nagios 软件将几乎没有功能。
在本节中,我们将向您展示如何在树莓派上安装这些 Nagios 插件。
1 首先进入我们的 /tmp
目录。
cd/tmp
2 现在我们位于 /tmp
目录中,我们可以通过运行以下命令来下载 Nagios 插件。
wget -O nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/releases/download/release-2.3.3/nagios-plugins-2.3.3.tar.gz
3 现在,使用以下命令将插件源代码提取到我们的当前目录中。
tar zxf nagios-plugins.tar.gz
4 我们的下一步是转到我们新创建的目录并配置要编译的插件。
cd /tmp/nagios-plugins-2.3.3
./configure
4 配置过程完成后,我们可以通过运行以下命令来编译 Nagios 插件。
使
根据您的树莓派,此过程可能需要一些时间。但是,它应该比编译基本 Nagios 代码快得多。
5 通过运行以下命令来安装 Nagios 插件以完成此过程。
sudo 使安装
6 为确保 Nagios 加载新插件,请通过运行以下命令重新启动软件。
sudo systemctl restart nagios
连接到 Nagios Web 界面
现在我们已经安装了所有内容,现在我们可以测试 Nagios Web 界面是否在线并且可以正常工作。
1 要访问 Nagios 网络界面,您需要知道树莓派的 IP 地址。
您可以通过运行以下命令来获取树莓派的本地 IP 地址。
主机名-I
2 要连接 Nagios 网络界面,您需要转到 Pi 的 IP 地址,后跟 /nagios
。
http://[IPADDRESS]/nagios
当您尝试连接时,将要求您输入” 用户名” 和” 密码”。
如果您已按照本教程进行操作,则用户名应为 nagiosadmin
,密码应为您指定的密码。
3 成功建立连接后,Nagios 核心主页将为您打招呼,所有这些都是从树莓派运行的。
将设备添加到 Nagios
在接下来的两个部分中,我们将向您展示如何添加设备以供 Nagios 检查。此过程相对简单,但确实需要修改几个配置文件。
将主机添加到 Nagios
在本节中,我们将向您展示如何将主机添加到 Nagios 将读取的配置文件中。
为此,我们需要创建一个配置文件,在其中定义要监视的设备的各种详细信息。1 首先让我们进入 Nagios 的”** objects **” 配置文件夹。
默认情况下,此文件夹包含一些样本配置文件。这些文件对于查看如何配置 Nagios 很有用。
cd/usr/local/nagios/etc/objects
2 现在让我们创建一个配置文件,在其中指定主机的配置。
对于此示例,我们将调用此文件 pimylifeuphost.cfg
,但是最好使用最能描述您设备的名称。
sudo vim pimylifeuphost .cfg
3 在此文件中,我们需要输入以下行。
您将需要确保指定要对其执行检查的设备的 IP 地址。
定义主机{
使用 linux -server;要使用的主机组
host_name Pi我的生活主持人;该主机名
别名 pimylifeuphost ;别名
地址[YOURHOSTIPADDRESS]; IP地址
}
此基本配置将使我们至少可以通过向其发送 ping 请求来监视设备是否在线。
4 完成后,按 CTRL + X,然后按 Y ,然后按 ENTER 保存文件
5 接下来,我们需要修改我们的 Nagios 配置,以便它知道读取我们的新配置文件。
通过运行以下命令开始修改配置文件。
sudo vim /usr/local/nagios/etc/nagios.cfg
6 在此文件中,找到以下行,并在其下面添加新的配置行。
找
cfg_file =/usr/local/nagios/etc/objects/templates.cfg
在下方添加
cfg_file =/usr/local/nagios/etc/objects/pimylifeuphost.cfg
现在,当我们重新启动 Nagios 时,它将知道读取该文件并加载其中定义的设置。
7 通过按 CTRL + X,然后按 Y ,然后按 ENTER 保存配置文件
8 现在,我们可以使用以下命令在树莓派上重新启动 Nagios 服务。
sudo systemctl restart nagios
9 现在,您应该可以通过访问 Nagios 仪表板上的” 主机 “页面来查看新主机。
目前,Nagios 将仅执行简单的 ping 检查以查看主机是否在线。
在下一部分中,我们将向您展示如何向主机添加服务以检查 SSH 或其 Web 界面的状态。
向主机添加服务
在本节中,我们将向您展示如何向主机添加几个其他检查。
对于本指南,我们将设置两个服务,它们将使用 check \ _http 和 [check \ _ssh](https: // 我们主机上的 //www.monitoring-plugins.org/doc/man/check_ssh.html) 命令。
这两个命令都可以用来做很多事情,但是在本教程中,我们将使用它们的最基本用法。
1 为了能够添加这些新命令,我们需要去修改我们之前创建的主机文件。
我们可以通过在树莓派上运行以下命令来开始修改此文件。
sudo vim /usr/local/nagios/etc/objects/pimylifeuphost.cfg
2 在此文件中,我们将需要在底部添加一个新部分来定义我们的服务。
每个服务必须在一个单独的块中定义,因此对于本教程,我们将创建其中两个块。
定义服务{
使用本地服务
host_name Pi我的生活主持人
service_description SSH
check_command check_ssh
}
定义服务{
使用本地服务
host_name Pi我的生活主持人
service_description HTTP
check_command check_http
}
通过这两个块,Nagios 将自动检查在我们指定主机上运行的 SSH 和 HTTP 端口的状态。
3 添加完新块后,可以按 CTRL + X,然后按 Y ,然后按 Enter 键来保存文件。
4 现在,我们应该验证我们的配置更改是否有效。我们可以通过运行以下命令来做到这一点。
该命令将告诉 Nagios 软件验证配置文件的内容。
sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
如果正确输入了所有内容,您将在命令行中看到文本” 事情看起来还不错”。
5 现在,我们可以重新启动 Nagios ,以便将所做的更改加载到树莓派中。
sudo systemctl restart nagios
6 现在,当您打开 Nagios Web 界面时,转到” 服务 “菜单。
在此页面中,您将能够看到新主机的 SSH 和 HTTP 服务的状态。
希望在此阶段,您现在已经可以在树莓派上启动并运行 Nagios 软件。您可以查看官方 Nagios 核心文档,了解有关使用 Nagios 的更多信息。
如果您在安装 Nagios 时遇到任何问题,请在下面发表评论。