在Debian 9上安装Nagios 4

时间:2020-03-05 15:28:02  来源:igfitidea点击:

Nagios是一个开源服务器和网络监视工具,可以监视服务器,网络设备的某些服务(CPU,HTTP,SMTP,存储磁盘,温度等),并在监视的特定服务出现问题时向我们发出警报。
当服务恢复到正常的所需状态时,它还会提醒我们。
Nagios对于保持服务器列表并确保关键服务已启动并正在运行非常有用。

nagios如何工作?

Nagios在基于代理和无代理的配置中运行。
Nagios的某些版本中以及诸如NagiosQL之类的第三方提供了用户友好的基于Web的图形用户界面,或者管理员可以选择在命令行界面中工作。

它还带有一个仪表板,可提供对资产监视的关键参数的概述。

安装nagios需要执行以下步骤

  • apache和php安装了一些其他必备组件,这些必备组件将在本文中列出
  • 创建nagios用户
  • nagios-core的安装和配置
  • nagios Web界面的配置
  • nagios插件的安装和配置
  • 防火墙的配置

现在,我们来解释在详细的信息中在debian 9上安装nagios的步骤。

1)安装准备工作

要使nagios正常工作,我们需要安装apache2和php并正确配置它们。
如果尚未安装这些软件包,则可以使用以下命令进行安装。

# apt install apache2 apache2-utils php

在本文中,将不详细描述上述软件包的配置。
还有一些其他准备工作软件包要安装,如下所示

# apt install -y build-essential autoconf gcc libc6 make wget unzip libgd2-xpm-dev

2)创建Nagios用户和组

我们需要在nagios上具有默认用户和组,才能在其下运行系统。
默认用户为nagios,默认组为nagcmd.nagios安装完所有内容后,我们可以关闭该用户的登录名

# useradd nagios && groupadd nagcmd
# usermod -a -G nagcmd nagios && usermod -a -G nagcmd www-data

3)从源代码安装并构建Nagios 4.3.2

a)下载nagios

我们将从官方github下载nagios。
我们将在'/opt/nagios'中创建我们的工作目录。

# mkdir /opt/nagios
# cd /opt/nagios

现在下载nagios

# wget -O nagioscore.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.3.2.tar.gz
# tar xzf nagioscore.tar.gz
# cd nagioscore-nagios-4.3.2/

b)安装和配置nagios

现在,我们将配置,编译和安装nagios。

# ./configure --with-nagios-group=nagios --with-command-group=nagcmd --with-httpd_conf=/etc/apache2/sites-enabled/
# make all

我们可以通过提供下一步配置步骤和说明来。
现在,我们将安装二进制文件,CGI和HTML文件

# make install

我们将安装服务或者守护程序文件,并将它们配置为在启动时启动

# make install-init

现在安装并配置外部命令文件

# make install-commandmode

现在安装* SAMPLE *配置文件。
这些是必需的,因为Nagios需要一些配置文件才能启动。

# make install-config

然后安装Apache Web服务器配置文件并配置Apache设置。

# make install-webconf
# a2enmod rewrite && a2enmod cgi

4)配置Nagios Web界面

Web界面需要登录,因此我们将创建一个nagiosadmin帐户并记录我们将分配的密码

# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password: 
Re-type new password:

请注意,我们将使用该用户名和密码登录到nagios Web界面。
现在重新启动apache服务以使修改生效

# systemctl restart apache2.service

5)下载并安装nagios插件2.2.1

为了正常工作,nagios core需要插件来监视各种服务。
我们需要确保已安装必备软件包

# apt install -y autoconf gcc libc6 libmcrypt-dev make libssl-dev wget bc gawk dc build-essential snmp libnet-snmp-perl gettext

现在,我们将在“/opt”目录中创建工作目录,并其中下载插件

# mkdir /opt/nagios && cd /opt/nagios
# wget --no-check-certificate -O nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gz
# tar zxf nagios-plugins.tar.gz
# cd nagios-plugins-release-2.2.1

现在我们将编译并安装插件

# ./tools/setup
# ./configure
# make
# make install

6)启动nagios服务并访问nagios服务器

在启动nagios之前,我们需要检查nagios配置文件是否没有任何错误。

# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
........................
........................
Total Warnings: 0
Total Errors: 0
Things look okay - No serious problems were detected during the pre-flight check

看起来不错,现在让我们让nagios服务在启动时启动

# systemctl enable nagios
# systemctl reload nagios

现在我们可以启动nagios服务

# systemctl start nagios

请注意,如果我们不启动nagios服务,则nagios主页上将显示一条错误消息。

现在,我们可以通过Web浏览器访问地址为http://nagios-ip/nagios的Web界面。

如果服务器具有界面环境,则可以打开Web浏览器并使用链接http://localhost/nagios。

系统将要求我们输入用户名和密码。
以下是我配置的值

  • 用户名:nagiosadmin
  • 密码:nagios

然后,我们将拥有以下主页

现在,我们可以转到左侧的“主机或者服务”菜单列表,以查看受监视的服务器和服务。

我们可以看到我们服务器的默认受监控服务。

7)配置防火墙

如果无法访问Web界面,则应检查防火墙配置。

在Debian 9上默认情况下,似乎未安装ufw,但已安装iptables。
因此,我们肯定需要允许本地防火墙上的端口80入站流量到达nagios核心Web界面。

# iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
# apt install -y iptables-persistent

保存防火墙配置

# iptables-save

但是,如果我们更喜欢ufw作为防火墙而不是iptables,请使用以下命令

# ufw allow Apache
# ufw reload

现在再次重新启动所有服务以进行检查

# systemctl restart nagios
# systemctl restart apache2.service