SUSE SLES | openSUSE Leap
增强安全性的Linux
本指南基于SELinux被禁用或处于许可模式。默认情况下,SUSE上未启用SELinux 。如果要查看是否已启用,请运行以下命令:
ls -la /etc/selinux/config
如果该文件不存在,则不会启用SELinux。
先决条件
执行以下步骤以安装必备软件包。
===== SUSE SLES 11.3 =====
cd /tmp wget 'https://nu.novell.com/repo/$RCE/SLE11-SDK-SP3-Pool/sle-11-x86_64/rpm/x86_64/sle-sdk-release-11.3-1.69.x86_64.rpm' wget 'https://nu.novell.com/repo/$RCE/SLE11-SDK-SP3-Pool/sle-11-x86_64/rpm/x86_64/sle-sdk-release-SDK-11.3-1.69.x86_64.rpm' sudo rpm -ivh sle-sdk-release-* sudo suse_register sudo zypper --non-interactive install autoconf gcc glibc make wget unzip apache2 apache2-utils php53 apache2-mod_php53 gd gd-devel
===== SUSE SLES 11.4 =====
cd /tmp wget 'https://nu.novell.com/repo/$RCE/SLE11-SDK-SP4-Pool/sle-11-x86_64/rpm/x86_64/sle-sdk-release-11.4-1.55.x86_64.rpm' wget 'https://nu.novell.com/repo/$RCE/SLE11-SDK-SP4-Pool/sle-11-x86_64/rpm/x86_64/sle-sdk-release-SDK-11.4-1.55.x86_64.rpm' sudo rpm -ivh sle-sdk-release-* sudo suse_register sudo zypper --non-interactive install autoconf gcc glibc make wget unzip apache2 apache2-utils php53 apache2-mod_php53 gd gd-devel
===== SUSE SLES 12 =====
sudo SUSEConnect -p sle-sdk/12/x86_64 sudo SUSEConnect -p sle-module-web-scripting/12/x86_64 sudo zypper --non-interactive install autoconf gcc glibc make wget unzip apache2 apache2-utils php5 apache2-mod_php5 gd gd-devel
===== SUSE SLES 12.1 =====
sudo SUSEConnect -p sle-sdk/12.1/x86_64 sudo SUSEConnect -p sle-module-web-scripting/12/x86_64 sudo zypper --non-interactive install autoconf gcc glibc make wget unzip apache2 apache2-utils php5 apache2-mod_php5 gd gd-devel
===== SUSE SLES 12.2 =====
sudo SUSEConnect -p sle-sdk/12.2/x86_64 sudo SUSEConnect -p sle-module-web-scripting/12/x86_64 sudo zypper --non-interactive install autoconf gcc glibc make wget unzip apache2 apache2-utils php5 apache2-mod_php5 gd gd-devel
===== SUSE SLES 12.3 =====
sudo SUSEConnect -p sle-sdk/12.3/x86_64 sudo SUSEConnect -p sle-module-web-scripting/12/x86_64 sudo zypper --non-interactive install autoconf gcc glibc make wget unzip apache2 apache2-utils php5 apache2-mod_php5 gd gd-devel
===== openSUSE Leap 42.x =====
sudo zypper --non-interactive install autoconf gcc glibc make wget unzip apache2 apache2-utils php5 apache2-mod_php5 gd gd-devel
===== openSUSE Leap 15.x =====
sudo zypper --non-interactive install autoconf gcc glibc make wget unzip apache2 apache2-utils php7 apache2-mod_php7 gd gd-devel
下载源
cd /tmp wget -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=/etc/apache2/vhosts.d sudo make all
创建用户和组
这将创建nagios用户和组。的apache的用户也被添加到所述的nagios组。
===== SUSE SLES 11.x =====
sudo make install-groups-users sudo /usr/sbin/usermod -A nagios wwwrun
===== SUSE SLES 12.x | openSUSE Leap 42.x / 15.x =====
sudo make install-groups-users sudo /usr/sbin/usermod -a -G nagios wwwrun
安装二进制文件
此步骤将安装二进制文件,CGI和HTML文件。
sudo make install
安装服务/守护程序
这将安装服务或守护程序文件,还将它们配置为在引导时启动。
sudo make install-daemoninit
有关启动和停止服务的信息将在后面进一步说明。
安装命令模式
这将安装并配置外部命令文件。
sudo make install-commandmode
安装配置文件
这将安装* SAMPLE *配置文件。这些是必需的,因为Nagios需要一些配置文件才能启动。
sudo make install
安装Apache配置文件
这将安装Apache Web服务器配置文件。如果需要,还配置Apache设置。
===== SUSE SLES 11.x =====
sudo make install-webconf sudo /usr/sbin/a2enmod rewrite sudo /usr/sbin/a2enmod cgi sudo /usr/sbin/a2enmod version sudo /usr/sbin/a2enmod php5 sudo /sbin/chkconfig --set apache2 on
===== SUSE SLES 12.x | openSUSE Leap 42.x =====
sudo make install-webconf sudo /usr/sbin/a2enmod rewrite sudo /usr/sbin/a2enmod cgi sudo /usr/sbin/a2enmod version sudo /usr/sbin/a2enmod php5 sudo systemctl enable apache2.service
===== openSUSE Leap 15.x =====
sudo make install-webconf sudo /usr/sbin/a2enmod rewrite sudo /usr/sbin/a2enmod cgi sudo /usr/sbin/a2enmod version sudo /usr/sbin/a2enmod php7 sudo systemctl enable apache2.service
配置防火墙
您需要允许本地防火墙上的端口80入站流量,以便可以访问Nagios Core Web界面。
===== SUSE SLES 11.x =====
sudo sed -i '/FW_SERVICES_EXT_TCP=/s/\"$/\ 80\"/' /etc/sysconfig/SuSEfirewall2 sudo /sbin/service SuSEfirewall2_init restart sudo /sbin/service SuSEfirewall2_setup restart
===== SUSE SLES 12.x =====
sudo /usr/sbin/SuSEfirewall2 open EXT TCP 80 sudo systemctl restart SuSEfirewall2
===== openSUSE Leap 42.x =====
安装Apache后,将启用端口80 ,无需执行任何操作。
===== openSUSE Leap 15.x =====
sudo firewall-cmd --zone=public --add-port=80/tcp sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
创建nagiosadmin用户帐户
您需要创建一个Apache用户帐户才能登录Nagios。
以下命令将创建一个名为nagiosadmin的用户帐户,并提示您提供该帐户的密码。
sudo htpasswd2 -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
将来添加其他用户时,您需要从上述命令中删除-c,否则它将替换现有的nagiosadmin用户(以及您可能添加的任何其他用户)。
启动Apache Web服务器
===== SUSE SLES 11.x =====
sudo /sbin/service apache2 start
===== SUSE SLES 12.x | openSUSE Leap 42.x / 15.x =====
sudo systemctl start apache2.service
启动服务/守护程序
此命令启动Nagios Core。
===== SUSE SLES 11.x =====
sudo /sbin/service nagios start
===== SUSE SLES 12.x | openSUSE Leap 42.x / 15.x =====
sudo systemctl start nagios.service
测试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需要插件才能正常运行。以下步骤将引导您完成安装Nagios插件的过程。
这些步骤将安装nagios-plugins 2.2.1。将来会提供较新的版本,您可以在以下安装步骤中使用它们。请查看GitHub上的发布页面以获取所有可用版本。
请注意,以下步骤将安装Nagios插件包中随附的大多数插件。但是,有些插件需要其他库,但这些说明中未包含这些库。请参阅以下知识库文章,以获取详细的安装说明:
先决条件
确保已安装以下软件包。
===== SUSE SLES 11.x / 12.x | openSUSE Leap 42.x =====
sudo zypper --non-interactive install autoconf gcc glibc libmcrypt-devel make libopenssl-devel wget gettext gettext-runtime automake net-snmp perl-Net-SNMP
===== openSUSE Leap 15.x =====
sudo zypper --non-interactive install autoconf gcc glibc libgcrypt-devel make libopenssl-devel wget gettext gettext-runtime automake net-snmp perl-Net-SNMP
下载源
cd /tmp 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 /tmp/nagios-plugins-release-2.2.1/ sudo ./tools/setup sudo ./configure sudo make sudo make install
测试插件
将您的Web浏览器指向Nagios Core服务器的IP地址或FQDN ,例如:
http://10.25.5.143/nagios
http://core-013.domain.local/nagios
转到host或服务对象,然后在“命令”菜单下“重新计划下一个检查”。您以前看到的错误现在应该消失,并且正确的输出将显示在屏幕上。
服务/守护程序命令
不同的Linux发行版具有不同的启动/停止/重新启动/状态Nagios的方法。
===== SUSE SLES 11.x =====
sudo /sbin/service nagios start sudo /sbin/service nagios stop sudo /sbin/service nagios restart sudo /sbin/service nagios status
===== SUSE SLES 12.x | openSUSE Leap 42.x / 15.x =====
sudo systemctl start nagios.service sudo systemctl stop nagios.service sudo systemctl restart nagios.service sudo systemctl status nagios.service