Jälgige serveri ressursse Linuxis Collectd-webi ja Apache CGI-ga


Selles õpetuses arutatakse, kuidas saate Collectd-web-liidest, mis on Collectdi deemoni esiotsa veebiseire tööriist, koos Apache CGI-liidesega installida ja käivitada, et toota Linuxi kastide jälgimiseks graafilisi html-väljundeid.

Artikli lõpus tutvustame ka seda, kuidas saate Collectdi veebiliidest kaitsta .hpasswd Apache'i autentimismehhanismi abil.

Selle artikli nõue on, et teie Linuxi süsteemis peavad olema installitud Collectd ja Collectd-Web. Nende pakettide installimiseks peate järgima selle sarja eelmise artikli samme nr 1 ja 2 aadressil:

  1. Installige Linuxi Collectd ja Collectd-Web

Järgige ainult ülaltoodud lingi järgmisi kahte sammu:

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

Kui need kaks vajalikku asja on edukalt lõpule viidud, võite jätkata selles artiklis täiendavaid juhiseid, et seadistada Collectd-web Apache CGI-ga.

1. samm: installige Apache veebiserver

1. Eeldades, et olete juba oma süsteemi Apache veebiserveri installinud, võite installida järgmise käsu abil vastavalt oma Linuxi jaotusele.

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

2. Pärast Apache'i installimist muutke kataloog oma veebiserveri vaikedokumendijuureks (mis asub/var/www/html/või/var/www süsteemitee all ja kloonige projekt Collectd-web Github, väljastades järgmised käsud:

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

Tehke järgmine käsk Collectd-web skript käivitatavaks, väljastades järgmise käsu:

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

2. samm: lubage vaikimisserveris Apache CGI (.cgi skriptid)

3. Selleks, et Apache saaks käivitada vaikimisi hosti HTML Collectd-web cgi-bin kataloogis asuvaid CGI-skripte, peate Bashi skriptide jaoks (.cgi laiendiga) lubama selgesõnaliselt Apache CGI-liidese, muutes saitidel saadaolevat vaikimisserverit ja lisades allpool toodud lausete ploki.

Esmalt avage Apache vaikimisi konfiguratsioonifail nano-redaktoriga redigeerimiseks:

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

Kui fail on redigeerimiseks avatud, lisage dokumendijuure direktiivi alla järgmine direktiiviplokk, nagu on näidatud alloleval pildil:

<Directory /var/www/html/collectd-web/cgi-bin>
                Options Indexes ExecCGI
                AllowOverride All
                AddHandler cgi-script .cgi
                Require all granted
</Directory>

Kui olete faili redigeerimise lõpetanud, sulgege see klahvikombinatsiooniga CTRL + o ja väljuge nano-redaktorist (CTRL + x), lubage seejärel Apache CGI moodul ja taaskäivitage server, et rakendada kõik seni tehtud muudatused, väljastades järgmised käsud:

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

4. Apache CGI-liidese lubamiseks CentOS/RHEL-i jaoks avage httpd.conf Apache'i konfiguratsioonifail ja lisage faili lõppu järgmised read:

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

Lisage järgmine katkend faili httpd.conf.

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

Muudatuste rakendamiseks taaskäivitage httpdemon, väljastades järgmise käsu:

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

3. samm: sirvige Collectd-webi liidest

5. Collectd-web-liidese külastamiseks ja oma masina seni kogutud statistika visualiseerimiseks avage brauser ja navigeerige HTTP-protokolli abil oma masina IP-aadressi/collectd-web/URI asukohta.

http://192.168.1.211/collect-web/

4. samm: kaitsta parooliga Collectd-web URL Apache'i autentimise abil

6. Juhul, kui soovite piirata juurdepääsu Collectd-veebiliidesele, kaitstes seda Apache Authentication-mehhanismi (.htpasswd) abil, mis nõuab külastajatelt veebiressursile juurdepääsu saamiseks kasutajanime ja parooli sisestamist.

Selleks peate installima paketi apache2-utils ja looma kohaliku autentimise jaoks mandaatide kogumi. Selle eesmärgi saavutamiseks väljastage apache2-utils paketi installimiseks kõigepealt järgmine käsk:

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

7. Seejärel genereerige kasutajanimi ja parool, mis salvestatakse varjatud kohalikku .htpass-faili, mis asub Apache vaikimisserveri Collectd-veebitee all, väljastades järgmise käsu:

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

Püüdke seda faili kaitsta, määrates järgmised õigused:

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

8. Järgmises etapis avage pärast .htpass-faili loomist Apache'i vaikimisseade redigeerimiseks ja käskige serveril kasutada htpasswd-serveripoolset autentimist, lisades järgmise direktiiviploki, nagu on näidatud allpool oleval ekraanipildil:

<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>

9. Viimane samm muudatuste kajastamiseks on Apache serveri taaskäivitamine, väljastades alloleva käsu, ja külastage Coollectd-veebi URL-i lehte, nagu eespool kirjeldatud.

Veebilehele peaks ilmuma hüpikaken, mis taotleb teie autentimistunnuseid. Kasutage Collectdi veebiliidesele juurdepääsu saamiseks varem loodud kasutajanime ja parooli.

# 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