Centrálny logovací server Linux CentOS využívajúci Rsyslog a LogAnalyzer

LogAnalyzer - Toto je webová aplikácia, ktorá je navrhnutá na prezeranie protokolov systémových udalostí prijatých zo syslogu pomocou webového prehľadávača. rsyslog - táto aplikácia je rozšírením štandardného démona syslogu, ktorého jednou z funkcií je schopnosť ukladať udalosti do databázy MySQL. Pomocou týchto dvoch úžasných programov je možné vytvoriť centralizovaný server, na ktorom budú presmerované všetky udalosti z rôznych zariadení v sieti, ktoré by implementovali funkcie na pohodlnú archiváciu a vyhľadávanie udalostí pre všetky udalosti na všetkých sieťových zariadeniach v obvode siete. V tomto článku popíšem postup inštalácie rsyslogu (zhromažďovanie a agregovanie udalostí syslogu) a LogAnalyzer (na systéme Linux CentOS), ktorý poskytuje užívateľsky prívetivé rozhranie na prezeranie a vyhľadávanie zhromaždených protokolov).

Najprv musíte nainštalovať niekoľko ďalších balíkov RPM. pretože Služby LogAnalyzer, Rsyslog a MySQL budú bežať na rovnakom serveri, pomocou yum je potrebné nainštalovať nasledujúce balíčky:

# yum install httpd php mysql php-mysql mysql-server wget rsyslog rsyslog-mysql

Teraz sa musíte uistiť, že MySQL a Apache sú nakonfigurované na automatické spustenie a potom ich spustite:

# chkconfig mysqld on # chkconfig httpd on # service mysqld start # service httpd start

V predvolenom nastavení má root užívateľ databázy MySQL prázdne heslo, takže konfiguráciu by ste mali zaistiť nastavením nového hesla:

# mysqladmin - u root heslo NewPassword

Ďalej importujte schému databázy rsyslog do MySQL. V závislosti od verzie rsyslog zmeňte cestu k súboru „createDB.sql“.

# mysql - u root - p < /usr/share/doc/rsyslog-mysql-3.22.1/createDB.sql

Osvedčeným postupom je obmedziť prístup aplikácií k databáze, preto vytvoríme špeciálneho používateľa na prístup k databáze rsyslog. Na ďalšie sprísnenie nastavení zabezpečenia môžete vytvoriť samostatné účty pre rsyslog a LogAnalyzer. Používateľovi rsyslog musíte poskytnúť prístup k databáze MySQL iba z rozhrania localhost localhost. Musíme tiež spustiť príkaz MySQL „vyprázdniť privilégiá“, aby sme okamžite uplatnili všetky práva.

# mysql - u root - p mysql mysql> GRANT ALL ON Syslog. * TO rsyslog @ localhost IDENTIFIKOVANÝ 'Heslo'; mysql> práva na vyprázdňovanie; mysql> exit

Teraz je čas prejsť na úpravu súboru /etc/rsyslog.conf. Tu musíme nakonfigurovať posielanie správ syslog do databázy MySQL. Prvý príkaz načíta ovládač MySQL. V druhom riadku hovoríme, že je potrebné akceptovať protokoly akejkoľvek úrovne dôležitosti od „autorizačného príkazu“, ktorý obsahuje najdôležitejšie správy. Ak chcete uložiť všetky systémové správy do MySQL, musíte zadať *. *. Môj databázový server MySQL počúva na adrese 127.0.0.1, Syslog je názov databázy MySQL a nakoniec špecifikujeme meno MySQL a heslo používateľa rsyslog. Tu môžete nakonfigurovať zhromažďovanie a zaznamenávanie akýchkoľvek správ, každá kombinácia musí byť oddelená ";" (napr. poštou. *; autorizáciou. *: ommysql ...).

$ ModLoad ommysql authpriv. *: Ommysql: 127.0.0.1, Syslog, rsyslog, Password

Teraz musíte vypnúť existujúcu službu syslog a povoliť rsyslog:

# chkconfig syslog off # service syslog stop # chkconfig rsyslog on # service rsyslog start

Je čas stiahnuť LogAnalyzer. Najnovšiu verziu nájdete tu: http://loganalyzer.adiscon.com/downloads.

Alebo si stiahnite LogAnalyzer priamo zo servera Linux (musí byť nainštalovaný wget):

# cd ~ # wget http://download.adiscon.com/loganalyzer/loganalyzer-3.0.0.tar.gz

Rozbaľte súbory LogAnalyzer:

# tar zxvf loganalyzer-3.0.0.tar.gz

Teraz musíte skopírovať súbory LogAnalyzer do adresára webového servera Apache (štandardná konfigurácia)..

# mv loganalyzer-3.0.0 / src / var / www / html / loganalyzer # mv loganalyzer-3.0.0 / contrib / * / var / www / html / loganalyzer /

Prejdite do vytvoreného adresára LogAnalyzer, spustite skript configure.sh. Výsledkom bude vytvorenie prázdneho konfiguračného súboru config.php, ktorý bude vyplnený v ďalších krokoch.

# cd / var / www / html / loganalyzer # chmod u + x configure.sh secure.sh # ./configure.sh

Na ďalšiu konfiguráciu LogAnalyzer potrebujeme webový prehliadač. Do svojho obľúbeného internetového prehľadávača zadajte http: // web1 / loganalyzer. (web1 je názov nášho servera web1, loganalyzer je adresár apache)

V strede okna vyberte odkaz „Kliknutím sem nainštalujete“.

ďalšie.

Nakonfigurujte možnosti zobrazenia denníka a znova kliknite na Ďalej.

Teraz musíte zadať adresu servera s databázou, užívateľským menom a heslom, aby ste k nej mali prístup (ak ste nezabudli, databáza sa nazýva rsyslog). Kliknutím na tlačidlo Ďalej uvidíte výsledok kontroly správnosti zadaných údajov a správneho pripojenia.

Nakoniec skončiť.

V prípade, že ste všetko nakonfigurovali správne, pred vami sa zobrazí hlavná stránka LogAnalyzer, na ktorej sa protokoly zobrazia pri prijatí. Môžete skúsiť vygenerovať rôzne systémové udalosti a zistiť, čo sa stane na stránke LogAnalyzer. pretože Nastavil som protokolovanie udalostí typu „autorizátor“, čo znamená, že sa budú zaznamenávať udalosti, ako je vstup / výstup používateľa alebo príkaz používateľa (su).

nastavenie rsyslog pre vzdialený zber protokolov

Ďalším krokom je konfigurácia služby rsyslog na zhromažďovanie udalostí syslog z rôznych sieťových zariadení. Najprv musíte nakonfigurovať firewall iptables, aby ste umožnili prichádzajúcu komunikáciu cez port 514. Pridám dve pravidlá, ktoré povoľujú prenosy TCP aj UDP. V predvolenom nastavení syslog prijíma iba správy odoslané na porte UDP 514, ale do protokolu rsyslog bola pridaná možnosť akceptovať prenos TCP. Do súboru „/ etc / sysconfig / iptables“ pridajte nasledujúce pravidlá:

-RH-Firewall-1-VSTUP - p udp - m udp --dport 514 - j ACCEPT
-RH-Firewall-1-VSTUP - p tcp - m tcp - správa 514 - j AKCEPT

Reštartujte iptables:

# service iptables restart

Teraz musíte nakonfigurovať rsyslog na príjem prichádzajúcich správ syslog. V podsieti 192.168.1.0 nakonfigurujem príjem správ TCP / UDP od localhost a všetkých hostiteľov. Do súboru „/etc/rsyslog.conf“ by sa mali pridať nasledujúce riadky (pred zostavením, kde bola nakonfigurovaná komunikácia s databázou MySQL).

$ AllowSender UDP, 127.0.0.1, 192.168.1.0/24
$ AllowSender TCP, 127.0.0.1, 192.168.1.0/24

Nezabudnite reštartovať službu rsyslog na centrálnom protokolovom serveri:

# service rsyslog reštart

Ďalším krokom je konfigurácia vzdialených klientov na odosielanie udalostí na centrálny server rsyslog. Ak je napríklad na klientovi spustený rsyslog, do súboru „/etc/rsyslog.conf“ pridajte nasledujúci riadok:

autoriz. * @ 192.168.10.100

Reštartujte server rsyslog na klientovi a pokúste sa prihlásiť / odhlásiť v tomto systéme. Ak vám nič neunikne, príslušná udalosť sa objaví na webovej stránke LogAnalyzer!

Odporúčam tiež oboznámiť sa s článkom o organizácii centrálneho servera denníkov založeného na systéme Windows Server 2008