在Linux中使用Collectd-web和Apache CGI监视服务器资源

本教程将展示如何安装和运行Collectd-web界面,这是一个用于Collectd守护程序的前端Web监视工具,与Apache

本教程将讨论如何安装和运行Collectd的Web界面,这是Collectd守护前端网络监控工具,在与Apache CGI接口一起为了为了监测Linux系统产生的图形HTML输出。

监视Linux服务器资源

监视Linux服务器资源

在文章的最后,我们将还,目前如何使用Apache的.hpasswd认证机制保护Collectd的Web界面。

要求

本文的要求是,你必须有你的Linux系统上安装CollectdCollectd的Web。 要安装这些软件包,你必须按照步骤#1#2本系列在以前的文章:

  1. 在Linux中安装Collectd和Collectd-Web

只从以上链接按照以下两个步骤:

Step 1: Install Collectd Service 
Step 2: Install Collectd-Web and Dependencies 

一旦这两个东西需要成功完成,您可以继续在这篇文章中进一步说明配置Collectd的WebApache CGI。

第1步:安装Apache Web服务器

1.假设你已经安装的Apache Web服务器在系统上,如果不是你可以安装使用根据您的Linux发行版下面的命令。

# apt-get install apache2	[On Debian based Systems]
# yum install httpd		[On RedHat based Systems]

安装了Apache 2后,将目录更改为默认的Web服务器的根目录(位于在/ var / www / html等// var / WWW系统路径并通过发出以下命令克隆Collectd的Web Github上的项目:

# cd /var/www/html
# git clone https://github.com/httpdss/collectd-web.git

此外,通过发出以下命令进行以下Collectd-web脚本可执行文件:

# chmod +x /var/www/html/collectd-web/cgi-bin/graphdefs.cgi

第2步:为默认主机启用Apache CGI(.cgi脚本)

3.为了为Apache通过改变站点可用默认主机运行位于默认主机HTML Collectd的Web cgi-bin目录的CGI脚本,你需要明确启用的bash脚本的Apache CGI接口(带有扩展名为.cgi)并添加以下语句块。

在Debian系统

纳米编辑器中编辑首先打开默认的Apache主机配置文件:

# nano /etc/apache2/sites-available/000-default.conf

当打开文件进行编辑添加文档根目录下面的指令以下指令块下面的图像所示:

<Directory /var/www/html/collectd-web/cgi-bin>
Options Indexes ExecCGI
AllowOverride All
AddHandler cgi-script .cgi
Require all granted
</Directory>
在Debian中启用CGI

在Debian中启用CGI

完成编辑该文件后,用CTRL关闭+ O退出纳米编辑器(CTRL + X),然后启用Apache的CGI模块,为了通过发出以下命令来使用迄今为止的所有更改重新启动服务器:

# a2enmod cgi cgid
# service apache2 restart
OR
# systemctl restart apache2.service     [For systemd init scripts]
启用Apache CGI

启用Apache CGI

在RedHat系统上

4.要启用为CentOS / RHEL的,开放的httpd.conf Apache配置文件Apache的CGI接口,并在文件末尾加上下面几行:

# nano /etc/httpd/conf/httpd.conf

添加以下摘录到httpd.conf文件。

ScriptAlias /cgi-bin/ “/var/www/html/collectd-web/cgi-bin"
Options FollowSymLinks ExecCGI
AddHandler cgi-script .cgi .pl

为了通过发出以下命令应用更改,请重新启动httpd后台:

# service httpd restart
OR
# systemctl restart httpd        [For systemd init scripts]

第3步:浏览Collectd-web界面

5.为了参观Collectd的Web界面和你的机器收集到目前为止可视化统计,打开浏览器并使用HTTP协议浏览到您的机器的IP地址/ collectd的Web / URI位置。

http://192.168.1.211/collect-web/
Collectd-Web仪表板

Collectd-Web仪表板

第4步:使用Apache身份验证密码保护Collectd-web URL

6.如果您希望使用Apache的认证机制(htpasswd的 ),这就需要游客才能访问网络资源输入用户名和密码保护它限制访问Collectd的Web界面。

要做到这一点,你需要安装Apache2的-utils软件包并创建一套本地认证证书。 为了实现这个目标,首先发出以下命令来安装Apache2的-utils软件包:

# apt-get install apache2-utils	        [On Debian based Systems]
# yum install httpd-tools		[On RedHat based Systems]

7.接下来,生成一个用户名和将被储存在位于下的Apache默认主机Collectd的web路径通过发出以下命令隐藏本地.htpass文件的密码:

# htpasswd -c /var/www/html/collectd-web/.htpass  your_username

尝试通过分配以下权限来保护此文件:

# chmod 700 /var/www/html/collectd-web/.htpass
# chown www-data /var/www/html/collectd-web/.htpass

8.在下一步,您已经生成.htpass文件,打开Apache的默认主机后进行编辑,并指示服务器加入所示的下面的截图以下指令块使用htpasswd的基本服务器端身份验证:

<Directory /var/www/html/collectd-web >
AuthType Basic
AuthName "Collectd Restricted Page"
AuthBasicProvider file
AuthUserFile /var/www/html/collectd-web/.htpass 
Require valid-user
</Directory>
Apache密码保护目录

Apache密码保护目录

9.以反映更改的最后一步是通过发出以下命令来重新启动Apache服务器,并且如上所述参观Coollectd的Web URL页面。

网页上应显示一个弹出窗口,要求您提供身份验证凭据。 使用先前创建的用户名和密码来访问Collectd Web界面。

# service apache2 restart		[On Debian based Systems]
# service httpd restart			[On RedHat based Systems]
OR
---------------- For systemd init scripts ----------------
# systemctl restart apache2.service		
# systemctl restart http.service  
Apache密码验证

Apache密码验证

Collectd-Web面板

Collectd-Web面板