CentOS Nagios安装指南
一、前言
Nagios是一款开源的网络监控系统,广泛应用于服务器、网络设备及应用程序的监控,本文将详细介绍如何在CentOS操作系统上安装和配置Nagios,包括依赖项的安装、用户和组的创建、Nagios的下载与编译、管理员密码设置、Apache安装与配置、Nagios插件安装、启动服务、访问Web界面以及主机和服务的配置等步骤。

二、安装步骤
1. 安装依赖项
yum install y httpd php gcc glibc glibccommon gd gddevel make netsnmp
上述命令将安装Nagios所需的基本依赖包,包括Apache、PHP和NetSNMP等。
2. 创建Nagios用户和组
useradd nagios groupadd nagcmd usermod a G nagcmd nagios
上述命令创建一个名为nagios的用户和一个名为nagcmd的用户组,并将nagios用户添加到nagcmd组中。
3. 下载和编译Nagios
cd /tmp curl L O https://github.com/NagiosEnterprises/nagioscore/archive/nagios4.4.6.tar.gz tar xvf nagios4.4.6.tar.gz cd nagioscorenagios4.4.6/ ./configure withcommandgroup=nagcmd make all make install make installinit make installconfig make installcommandmode make installwebconf
上述命令下载Nagios源码并进行编译,指定命令组为nagcmd,编译完成后,执行安装命令并初始化Nagios配置。

4. 设置Nagios管理员账户密码
htpasswd c /usr/local/nagios/etc/htpasswd.users nagiosadmin
上述命令创建Nagios管理员账户并设置密码。
5. 安装Apache
yum install y httpd systemctl start httpd systemctl enable httpd
上述命令安装Apache服务并启动,同时设置为开机自启。
6. 配置Nagios插件
yum install y gcc glibc glibccommon make gettext automake autoconf wget openssldevel netsnmp netsnmputils epelrelease perlNetSNMP wget nocheckcertificate O /tmp/nagiosplugins.tar.gz https://github.com/nagiosplugins/nagiosplugins/archive/release2.2.1.tar.gz cd /tmp tar xf nagiosplugins.tar.gz cd nagiospluginsrelease2.2.1/ ./tools/setup ./configure make sudo make install
上述命令安装Nagios插件所需的依赖包,下载并编译插件,最后进行安装。

7. 启动Nagios服务
systemctl start nagios systemctl enable nagios
上述命令启动Nagios服务并设置为开机自启。
8. 访问Web界面
打开浏览器,输入http://yourdomainorip/nagios,使用之前创建的管理员账户登录。
9. 配置主机和服务
在Nagios Web界面中,导航到“配置”>“添加主机”或“添加服务”,根据需要配置监控目标。
三、检查配置的正确性
在Nagios配置文件目录(通常位于/usr/local/nagios/etc)下,可以使用以下命令检查配置文件语法是否正确:
nagios v /usr/local/nagios/etc/nagios.cfg
如果输出中没有错误信息,则表示配置文件正确。
四、FAQs
Q1: Nagios无法启动怎么办?
A1: 如果Nagios无法启动,首先检查日志文件(通常位于/var/log/nagios/nagios.log),查找错误信息,常见的问题包括配置文件错误、端口被占用等,根据错误信息进行相应的排查和修复。
Q2: 如何更改Nagios管理员密码?
A2: 更改Nagios管理员密码需要编辑密码文件(通常位于/usr/local/nagios/etc/htpasswd.users),使用htpasswd命令重新生成密码条目。
htpasswd b /usr/local/nagios/etc/htpasswd.users nagiosadmin newpassword
上述命令将为nagiosadmin用户设置新的密码newpassword,注意替换nagiosadmin和newpassword为实际的用户名和密码。
