Centrální logovací server Linux CentOS pomocí Rsyslog a LogAnalyzer

Loganalyzer - Toto je webová aplikace, která je navržena pro prohlížení protokolů systémových událostí přijatých ze syslogu pomocí webového prohlížeče. Rsyslog - tato aplikace je rozšířením standardního démona syslogu, jehož jednou z funkcí je schopnost ukládat události do databáze MySQL. S pomocí těchto dvou úžasných programů je možné vytvořit centralizovaný server, na kterém budou přesměrovány všechny události z různých zařízení v síti, což by implementovalo funkce pro pohodlnou archivaci a vyhledávání událostí ze všech událostí na všech síťových zařízeních v obvodu sítě. V tomto článku popíšu postup instalace rsyslogu (shromažďování a agregování událostí syslogu) a LogAnalyzer (na Linuxu CentOS), který poskytuje uživatelsky přívětivé rozhraní pro prohlížení a prohledávání shromážděných protokolů).

Nejprve musíte nainstalovat několik dalších RPM balíčků. Protože Služby LogAnalyzer, Rsyslog a MySQL budou běžet na stejném serveru, pomocí yum je třeba nainstalovat následující balíčky:

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

Nyní se musíte ujistit, že MySQL a Apache jsou nakonfigurovány tak, aby se spouštěly automaticky, a poté je spusťte:

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

Ve výchozím nastavení má kořenový uživatel databáze MySQL prázdné heslo, takže konfiguraci byste měli zabezpečit nastavením nového hesla:

# mysqladmin - u root heslo NewPassword

Dále importujte schéma databáze rsyslog do MySQL. V závislosti na verzi rsyslogu změňte cestu k souboru „createDB.sql“.

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

Doporučujeme omezit přístup aplikací k databázi, takže vytvoříme speciální uživatele pro přístup k databázi rsyslog. Chcete-li dále zpřísnit nastavení zabezpečení, můžete pro rsyslog a LogAnalyzer vytvořit samostatné účty. Uživateli rsyslog musíte poskytnout přístup k databázi MySQL pouze z rozhraní localhost localhost. Abychom okamžitě uplatnili všechna práva, musíme také spustit příkaz „vyprázdnění oprávnění“ MySQL.

# mysql - u root - p mysql mysql> GRANT ALL ON Syslog. * TO rsyslog @ localhost IDENTIFIED BY 'Password'; mysql> oprávnění pro vyprázdnění; mysql> exit

Nyní je čas přejít k úpravám souboru /etc/rsyslog.conf. Zde musíme nakonfigurovat předávání zpráv syslogu do databáze MySQL. První příkaz načte ovladač MySQL. Ve druhém řádku říkáme, že je nutné akceptovat protokoly jakékoli úrovně důležitosti z "autorizátoru", který obsahuje nejdůležitější zprávy. Pokud chcete uložit všechny systémové zprávy do MySQL, musíte zadat *. *. Můj databázový server MySQL poslouchá na adrese 127.0.0.1, Syslog je jméno databáze MySQL a nakonec specifikujeme MySQL jméno a heslo uživatele rsyslogu. Zde můžete nakonfigurovat shromažďování a zaznamenávání jakýchkoli zpráv, každá kombinace musí být oddělena ";" (např. mail. *; authpriv. *: ommysql ...).

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

Nyní musíte vypnout existující službu syslog a povolit rsyslog:

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

Je čas stáhnout LogAnalyzer. Nejnovější verzi naleznete zde: http://loganalyzer.adiscon.com/downloads.

Nebo si stáhněte LogAnalyzer přímo ze serveru Linux (musí být nainstalován wget):

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

Rozbalte soubory LogAnalyzer:

# tar zxvf loganalyzer-3.0.0.tar.gz

Nyní musíte zkopírovat soubory LogAnalyzer do adresáře webového serveru Apache (standardní konfigurace).

# mv loganalyzer-3.0.0 / src / var / www / html / loganalyzer # mv loganalyzer-3.0.0 / přispět / * / var / www / html / loganalyzer /

Přejděte do vytvořeného adresáře LogAnalyzer, spusťte skript configure.sh. V důsledku toho bude vytvořen prázdný konfigurační soubor config.php, který bude vyplněn v dalších krocích.

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

Pro další konfiguraci LogAnalyzer potřebujeme webový prohlížeč. Do svého oblíbeného internetového prohlížeče zadejte http: // web1 / loganalyzer. (web1 je název našeho serveru web1, loganalyzer je adresář apache)

Uprostřed okna vyberte odkaz „Klikněte sem pro instalaci“.

Další.

Nakonfigurujte možnosti zobrazení protokolu a znovu klepněte na tlačítko Další.

Nyní musíte zadat adresu serveru s databází, uživatelským jménem a heslem pro přístup k ní (pokud jste nezapomněli, databáze se nazývá rsyslog). Kliknutím na tlačítko Další uvidíte výsledek kontroly správnosti zadaných dat a správného připojení.

Konečně dokončit.

V případě, že jste vše nakonfigurovali správně, zobrazí se před vámi hlavní stránka LogAnalyzer, na které se budou protokoly zobrazovat, jak jsou přijaty. Můžete se pokusit vygenerovat různé systémové události a zjistit, co se stane na stránce LogAnalyzer. Protože Nastavil jsem protokolování událostí typu „authpriv“, což znamená, že budou zaznamenány události, jako je vstup / výstup uživatele nebo příkaz uživatelského přepínače (su).

Přizpůsobení Rsyslog pro vzdálený sběr protokolů

Dalším krokem je konfigurace služby rsyslog pro shromažďování událostí syslogu z různých síťových zařízení. Nejprve musíte nakonfigurovat firewall iptables, aby umožňoval příchozí provoz přes port 514. Přidám dvě pravidla, která umožní provoz TCP i UDP. Ve výchozím nastavení syslog přijímá pouze zprávy odeslané na portu UDP 514, ale do protokolu rsyslog byla přidána schopnost přijímat přenos TCP. Přidejte do souboru “/ etc / sysconfig / iptables” následující pravidla:

-RH-Firewall-1-VSTUP - p udp - m udp --dport 514 - j ACCEPT
-RH-Firewall-1-VSTUP - p tcp - m tcp --port 514 - j ACCEPT

Restartujte iptables:

# restart služby iptables

Nyní musíte nakonfigurovat rsyslog pro příjem příchozích syslog zpráv. Nakonfiguruji příjem zpráv TCP / UDP z localhost a všech hostitelů v podsíti 192.168.1.0. Do souboru „/etc/rsyslog.conf“ by měly být přidány následující řádky (před sestavením, kde byla nakonfigurována komunikace s databází MySQL).

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

Nezapomeňte restartovat službu rsyslog na centrálním serveru protokolování:

# service rsyslog restart

Dalším krokem je konfigurace vzdálených klientů pro odesílání událostí na centrální server rsyslog. Pokud je na klientovi spuštěn například rsyslog, přidejte do souboru „/etc/rsyslog.conf“ následující řádek:

autoriz. * @ 192.168.10.100

Restartujte server rsyslog na klientovi a zkuste se přihlásit / odhlásit v tomto systému. Pokud vám nic neunikne, odpovídající událost se objeví na webové stránce LogAnalyzer!

Doporučuji také seznámit se s článkem o organizaci centrálního protokolu serveru založeného na systému Windows Server 2008