sobota, 5 stycznia 2013

RSYSLOG - Analizowanie Logów Systemowych

Instalacja RSYSLOG wymaga zainstalowania Apache'a oraz MySQL. Po skonfigurowaniu systemu będziemy mogli przeglądać logi poprzez przeglądarkę. Musimy ustawić nazwę naszej maszyny na, np.rsyslog.domena.com oraz poprzez ifconfig nasze IP. Instalujemy czystą wersję Debiana, z podstawowymi narzędziami bez GUI.



Możemy użyć OpenVZ, aby uruchomić wirtualną maszynę w środowisku odseparowanym od głównego systemu. Opis w linku.


1) Instalujemy wymagane paczki do systemu:

apt-get install rsyslog rsyslog-mysql unzip zip binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ mysql-server mysql-client libmysqlclient15-dev apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libdb4.6-dev libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

W trakcie instalacji zostaniemy poproszeni o hasło do bazy dla root'a.


Restartujemy nasze usługi:



/etc/init.d/rsyslog restart
/etc/init.d/mysql restart
/etc/init.d/apache2 restart

Sprawdźmy czy baza oraz serwer www nasłuchuje na odpowiednich portach 3306 oraz 80, poleceniem:

netstat -tapn 

Tworzymy bazę dla naszego RSYSLOG'a:


mysqladmin -u root -p create rsyslog


Tworzymy użytkownika dla RSYSLOG'a:


mysql -u root -p


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


FLUSH PRIVILEGES;


quit



Konfigurujemy syslog'a, aby nasłuchiwał na porcie TCP 514:


nano /etc/rsyslog.conf



Do niego dodajemy:



$ModLoad MySQL

*.*       >127.0.0.1,rsyslog,rsyslog,naszehaslodosysloga



Nasz config powinien wyglądać mniej więcej tak:



# /etc/rsyslog.conf Configuration file for rsyslog v3.
#
# For more information see
# /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
$ModLoad MySQL
*.* >127.0.0.1,rsyslog,rsyslog,ENTER-YOUR-NEW-RSYSLOG-PASSWORD-HERE
#################
#### MODULES ####
#################
$ModLoad imuxsock # provides support for local system logging
$ModLoad imklog # provides kernel logging support (previously done by rklogd)
#$ModLoad immark # provides --MARK-- message capability
# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514
# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
###########################
#### GLOBAL DIRECTIVES ####
###########################


Robimy restart:

/etc/init.d/rsyslog restart



Teraz powinniśmy widzieć że RSYSLOG  nasłuchuje na porcie 514: 

netstat -tapn







2) Instalujemy LogAnalyzer'a:



cd /tmp


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


tar xvzf loganalyzer-3.4.1.tar.gz


mv loganalyzer-3.4.1/ /var/www/


cd /var/www





Nadajemy odpowiednie prawa user'a dla Apache'a:

chown www-data:www-data * . -Rf



Porządkujemy katalgoi przechowujące logi:




mv loganalyzer-3.4.1/ loganalyzer

cd contrib/

cp * ./../src/

cd ./../src/

sh ./configure.sh


Samą instalację przeprowadzamy przez przeglądarkę, dlatego jeżeli robimy to przez wirtualke dobrze wyłączyć NAT inaczej bez odpowiedniego puszczenia dostępu nie zobaczymy nic:) Ja ustawiam na Virtual Host Only (Oracle Virtual BOX).

http://naszadresIP/loganalyzer/src/install.php

Oczywiście Windows'owe Next, Next itd.







3) Konfiguracja klienta RSYSLOG'a :


nano /etc/rsyslog.conf



Dodajemy przed GLOBAL DIRECTIVES:



$WorkDirectory /rsyslog/work # default location for work (spool) files
$ActionQueueType LinkedList # use asynchronous processing
$ActionQueueFileName srvrfwd # set file name, also enables disk mode
$ActionResumeRetryCount -1 # infinite retries on insert failure
$ActionQueueSaveOnShutdown on # save in-memory data if rsyslog shuts down
*.* @@IP_RSYSLOG_Serwer

Restart usługi:

/etc/init.d/rsyslog restart 

Sprawdzamy czy z drugiego IP nawiązano połączenie z serwerem RSYSLOG'a:


netstat -tapn




Brak komentarzy:

Prześlij komentarz