如何在 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. 在 Ubuntu 或 Debian 中从源安装 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 监控系统。