网站搜索

如何在 Ubuntu 和 Debian 中安装 Nagios 4


在本主题中,我们将学习如何从 Debian 和 Ubuntu 服务器中的源安装和配置最新官方版本的 Nagios Core

Nagios Core 是一款免费的开源网络监控应用程序,旨在监控网络中的网络应用程序、设备及其相关服务。

Nagios可以通过部署在节点上的代理远程监控特定操作系统参数,并通过邮件或短信发送警报,以便在网络中的关键服务(例如 SMTP、HTTP、SSH、FTP 和其他失败。

要求

  • Ubuntu 20.04/18.04服务器安装
  • Ubuntu 16.04 最小安装
  • Debian 10 最小安装
  • Debian 9 最小安装

第 1 步:安装 Nagios 的先决条件

1.UbuntuDebian 中从源安装 Nagios Core 之前,首先在系统中安装以下 LAMP 堆栈组件,无需 MySQL RDBMS 数据库组件,通过发出以下命令。

apt install apache2 libapache2-mod-php php

2. 在下一步中,通过发出以下命令,安装从源编译和安装 Nagios Core 所需的以下系统依赖项和实用程序。

apt install wget unzip zip autoconf gcc libc6 make apache2-utils libgd-dev

步骤 2:在 Ubuntu 和 Debian 中安装 Nagios 4 Core

3. 第一步,创建 nagios 系统用户和组,并将 nagios 帐户添加到 Apache www-data 用户,方法如下:命令。

useradd nagios
usermod -a -G nagios www-data

4. 当您的系统中存在从源代码编译 Nagios 的所有依赖项、软件包和系统要求后,请转到 Nagios 网页并通过发出以下 wget 命令获取最新版本的 Nagios Core 稳定源代码存档。

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

5. 接下来,使用以下命令解压 Nagios tarball 并进入解压后的 nagios 目录。发出 ls 命令列出 nagios 目录内容。

tar xzf nagios-4.4.6.tar.gz 
cd nagios-4.4.6/
ls
样本输出
total 600
-rwxrwxr-x  1 root root    346 Apr 28 20:48 aclocal.m4
drwxrwxr-x  2 root root   4096 Apr 28 20:48 autoconf-macros
drwxrwxr-x  2 root root   4096 Apr 28 20:48 base
drwxrwxr-x  2 root root   4096 Apr 28 20:48 cgi
-rw-rw-r--  1 root root  32590 Apr 28 20:48 Changelog
drwxrwxr-x  2 root root   4096 Apr 28 20:48 common
-rwxrwxr-x  1 root root  43765 Apr 28 20:48 config.guess
-rwxrwxr-x  1 root root  36345 Apr 28 20:48 config.sub
-rwxrwxr-x  1 root root 246354 Apr 28 20:48 configure
-rw-rw-r--  1 root root  29812 Apr 28 20:48 configure.ac
drwxrwxr-x  5 root root   4096 Apr 28 20:48 contrib
-rw-rw-r--  1 root root   6291 Apr 28 20:48 CONTRIBUTING.md
drwxrwxr-x  2 root root   4096 Apr 28 20:48 docs
-rw-rw-r--  1 root root    886 Apr 28 20:48 doxy.conf
-rwxrwxr-x  1 root root   7025 Apr 28 20:48 functions
drwxrwxr-x 11 root root   4096 Apr 28 20:48 html
drwxrwxr-x  2 root root   4096 Apr 28 20:48 include
-rwxrwxr-x  1 root root     77 Apr 28 20:48 indent-all.sh
-rwxrwxr-x  1 root root    161 Apr 28 20:48 indent.sh
-rw-rw-r--  1 root root    422 Apr 28 20:48 INSTALLING
...

6. 现在,通过发出以下命令开始从源代码编译 Nagios。确保通过发出以下命令来使用启用 Apache 站点的目录配置来配置 Nagios。

./configure --with-httpd-conf=/etc/apache2/sites-enabled
样本输出
*** Configuration summary for nagios 4.4.6 2020-04-28 ***:

 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.

7. 在下一步中,通过发出以下命令构建 Nagios 文件。

make all

8. 现在,通过发出以下命令来安装 Nagios 二进制文件、CGI 脚本和 HTML 文件。

make install

9. 接下来,安装 Nagios 守护进程 init 和外部命令模式配置文件,并确保通过发出以下命令在系统范围内启用 nagios 守护进程。

make install-init
make install-commandmode
systemctl enable nagios.service

10. 接下来,运行以下命令,通过发出以下命令来安装 Nagios 正常运行所需的一些 Nagios 示例配置文件。

make install-config

11. 另外,通过执行以下命令,为 Apacahe Web 服务器安装 Nagios 配置文件,该文件可以在 /etc/apacahe2/sites-enabled/ 目录中找到。

make install-webconf

12. 接下来,通过发出以下命令创建 Apache 服务器登录 Nagios Web 面板所需的 nagiosadmin 帐户和该帐户的密码。

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

13. 要允许 Apache HTTP 服务器执行 Nagios cgi 脚本并通过 HTTP 访问 Nagios 管理面板,请首先在 Apache 中启用 cgi 模块,然后重新启动 Apache 服务,并通过以下命令启动并启用系统范围内的 Nagios 守护进程以下命令。

a2enmod cgi
systemctl restart apache2
systemctl start nagios
systemctl enable nagios

14.最后,通过 HTTP 协议将浏览器指向以下 URL 地址的服务器 IP 地址或域名,登录 Nagios Web Interface。使用 nagiosadmin 用户登录 Nagios,使用 htpasswd 脚本设置密码。

http://IP-Address/nagios
OR
http://DOMAIN/nagios

15. 要查看主机状态,请导航到当前状态 -> 主机菜单,您会注意到本地主机主机显示一些错误,如下面的屏幕截图所示。出现该错误是因为 Nagios 没有安装用于检查主机和服务状态的插件。

步骤 3:在 Ubuntu 和 Debian 中安装 Nagios 插件

16. 要从 Debian 或 Ubuntu 中的源代码编译并安装 Nagios 插件,请在第一阶段通过发出以下命令在系统中安装以下依赖项。

apt install libmcrypt-dev make libssl-dev bc gawk dc build-essential snmp libnet-snmp-perl gettext libldap2-dev smbclient fping libmysqlclient-dev libdbi-dev 

17. 接下来,访问 Nagios 插件存储库页面并通过发出以下命令下载最新的源代码 tarball。

wget https://github.com/nagios-plugins/nagios-plugins/archive/release-2.3.3.tar.gz 

18. 继续提取 Nagios Plugins 源代码 tarball,并通过执行以下命令将路径更改为提取的 nagios-plugins 目录。

tar xfz release-2.3.3.tar.gz 
cd nagios-plugins-release-2.3.3/

19. 现在,通过在服务器控制台中执行以下一系列命令,开始从源代码编译和安装 Nagios 插件。

./tools/setup 
./configure 
make
make install

20.编译并安装的Nagios插件可以位于/usr/local/nagios/libexec/目录中。列出此目录以查看系统中所有可用的插件。

ls /usr/local/nagios/libexec/

21. 最后,通过发出以下命令重新启动 Nagios 守护程序以应用已安装的插件。

systemctl restart nagios.service

22. 接下来,登录 Nagios Web 面板并进入当前状态 -> 服务菜单,您应该注意到所有主机服务现在都由 Nagios 插件检查。

从颜色代码中,您应该看到当前的服务状态:绿色表示正常状态,黄色表示警告状态,红色表示严重状态。

23. 最后,要通过 HTTPS 协议访问 Nagios 管理 Web 界面,请发出以下命令以启用 Apache SSL 配置并重新启动 Apache 守护程序以反映更改。

a2enmod ssl 
a2ensite default-ssl.conf
systemctl restart apache2

24.启用 Apache SSL 配置后,打开 /etc/apache2/sites-enabled/000-default.conf 文件进行编辑并添加以下代码块在 DocumentRoot 语句之后,如下面的摘录所示。

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*) https://%{HTTP_HOST}/$1

25. 您需要通过发出以下命令重新启动 Apache 守护程序以应用配置的规则。

systemctl restart apache2.service 

26.最后,刷新浏览器,以便通过 HTTPS 协议重定向到 Nagios 管理面板。接受浏览器中显示的提示消息,然后使用您的凭据再次登录 Nagios。

恭喜!您已成功从 Ubuntu 服务器或 Debian 中的源安装并配置 Nagios Core 监控系统。