在Debian 9上安装Nagios 4
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