如何在 Ubuntu 18.04 LTS 上安装 Nagios 监控软件
本教程适用于这些操作系统版本
- Ubuntu 10.04 (Lucid Lynx)
在此页
- 第 1 步 - 安装依赖包
- 第 2 步 - 安装 Nagios Core 4.4.5
- 下载 Nagios Core 4.4.5
- 编译并安装 Nagios
- 创建 nagiosadmin 用户
- 设置 UFW 防火墙
- 在 Client01 服务器上安装 NRPE 服务器
- 将主机配置添加到 Nagios 服务器
Nagios 是用于系统和网络监控的开源软件。 Nagios 可以监视主机及其服务的活动,并在服务器发生不良情况时提供警告/警报。 Nagios 可以在 Linux 操作系统上运行,我们将使用 Ubuntu 18.04 服务器。
在本教程中,我们将逐步向您展示在 Ubuntu 18.04 上安装 Nagios 4.4.x。我们将从源代码安装 Nagios Core 4.4.x,安装 nrpe 和 nagios 插件,然后将要监控的主机添加到 Nagios 服务器。
先决条件
- 2 台 Ubuntu 18.04 服务器
- Nagios 服务器 - 主机名:hakase-nagios,IP:10.5.5.11
- Ubuntu 客户端 - 主机名:client01,IP:10.5.5.12
我们将要做什么:
- 安装依赖包
- 安装 Nagios Core 4.4.5
- 安装 Nagios 插件和 NRPE 插件
- 将要监控的主机添加到 Nagios Server
- 测试
第 1 步 - 安装软件包依赖项
首先,我们将更新 Ubuntu 存储库并为 Nagios 安装安装一些依赖包。
使用下面的 apt 命令更新 Ubuntu 存储库。
sudo apt update
之后,为 Nagios 安装安装包依赖项。
sudo apt install -y autoconf bc gawk dc build-essential gcc libc6 make wget unzip apache2 php libapache2-mod-php7.2 libgd-dev libmcrypt-dev make libssl-dev snmp libnet-snmp-perl gettext
并且您已经为 Nagios 服务器安装了软件包依赖项。
第 2 步 - 安装 Nagios Core 4.4.5
在这一步中,我们将安装最新的稳定版 Nagios Core 4.4.5。我们将从源代码手动安装它。
下载 Nagios Core 4.4.5
转到您的主目录并下载 Nagios Core 源代码。
cd ~/
wget https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.5.tar.gz提取 Nagios 包并转到提取的 Nagios 目录。
tar xzf nagios-4.4.5.tar.gz
cd nagioscore-nagios-4.4.5/编译安装 Nagios
首先,编译 Nagios 源代码并为 Nagios 定义 Apache 虚拟主机配置。
sudo ./configure --with-httpd-conf=/etc/apache2/sites-enabled
sudo make all创建 Nagios 用户和组,并将 www-data Apache 用户添加到 nagios 组。
sudo make install-groups-users
sudo usermod -a -G nagios www-data安装 Nagios 二进制文件、服务守护程序脚本和命令模式。
sudo make install
sudo make install-daemoninit
sudo make install-commandmode之后,安装示例脚本配置。
sudo make install-config
然后为 Nagios 安装 Apache 配置并激活 mod_rewrite 和 mode_cgi 模块。
sudo make install-webconf
sudo a2enmod rewrite cgi现在重新启动 Apache 服务。
systemctl restart apache2
你已经安装了 Nagios Core 4.4.5。
创建 nagiosadmin 用户
安装 Nagios Core 后,我们将添加访问 Nagios 仪表板的基本身份验证。我们将使用基本的 Apache 身份验证。
为用户 \nagiosadmin\ 创建一个新的 apache 基本身份验证。
sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
输入您的强密码。
您已经为 Nagios 仪表板身份验证创建了一个新用户 nagiosadmin。
设置 UFW 防火墙
对于防火墙配置,您需要将 Apache 服务和 Nagios 服务器端口添加到 UFW 防火墙。
使用下面的 ufw 命令添加 Apache HTTP 端口和 Nagios 端口。
sudo ufw allow Apache
现在重新加载 UFW 防火墙。
sudo ufw reload
并且您已经在 Ubuntu 18.04 服务器上完成了 Nagios Core 安装。
第 3 步 - 安装 Nagios 插件和 NRPE 插件
安装 Nagios Core 后,我们将安装 Nagios 插件和 NRPE 插件。
Nagios 和 NRPE 插件在 Ubuntu 存储库中默认可用。您可以使用下面的 apt 命令安装这些软件包。
sudo apt install nagios-plugins nagios-nrpe-plugin
安装完成后,进入nagios安装目录\/usr/local/nagios\,编辑配置文件\nagios.cfg\。
cd /usr/local/nagios/
vim nagios.cfg取消注释服务器的附加配置目录。
cfg_dir=/usr/local/nagios/etc/servers
保存并关闭。
现在创建一个新目录\/usr/local/nagios/etc/servers\,用于存储主机监视器的配置。
mkdir -p /usr/local/nagios/etc/servers
之后,进入“/usr/local/nagios/etc/”目录,编辑配置文件“resurces.cfg”。
cd /usr/local/nagios/etc/
vim resources.cfg如下更改 Nagios 插件的默认目录。
$USER1$=/usr/lib/nagios/plugins
保存并关闭。
接下来,通过编辑配置文件\objects/contacts.cfg\ 添加nagios admin 联系人。
vim objects/contacts.cfg
将电子邮件地址更改为您自己的。
define contact{
......
email
}保存并关闭。
接下来,通过编辑配置文件“objects/commands.cfg”来定义 nrpe 检查命令。
vim objects/commands.cfg
将以下配置粘贴到该行的末尾。
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}保存并关闭。
现在启动 Nagios 服务并将其添加到系统引导。
systemctl start nagios
systemctl enable nagiosNagios 服务已启动并正在运行,使用以下命令检查。
systemctl status nagios
下面是结果。
接下来,我们需要重新启动 Apache 服务以应用新的 Nagios 配置。
systemctl restart apache2
之后,打开您的 Web 浏览器并在“nagios”URL 路径后键入服务器 IP 地址。
http://10.5.5.11/nagios/
使用用户 \nagiosadmin\ 登录并输入您的密码。
您将获得如下所示的 Nagios 仪表板。
因此,您已经在 Ubuntu 18.04 服务器上安装了 Nagios。您还可以将主机添加到 Nagios 服务器。
第 5 步 - 将 Linux 主机添加到监视器
在此步骤中,我们将主机名为“client01”、IP 地址为“10.5.5.12”的 Ubuntu 服务器添加到 Nagios 服务器。
在Client01服务器上安装NRPE服务器
使用您的 ssh 登录到“client01”服务器。
ssh
登录后,更新 Ubuntu 存储库并安装 Nagios 插件和 NRPE 服务器。
sudo apt update
sudo apt install nagios-nrpe-server nagios-plugins接下来进入NRPE安装目录\/etc/nagios\,编辑配置文件\nrpe.cfg\。
cd /etc/nagios/
vim nrpe.cfg取消注释 \server_address\ 行并将值更改为 \client01\ IP 地址。
server_address=10.5.5.12
在“allowed_hosts”这一行中,添加 Nagios Server IP 地址“10.5.5.11”。
allowed_hosts=127.0.0.1,::1,10.5.5.11
保存并关闭。
接下来,编辑“nrpe_local.cfg”配置。
vim nrpe_local.cfg
将 IP 地址更改为“client01”IP 地址,并将配置粘贴到其中。
command[check_root]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_ping]=/usr/lib/nagios/plugins/check_ping -H 10.5.5.12 -w 100.0,20% -c 500.0,60% -p 5
command[check_ssh]=/usr/lib/nagios/plugins/check_ssh -4 10.5.5.12
command[check_http]=/usr/lib/nagios/plugins/check_http -I 10.5.5.12
command[check_apt]=/usr/lib/nagios/plugins/check_apt保存并关闭。
现在重新启动 NRPE 服务并将其添加到系统引导。
systemctl restart nagios-nrpe-server
systemctl enable nagios-nrpe-serverNagios NRPE 服务器已启动并正在运行。
使用以下命令检查 NRPE 服务。
systemctl status nagios-nrpe-server
NRPE 服务已启动并正在运行。
接下来,回到 Nagios 服务器并检查“client01”NRPE 服务器。
/usr/lib/nagios/plugins/check_nrpe -H 10.5.5.12
/usr/lib/nagios/plugins/check_nrpe -H 10.5.5.12 -c check_ping你会得到如下结果。
并且您已经在“client01”主机上安装了 Nagios NRPE 服务器和 Nagios 插件。
将主机配置添加到 Nagios 服务器
回到Nagios server终端,进入“/usr/local/nagios/etc”目录,新建配置“server/client01.cfg”。
cd /usr/local/nagios/etc
vim servers/client01.cfg用您自己的 IP 地址和主机名更改 IP 地址和主机名,然后将配置粘贴到其中。
# Ubuntu Host configuration file1
define host {
use linux-server
host_name client01
alias Ubuntu Host
address 10.5.5.12
register 1
}
define service {
host_name client01
service_description PING
check_command check_nrpe!check_ping
max_check_attempts 2
check_interval 2
retry_interval 2
check_period 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
notifications_enabled 1
register 1
}
define service {
host_name client01
service_description Check Users
check_command check_nrpe!check_users
max_check_attempts 2
check_interval 2
retry_interval 2
check_period 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
notifications_enabled 1
register 1
}
define service {
host_name client01
service_description Check SSH
check_command check_nrpe!check_ssh
max_check_attempts 2
check_interval 2
retry_interval 2
check_period 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
notifications_enabled 1
register 1
}
define service {
host_name client01
service_description Check Root / Disk
check_command check_nrpe!check_root
max_check_attempts 2
check_interval 2
retry_interval 2
check_period 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
notifications_enabled 1
register 1
}
define service {
host_name client01
service_description Check APT Update
check_command check_nrpe!check_apt
max_check_attempts 2
check_interval 2
retry_interval 2
check_period 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
notifications_enabled 1
register 1
}
define service {
host_name client01
service_description Check HTTP
check_command check_nrpe!check_http
max_check_attempts 2
check_interval 2
retry_interval 2
check_period 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
notifications_enabled 1
register 1
}保存并关闭。
现在重新启动 Nagios 服务器。
systemctl restart nagios
第 5 步 - 测试
返回浏览器并等待几分钟。
单击“Hosts”菜单,您将看到已添加“client01”。
以下是对“client01”服务器的详细监控。
现在您已经将要监控的主机添加到 Nagios 服务器。
至此,Nagios 4.4.5 在 Ubuntu 18.04 Server 上的安装已经成功完成。
参考
- https://support.nagios.com/kb/