Keskse logilahenduse rakendamine Rsyslog näitel

From ICO wiki
Revision as of 14:30, 19 December 2013 by Kkuurman (talk | contribs)
Jump to navigationJump to search

Eesmärk

Labor 2 eesmärgiks on keskse logilahenduse rakendamine virtualiseeritud testkeskkonnas.

Ülesande teostamisel kasutatakse Oracle VirtualBox versioon 4.2.10 virtualiseerimistarkvara.

Eeldused

Testkeskkonnas on virtuaalmasinate võrguparameetrid eelnevalt seadistatud.

Võrguparameetrite seadistamiseks loe juhendit Ubuntu server võrgu seadistamine ja VirtualBoxi võrgud.

Nõuded

Põhilised nõuded:

Töötab Linux/Unix keskkonnas;

Võimaldab TCP protokolli kasutada;

Avatud lähtekoodiga või vaba tarkvara;

Logide jälgimine veebikeskkonnas;

Tarkvara valik

Rsyslog

LogAnalyzer

Virtuaalmasinate seadistused

Selle konkreetse lahenduskäigu puhul on kasutusel kolm virtuaalmasinat:

1) Puppet server: Ubuntu Server 64bit versioon 12.04.3 LTS.

puppet.planet.zz 192.168.56.200

2) Keskne logiserver: Ubuntu Server 64bit versioon 12.04.3 LTS.

rsyslog.planet.zz 192.168.56.201

3) Klient: Ubuntu Desktop 64bit versioon 13.

client.planet.zz 192.168.56.101

Tarkvara kirjeldus

Rsyslog versioon - logiserver, mis saadab ja võtab vastu klientide poolt saadetud logid

Apache2 versioon - veebiserver, mis seadistatakse hilisemaks logide veebipõhiseks vaatamiseks

MySQL server versioon 5.5 - andmebaasiserver, kuhu salvestatakse logid nende hilisemaks analüüsiks

LogAnalyzer versioon 3.6.5 - veebipõhine kasutajaliides logide otsimiseks ja analüüsimiseks reaalajas

Tarkvara paigaldamine

NB! Kõik juhendis kirjutatud käsud käivitatakse root kasutaja õigustes.

Paigaldame keskses logiserveris (rsyslog.planet.zz) vajalikud pakid.

Esmalt uuendame tarkvararepositooriumit:

apt-get update && apt-get upgrade -y

Paigaldame rsyslog'i:

apt-get install rsyslog

Paigaldame apache veebiserveri:

apt-get install apache2

Paigaldame MySQL andmebaasiserveri:

(MySQL-serveri paigaldamisel tuleb määrata root kasutaja parool)

apt-get install mysql-server

Paigaldame php5 ja vajalikud moodulid:

apt-get install php5 php5-gd libapache2-mod-php5 php5-mysql

Taaskäivitame teenused:

/etc/init.d/rsyslog restart


/etc/init.d/mysql restart


/etc/init.d/apache2 restart

Kontrollime, kas veebiserver ja andmebaasiserver kasutavad õigeid TCP/IP porte (80, 3306):

netstat -tapn



Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      18595/mysqld    

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      18766/apache2 

Loome MySQL-serverisse andmebaasi nimega "rsyslog". Sinna hakkab toimuma logide

salvestamine:

mysqladmin -u root -p create rsyslog

Käivitame MySQL käsurea ning loome andmebaasi "rsyslog" uue kasutaja.

Siseneme andmebaasi:

mysql -u root -p

Loome andmebaasi "rsyslog" kasutaja nimega rsyslog:

NB: 'sinu_uus_rsyslogi_parool' asemele kirjuta meelepärane parool.

GRANT SELECT, INSERT, UPDATE, DELETE ON rsyslog.* TO 'rsyslog'@'localhost' IDENTIFIED BY 'sinu_uus_rsyslogi_parool';


FLUSH PRIVILEGES;

MySQL serverist väljumiseks:

quit

Seadistame keskse logiserveri kasutama porti 10514.

Avame nano või mõne muu tekstiredaktoriga rsyslog.conf faili:

nano /etc/rsyslog.conf

Lisame rsyslog.conf faili lõppu järgnevad read:

$ModLoad MySQL
*.* >127.0.0.1,rsyslog,rsyslog,sinu_uus_rsyslogi_parool

Eemaldame kommentaari sümboli ‘#’ järgnevatelt ridadelt:

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 10514

Seejärel taaskäivitame rsyslog teenuse:

/etc/init.d/rsyslog restart

Kontrollime, kas serverid kuulavad õigeid TCP/IP porte (80, 10514 & 3306):

netstat -tapn



Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      14689/mysqld    

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      14881/apache2   

tcp        0      0 0.0.0.0:10514           0.0.0.0:*               LISTEN      14923/rsyslogd  

tcp6       0      0 :::10514                :::*                    LISTEN      14923/rsyslogd 

Laeme alla LogAnalyzer-i ja konfigureerime Apache veebiserveri logide näitamiseks.

wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.5.tar.gz

Pakime lahti alla laetud tarkvara:

tar xvzf loganalyzer-3.6.5.tar.gz

Kopeerime loganalyzer'i /var/www/ kausta:

mv loganalyzer-3.6.5/ /var/www/

Liigume /var/www kausta:

 cd /var/www

Muudame /var/www/ kataloogis olevate failide ja kaustade omanikku ja gruppi:

chown www-data:www-data .* -R

Loome uue kausta:

mkdir /var/www/loganalyzer

Kopeerime /src/ kaustast kõik failid /var/www/loganalyzer kausta:

cp loganalyzer-3.6.5/src/* /var/www/loganalyzer -R

Kopeerime /contrib/ kaustast kõik skriptifailid /var/www/loganalyzer kausta:

cp loganalyzer-3.6.5/contrib/*.sh /var/www/loganalyzer -R

Anname skriptidele käivitusõigused:

chmod +x /var/www/loganalyzer/*.sh

Liigume kausta:

cd loganalyzer/

Käivitame skripti:

sh ./configure.sh

Anname Apachele õigused kasutada syslogi:

usermod -G adm www-data

LogAnalyzeri paigaldamine jätkub veebibrauseris.

Mine veebibrauseriga aadressile: http://192.168.56.201/loganalyzer/install.php

Kui tuleb ette paigaldamise juhend, siis võib jätkata paigaldamist vaikesätetega.

Nüüd peaks rsyslogi server töötama koos LogAnalyzeriga.

Rsyslog klientide seadistamine

NB! Kõik juhendis kirjutatud käsud käivitatakse root kasutaja õigustes.

Paigaldame klientidele (client.planet.zz ja puppet.planet.zz) rsyslog paki:

Esmalt uuendame tarkvararepositooriumit:

apt-get update && apt-get upgrade -y

Paigaldame rsyslog'i:

apt-get install rsyslog

Avame nano või mõne muu tekstiredaktoriga rsyslog.conf faili:

nano /etc/rsyslog.conf

Lisame rsyslog.conf faili lõppu järgnevad read:

*.* @@192.168.56.201:10514


Taaskäivita rsyslogi teenus:

/etc/init.d/rsyslog restart

Kontrolli, kas server kuulab õiget TCP IP porti (10514).

netstat -tapn


Proto Recv-Q Send-Q Local Address           Foreign Address              State        PID/Program name   
tcp        0      0 192.168.56.101:49155    192.168.56.201:10514  ESTABLISHED  9180/rsyslogd   

Kasutatud kirjandus

http://www.howtoforge.com/centralized-rsyslog-server-monitoring
http://www.slsmk.com/setup-syslog-with-loganalyzer-on-ubuntu-server/
http://badsimplicity.com/rsyslog-not-listening-tcp-on-port-514/
http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf