在 Ubuntu 20.04 上安装 Nagios

介绍

Nagios 是一个开源工具,用于监控网络应用程序、服务和其他基本网络设备。 它通过主动监控检测故障,并在检测到可疑活动时发送通知警报。 同样,当设备或服务恢复到其功能状态时,它会发送通知。

它适用于服务器/代理架构,其中托管 Nagios(核心)的服务器使用插件通过 Nagios 远程插件执行器等代理与远程主机进行通信。 从日志生成的最终报告通过用户界面直观地表示。

本文介绍如何在 Ubuntu 20.04 服务器上安装 Nagios。

先决条件

部署一个完全更新的 Vultr Ubuntu 20.04 服务器。 创建具有 sudo 访问权限的非 root 用户。

1. 安装和配置 Nagios Core

更新系统包。

$ sudo apt update

安装所有必需的软件包。

$ sudo apt install wget unzip curl openssl build-essential libgd-dev libssl-dev libapache2-mod-php php-gd php apache2 -y

下载 Nagios 核心安装文件。 要下载最新版本,请访问 官方发布 地点。

$ wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.6.tar.gz

提取下载的文件。

$ sudo tar -zxvf nagios-4.4.6.tar.gz

导航到安装目录。

$ cd nagios-4.4.6

运行 Nagios Core 配置脚本。

$ sudo ./configure

编译主程序和 CGI​​。

$ sudo make all

制作并安装组和用户。

$ sudo make install-groups-users

添加 www-data 目录用户到 nagios 组。

$ sudo usermod -a -G nagios www-data

安装 Nagios。

$ sudo make install

初始化所有安装配置脚本。

$ sudo make install-init

在 configs 目录上安装和配置权限。

$ sudo make install-commandmode

安装示例配置文件。

$ sudo make install-config

安装 apache 文件。

$ sudo make install-webconf

启用 apache 重写模式。

$ sudo a2enmod rewrite

启用 CGI 配置。

$ sudo a2enmod cgi

重新启动 Apache 服务。

$ sudo systemctl restart apache2

创建一个用户并在出现提示时设置密码。

$ sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users admin

2. 安装 Nagios 插件

下载 Nagios 核心插件。 要下载最新的插件,请访问 插件下载 页。

$ cd ~/
$ wget https://nagios-plugins.org/download/nagios-plugins-2.3.3.tar.gz

解压下载的插件。

$ sudo tar -zxvf nagios-plugins-2.3.3.tar.gz

导航到插件的目录。

$ cd nagios-plugins-2.3.3/

运行插件配置脚本。

$ sudo ./configure --with-nagios-user=nagios --with-nagios-group=nagios

编译 Nagios Core 插件。

$ sudo make

安装插件。

$ sudo make install

3. 验证 Nagios 配置

验证 Nagios 核心配置。

$ sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

启动 Nagios 服务。

$ sudo systemctl start nagios

启用 Nagios 服务以在系统启动时运行。

$ sudo systemctl enable nagios

4. 访问 Nagios Web 界面

打开您的网络浏览器并通过 URL 访问 Nagios 网络界面 http://ServerIP/nagios. 例如:

http://192.0.2.10/nagios

您已在服务器上成功安装 Nagios Core。 要登录,请使用 行政 作为您的用户名和您在用户帐户创建步骤中设置的密码作为您的密码。 您现在可以访问仪表板并开始配置 Nagios。

5. 添加远程主机

现在您的 Nagios 服务器已经配置完毕,是时候配置一个远程主机进行监控了。

首先,以 root 用户身份通过​​ SSH 连接到要监控的主机。

安装先决条件

要监控主机,我们需要将它们添加到 Nagios。 默认情况下,Nagios 只监视 localhost (它运行的服务器)。 我们将添加属于我们网络的主机以获得更多控制权。 您需要在要监控的所有主机上使用以下说明。

首先,安装 nagios-pluginsnagios-nrpe-server

# apt-get install nagios-plugins nagios-nrpe-server

配置NRPE

接下来,打开 /etc/nagios/nrpe.cfg 文件。 替换值 allowed_hosts127.0.0.1,0.0.0.0 用 Nagios 服务器的 IP 地址替换第二个 IP。

我们现在将打开文件 /etc/nagios/nrpe.cfg 并替换几个值。

替换值 server_address 到主机的私有 IP 地址。 放 allowed_hosts 到 Nagios 服务器的私有 IP 地址。 执行 df -h /,复制输出,并将其作为值 command. 它表示您的根文件系统。

完成后保存文件。

现在重启NRPE:

service nagios-nrpe-server restart

将主机添加到 Nagios

现在我们已经配置了要监控的主机,我们需要切换回 Nagios 服务器并将主机添加到其中。 使用您喜欢的编辑器打开以下文件:

# nano /usr/local/nagios/etc/servers/host.cfg

使用以下块作为模板。 代替 host 使用适合您的远程主机的名称,并更新 host_name, alias, 和 address 值相应。

define host {
        use                             linux-server
        host_name                       yourhost
        alias                           My first Apache server
        address                         1.2.3.4
        max_check_attempts              5
        check_period                    24x7
        notification_interval           30
        notification_period             24x7
}

这将允许您简单地监视服务器是启动还是关闭。 现在重新加载 Nagios:

# service nagios reload

恭喜,您已经完成了用于监控服务器的非常基本的 Nagios 设置。 现在您可以登录 Nagios Web 面板查看服务器的状态。

更多信息

有关 Nagios 的更多信息,请参阅 官方文件.

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com