Linux CentOS централизиран сървър за регистрация с помощта на Rsyslog и LogAnalyzer

LogAnalyzer - Това е уеб приложение, което е предназначено за преглед на дневниците на системните събития, получени от syslog, чрез уеб браузър. Rsyslog - това приложение е разширение на стандартния демон на syslog, една от характеристиките на който е възможността за запазване на събития в базата данни на MySQL. С помощта на тези две прекрасни програми е възможно да се създаде централизиран сървър, на който всички събития от различни устройства в мрежата да бъдат пренасочени, което би реализирало функции за удобно архивиране и търсене на събития от всички събития на всички мрежови устройства в периметъра на мрежата. В тази статия ще опиша процедурата за инсталиране на rsyslog (събиране и обобщаване на събития syslog) и LogAnalyzer (в Linux CentOS), който осигурява удобен за потребителя интерфейс за гледане и търсене на събрани регистрационни файлове).

Първо трябва да инсталирате редица допълнителни RPM пакети. защото Услугите LogAnalyzer, Rsyslog и MySQL ще се изпълняват на един и същ сървър, трябва да инсталирате следните пакети с помощта на yum:

# yum инсталирате httpd php mysql php-mysql mysql-сървър wget rsyslog rsyslog-mysql

Сега трябва да се уверите, че MySQL и Apache са конфигурирани да стартират автоматично и след това да ги стартирате:

# chkconfig mysqld в # chkconfig httpd в # услуга mysqld start # услуга httpd старт

По подразбиране коренният потребител на базата данни на MySQL има празна парола, така че трябва да защитите конфигурацията, като зададете нова парола:

# mysqladmin - u root парола NewPassword

След това импортирайте схемата на базата данни rsyslog в MySQL. В зависимост от версията на rsyslog, променете пътя към файла „createDB.sql“.

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

Добра практика е да ограничите достъпа на приложенията до базата данни, така че ще създадем специален потребител, който да получи достъп до базата данни rsyslog. За допълнително затягане на настройките за сигурност можете да създадете отделни акаунти за rsyslog и LogAnalyzer. Трябва да предоставите на rsyslog потребителски достъп до базата данни на MySQL само от интерфейса localhost localhost. Трябва също така да изпълним командата MySQL „flush privileges“, за да приложим незабавно всички права.

# mysql - u root - p mysql mysql> ПРЕДОСТАВЯ ВСИЧКИ В Syslog. * TO rsyslog @ localhost ИДЕНТИФИЦИРАН ОТ "Парола"; mysql> flush привилегии; mysql> изход

Сега е време да преминете към редактиране на файла /etc/rsyslog.conf. Тук трябва да конфигурираме пренасочване на съобщението syslog към базата данни MySQL. Първата команда зарежда драйвера на MySQL. Във втория ред казваме, че е необходимо да се приемат дневници от всяко ниво на важност от "authpriv", което включва най-важните съобщения. Ако искате да запазите всички системни съобщения в MySQL, трябва да посочите *. *. MySQL сървърът на база данни слуша на адрес 127.0.0.1, Syslog е името на MySQL базата данни и накрая уточняваме MySQL името и паролата на потребителя rsyslog. Тук можете да конфигурирате събирането и записването на всякакви съобщения, всяка комбинация трябва да бъде разделена ";" (напр. поща. *; authpriv. *: ommysql ...).

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

Сега трябва да изключите съществуващата услуга syslog и да активирате rsyslog:

# chkconfig syslog изключен # услуга syslog стоп # chkconfig rsyslog на # услуга rsyslog старт

Време е да изтеглите LogAnalyzer. Последната версия може да бъде намерена тук: http://loganalyzer.adiscon.com/downloads.

Или изтеглете LogAnalyzer директно от Linux сървър (wget трябва да бъде инсталиран):

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

Разархивирайте файловете на LogAnalyzer:

# tar zxvf loganalyzer-3.0.0.tar.gz

Сега трябва да копирате файловете LogAnalyzer в директорията на уеб сървъра Apache (стандартна конфигурация).

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

Отидете в създадената директория LogAnalyzer, изпълнете скрипта configure.sh. В резултат на това ще бъде създаден празен конфигурационен файл config.php, който ще бъде попълнен в следващите стъпки.

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

За допълнителна конфигурация LogAnalyzer се нуждаем от уеб браузър. Във вашия любим интернет браузър въведете http: // web1 / loganalyzer. (web1 е името на нашия web1 сървър, loganalyzer е директория apache)

В средата на прозореца изберете връзката „Кликнете тук, за да инсталирате“.

до.

Конфигурирайте опциите за показване на дневника и натиснете отново Next.

Сега трябва да посочите адреса на сървъра с базата данни, потребителско име и парола за достъп до него (ако не сте забравили базата данни се нарича rsyslog). Като щракнете върху Напред, ще видите резултата от проверката на точността на въведените данни и правилната връзка.

Накрая завършете.

В случай, че сте конфигурирали всичко правилно, главната страница на LogAnalyzer ще се появи пред вас, на която ще бъдат показани дневниците, както са получени. Можете да опитате да генерирате различни системни събития и да видите какво ще се случи на страницата LogAnalyzer. защото Настройвам регистрирането на събития от типа „authpriv“, което означава, че събития като потребителски вход / изход или командата (потребител) за превключване ще бъдат регистрирани.

регулиране Rsyslog за отдалечено събиране на журнали

Следващата стъпка е да конфигурирате услугата rsyslog да събира syslog събития от различни мрежови устройства. Първо трябва да конфигурирате защитната стена на iptables, за да разрешите входящия трафик през порт 514. Ще добавя две правила, които позволяват както TCP, така и UDP трафик. По подразбиране syslog приема само съобщения, изпратени на UDP порт 514, но възможността да приема TCP трафик е добавена към rsyslog. Добавете следните правила към файла „/ etc / sysconfig / iptables“:

-A RH-Firewall-1-INPUT - p udp - m udp --dport 514 - j ACCEPT
-A RH-Firewall-1-INPUT - p tcp - m tcp --dport 514 - j ACCEPT

Рестартирайте iptables:

# рестартиране на iptables за услуга

Сега трябва да конфигурирате rsyslog за получаване на входящи съобщения syslog. Ще конфигурирам получаване на TCP / UDP съобщение от localhost и всички хостове в подмрежата 192.168.1.0. Следните редове трябва да се добавят към файла „/etc/rsyslog.conf“ (преди изграждането, където е конфигурирана комуникацията с MySQL базата данни).

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

Не забравяйте да рестартирате услугата rsyslog на централния сървър за регистриране:

# service rsyslog рестартиране

Следващата стъпка е да конфигурирате отдалечени клиенти за изпращане на събития до централния сървър на rsyslog. Ако rsyslog работи на клиента, например, добавете следния ред към файла „/etc/rsyslog.conf“:

authpriv. * @ 192.168.10.100

Рестартирайте rsyslog сървъра на клиента и се опитайте да влезете / излезете от тази система. Ако не пропуснете нищо, съответното събитие ще се появи на уеб страницата на LogAnalyzer!

Препоръчвам също да се запознаете със статията за организацията на централен сървър на дневници на базата на Windows Server 2008