苹果OS X
增强安全性的Linux
SELinux未在Apple OS X中部署,因此不是问题。
先决条件
首先,确保已安装Xcode。如果尚未安装,请访问App Store并安装Xcode(3.8GB下载)。
然后,您需要下载并安装MacPorts,有关此操作的说明可在此处找到:
https://www.macports.org/install.php
完成此操作后,请在终端会话中执行以下步骤:
sudo xcodebuild -license View the agreement and then type agree sudo xcode-select --install
Mac显示屏上将提示您安装组件,然后单击“安装”。
点击同意
等待下载并安装它
继续进行终端会话(您可能需要关闭并打开终端会话):
sudo /opt/local/bin/port install zlib libpng jpeg gd2 apache2 php70 php70-apache2handler
下载源
cd /tmp curl -L -o nagioscore.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.5.tar.gz tar xzf nagioscore.tar.gz
编译
cd /tmp/nagioscore-nagios-4.4.5/ sudo ./configure --with-httpd-conf=/opt/local/apache2/conf/extra --with-gd-lib=/opt/local/lib --with-gd-inc=/opt/local/include sudo make all
创建用户和组
当前,Nagios Core没有用于创建nagios用户和组的内置脚本。但是NRPE v3确实有此脚本,因此我们将下载并运行它,这使事情变得容易。
sudo make install-groups-users sudo dseditgroup -o edit -a _www -t user nagios
安装二进制文件
此步骤将安装二进制文件,CGI和HTML文件。
sudo make install
安装服务/守护程序
这会将脚本安装在/etc/rc.d/init.d/nagios中,这不是应在OS X中运行的正确方式,但是此版本的Nagios Core中不存在本机OS X启动脚本。
sudo make install-daemoninit
您将使用“全局守护程序”属性列表将其配置为在启动时启动。
使用以下命令打开vi文本编辑器:
sudo vi /Library/LaunchDaemons/org.nagios.nagios.plist
这将创建一个新文件。
按键盘上的i进入插入模式。
将以下内容粘贴到vi编辑器中:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple/DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>org.nagios.nagios</string> <key>UserName</key> <string>nagios</string> <key>GroupName</key> <string>nagios</string> <key>Program</key> <string>/etc/rc.d/init.d/nagios</string> <key>ProgramArguments</key> <array> <string>nagios</string> <string>start</string> </array> <key>KeepAlive</key> <dict> <key>SuccessfulExit</key> <false/> <key>NetworkState</key> <true/> </dict> <key>RunAtLoad</key> <true/> <key>ProcessType</key> <string>Background</string> </dict> </plist>
按逃生键盘上退出插入模式。
在上键入:wq,然后按Enter。
该文件已保存,Nagios将在下次启动时自动启动。
有关启动和停止服务的信息将在后面进一步说明。
安装命令模式
这将安装并配置外部命令文件。
sudo make install-commandmode
安装配置文件
这将安装* SAMPLE *配置文件。这些是必需的,因为Nagios需要一些配置文件才能启动。
sudo make install-config
安装Apache配置文件
这将安装Apache Web服务器配置文件。
sudo make install-webconf
除了安装Apache Web服务器配置文件外,还需要对Apache配置文件httpd.conf进行其他更改才能启用模块。
下面是进行所有这些更改的命令,但首先是要进行的更改的列表。
更改此配置:
<IfModule dir_module> DirectoryIndex index.html </IfModule>
改为:
<IfModule dir_module> DirectoryIndex index.php index.html index.htm AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phps </IfModule>
将这些行添加到文件末尾:
Include conf/extra/nagios.conf Include conf/extra/mod_php70.conf
执行以下命令进行上述更改:
sudo cp /opt/local/etc/php70/php.ini-production /opt/local/etc/php70/php.ini cd /opt/local/apache2/modules/ sudo /opt/local/apache2/bin/apxs -a -e -n php7 mod_php70.so printf '\nInclude conf/extra/nagios.conf\n' | sudo tee -a /opt/local/apache2/conf/httpd.conf printf '\nInclude conf/extra/mod_php70.conf\n' | sudo tee -a /opt/local/apache2/conf/httpd.conf sudo sed -i '' 's/DirectoryIndex index.html/DirectoryIndex index.php index.html index.htm AddType application\/x-httpd-php .phpAddType application\/x-httpd-php-source .phps/g' /opt/local/apache2/conf/httpd.conf
配置防火墙
默认情况下,OS X中的防火墙是关闭的。请参阅Apple文档以获取有关如何启用或配置TCP 端口80入站的信息。
创建nagiosadmin用户帐户
您需要创建一个Apache用户帐户才能登录Nagios。
以下命令将创建一个名为nagiosadmin的用户帐户,并提示您提供该帐户的密码。
sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
将来添加其他用户时,您需要从上述命令中删除-c,否则它将替换现有的nagiosadmin用户(以及您可能添加的任何其他用户)。
启动Apache Web服务器
sudo /opt/local/bin/port load apache2
启动服务/守护程序
此命令启动Nagios Core。
sudo /etc/rc.d/init.d/nagios start
测试Nagios
Nagios现在正在运行,要确认这一点,您需要登录Nagios Web界面。
将您的Web浏览器指向Nagios Core服务器的IP地址或FQDN ,例如:
http://10.25.5.143/nagios
http://core-013.domain.local/nagios
系统将提示您输入用户名和密码。用户名是nagiosadmin(您在上一步中创建),密码是您之前提供的密码。
登录后,将显示Nagios界面。恭喜,您已经安装了Nagios Core。
可是等等 …
当前,您仅安装了Nagios Core引擎。您会在host和服务下注意到一些错误,具体如下:
(No output on stdout) stderr: execvp(/usr/local/nagios/libexec/check_load, ...) failed. errno is 2: No such file or directory
一旦安装了Nagios插件,这些错误将得到解决,这将在下一步中介绍。
安装Nagios插件
Nagios Core需要插件才能正常运行。这些步骤将安装可通过MacPorts使用的Nagios插件。Nagios插件软件包的将来版本将被更新以支持OS X,直到那时MacPorts可用的版本就可以了。
这些文件已安装到/ opt / local / libexec / nagios /中,因此还需要更新/ usr / local / nagios / etc / resource.cfg文件,并重新启动Nagios(在以下步骤中介绍)。
sudo /opt/local/bin/port install nagios-plugins sudo sed -i '' 's/\/usr\/local\/nagios\/libexec/\/opt\/local\/libexec\/nagios/g' /usr/local/nagios/etc/resource.cfg sudo /etc/rc.d/init.d/nagios stop sudo /etc/rc.d/init.d/nagios start
测试插件
将您的Web浏览器指向Nagios Core服务器的IP地址或FQDN ,例如:
http://10.25.5.143/nagios
http://core-013.domain.local/nagios
转到host或服务对象,然后在“命令”菜单下“重新计划下一个检查”。您以前看到的错误现在应该消失,并且正确的输出将显示在屏幕上。
服务/守护程序命令
这些命令用于启动/停止/重新启动/状态Nagios。
sudo /etc/rc.d/init.d/nagios start sudo /etc/rc.d/init.d/nagios stop sudo /etc/rc.d/init.d/nagios restart sudo /etc/rc.d/init.d/nagios status