如何在Ubuntu 18.04上安装和配置Nagios

Nagios是最受欢迎的开源监视系统之一。 Nagios会保留整个IT基础架构的清单,并确保您的网络,服务器,应用程序,服务和流程已启动并正在运行。

如果出现故障或性能不佳,Nagios将通过各种方法发送通知警报。

本教程将指导您完成在Ubuntu 18.04上安装和配置最新版本的Nagios Core所需的步骤。

较早版本的Nagios(版本3)可在Ubuntu软件存储库中找到,并可通过以下方式轻松安装 apt install nagios3

先决条件

在继续本教程之前,请确保您以具有sudo特权的用户身份登录。

更新您的Ubuntu系统,并安装以下软件包,这些软件包是下载和编译Nagios主应用程序和Nagios插件所必需的:

sudo apt update && sudo apt upgradesudo apt install autoconf gcc libc6 make wget unzip apache2 php libapache2-mod-php7.2 libgd-devsudo apt install libmcrypt-dev libssl-dev bc gawk dc build-essential libnet-snmp-perl gettext

在Ubuntu上安装Nagios#

以下步骤描述了如何从源代码安装最新版本的Nagios Core。

1.下载Nagios#

我们将在以下位置下载Nagios源 /usr/src 该目录是放置源文件的常用位置,请使用以下命令更改为目录:

cd /usr/src/

使用以下wget命令从项目Github存储库下载最新版本的Nagios:

sudo wget https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.2.tar.gz

下载完成后,使用以下命令解压缩tar文件:

sudo tar zxf nagios-*.tar.gz

在继续下一步之前,请确保通过键入以下内容更改为Nagios源目录:

cd nagioscore-nagios-*/

2.编译Nagios#

要开始构建过程,请运行 configure 该脚本将执行大量检查,以确保系统上的所有依赖项都存在:

sudo ./configure --with-httpd-conf=/etc/apache2/sites-enabled

成功完成后,将在屏幕上显示以下消息:

*** Configuration summary for nagios 4.4.2 2018-08-16 ***:

 General Options:
 -------------------------
        Nagios executable:  nagios
        Nagios user/group:  nagios,nagios
       Command user/group:  nagios,nagios
             Event Broker:  yes
        Install ${prefix}:  /usr/local/nagios
    Install ${includedir}:  /usr/local/nagios/include/nagios
                Lock file:  /run/nagios.lock
   Check result directory:  /usr/local/nagios/var/spool/checkresults
           Init directory:  /lib/systemd/system
  Apache conf.d directory:  /etc/apache2/sites-enabled
             Mail program:  /bin/mail
                  Host OS:  linux-gnu
          IOBroker Method:  epoll

 Web Interface Options:
 ------------------------
                 HTML URL:  http://localhost/nagios/
                  CGI URL:  http://localhost/nagios/cgi-bin/
 Traceroute (used by WAP):  


Review the options above for accuracy.  If they look okay,
type 'make all' to compile the main program and CGIs.

现在,您可以使用 make 命令:

sudo make all

编译可能需要一些时间,具体取决于您的系统。 构建过程完成后,将显示以下消息:

*** Compile finished ***

3.创建Nagios用户和组#

以下命令将创建一个新系统 nagios 用户和组:

sudo make install-groups-users

添加Apache www-data 用户到 nagios 组:

sudo usermod -a -G nagios www-data

4.安装Nagios Binaries#

执行以下命令以安装Nagios二进制文件,CGI和HTML文件:

sudo make install

您应该看到以下输出:

*** Main program, CGIs and HTML files installed ***

5.创建外部命令目录

Nagios可以处理来自外部应用程序的命令。 创建外部命令目录并通过键入以下命令设置适当的权限:

sudo make install-commandmode
*** External command directory configured ***

6.安装Nagios配置文件#

使用以下命令安装样本Nagios配置文件:

sudo make install-config
*** Config files installed ***

Remember, these are *SAMPLE* config files.  You'll need to read
the documentation for more information on how to actually define
services, hosts, etc. to fit your particular needs.

7.安装Apache配置文件#

下面的命令将安装Apache Web服务器配置文件:

sudo make install-webconf
*** Nagios/Apache conf file installed ***

确保已启用Apache重写和cgi模块:

sudo a2enmod rewritesudo a2enmod cgi

8.创建系统单位文件编号

以下命令将安装systemd单位文件,还将nagios服务配置为在引导时启动。

sudo make install-daemoninit
...
*** Init script installed ***

9.创建用户帐号

要访问Nagios网络界面,您需要创建一个名为的管理员用户 nagiosadmin

使用以下 htpasswd 创建一个名为的用户的命令 nagiosadmin

sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

系统将提示您输入并确认用户密码。

New password: 
Re-type new password: 
Adding password for user nagiosadmin

重新启动Apache服务以使更改生效:

sudo systemctl restart apache2

10.配置防火墙#

防火墙将保护您的服务器免受不必要的流量的攻击。

如果您的服务器上未配置防火墙,则可以查看我们的指南,了解如何在ubuntu上使用ufw设置防火墙

通过键入以下内容打开Apache端口:

sudo ufw allow Apache

安装Nagios插件#

切换回 /usr/src 目录并从项目Github存储库下载最新版本的Nagios插件:

cd /usr/src/sudo wget -O nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gz

下载完成后,通过键入以下内容解压缩tar文件:

sudo tar zxf nagios-plugins.tar.gz

转到插件源目录:

cd nagios-plugins-release-2.2.1

逐一运行以下命令以编译并安装Nagios插件:

sudo ./tools/setupsudo ./configuresudo makesudo make install

启动Nagios#

现在已经安装了Nagios及其插件,请使用以下命令启动Nagios服务:

sudo systemctl start nagios

要验证Nagios是否正在运行,请通过键入以下命令检查服务状态:

sudo systemctl status nagios

输出应如下所示,表明Nagios服务处于活动状态并正在运行。

* nagios.service - Nagios Core 4.4.2
   Loaded: loaded (/lib/systemd/system/nagios.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2018-11-16 14:54:21 PST; 1s ago
     Docs: https://www.nagios.org/documentation
  Process: 18294 ExecStopPost=/bin/rm -f /usr/local/nagios/var/rw/nagios.cmd (code=exited, status=0/SUCCESS)
  Process: 18293 ExecStop=/bin/kill -s TERM ${MAINPID} (code=exited, status=0/SUCCESS)
  Process: 18315 ExecStart=/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg (code=exited, status=0/SUCCESS)
  Process: 18313 ExecStartPre=/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg (code=exited, status=0/SUCCESS)
 Main PID: 18325 (nagios)
    Tasks: 6 (limit: 2319)
   CGroup: /system.slice/nagios.service

访问Nagios Web界面#

要访问Nagios Web界面,请打开您喜欢的浏览器,然后输入服务器的域名或公共IP地址,然后输入 /nagios

http(s)://your_domain_or_ip_address/nagios

输入 nagiosadmin 用户登录凭据,您将被重定向到默认的Nagios主页,如下图所示:

结论#

您已成功在Ubuntu系统上从源代码成功安装了最新的Nagios版本。

现在,您应该查看Nagios文档,并了解有关如何配置和使用Nagios的更多信息。

如果您遇到问题或有反馈,请在下面发表评论。

Ubuntu监控

Sidebar