rsyslog+loganalyzer搭建日志服务器

日志简介:

日志:即历史事件,按时间序列将发生的事件予以记录;日志记录了事件发生的时间,时间内容,事件的关键性程度;运维人员可通过检查这些记录的信息,发现错误发生的原因,或寻找受到攻击时,攻击者留下的痕迹。


syslogCentOS6之前的默认日志系统;

syslogd:系统进程的相关日志

kloged:内核事件相关日志


rsyslogCentOS6的默认日志系统:

支持多线程

支持tcpssltlsrelp等协议

支持MySQLPGSQLOracle等多种关系型数据中

强大的过滤器,可实现过滤系统信息中的任意部分

支持自定义输出格式

适用于企业级别日志记录需求


facllity:设施,从功能或程序上对日志进行分类,并由专门的工具附则记录其日志

auth:认证相关信息

authpriv:认证授权相关信息

cron:周期性计划任务相关信息

daemon:守护进程相关信息

kern:内核相关信息

lpr:打印相关信息

mail:收发邮件相关信息

mark:防火墙标记

news:新闻相关信息

security:安全相关信息

syslog:自身记录

user:用户相关信息

uucp:早起系统文件共享服务

local0..local78个自定义facility


指定设施时可以使用通配符:

*:所有

!:取反

f1f2f3...:列表


priority:级别

debug:调试信息

info:基本说明信息

notice:需要注意的信息

warnwarning:警告信息

errerror:错误信息

crit:蓝色警报

alert:橙色警报

emergpanic:红色警报


级别可以使用通配符:

*:所有级别

none:没有任何级别


target:目标,制定如何存储日志

文件路径:例如,/var/log/messages

用户:*

日志服务器:@SERVER_IP

管道: | COMMAND


rsyslog的之配置文件:/etc/rslog.conf,其定义格式;

facility.priority Target


mail.info    /var/log/maillog

比指定级别更高的所有级别,包括指定的级别本身;

mail.=info    /var/log/maillog

明确指定级别;

mail.!info *

除了指定级别

*.info    | COMMAND

所有facilityinfo级别

mail.*

mail的所有级别

mail,news.info


日志信息格式:

时间    主机    进程(PID):事件


启用日志服务器的功能:模块

通过514/udp搜集日志信息:

> # Provides UDP syslog reception
> $ModLoad imudp
> $UDPServerRun 514


通过514/tcp搜集日志信息

> # Provides TCP syslog reception
> $ModLoad imtcp
> $InputTCPServerRun 514


实例:基于LAMP平台搭建rsyslog+loganalyzer日志服务器

实验环境:

web-php服务器,同为日志客户端:

IP192.168.1.10

操作系统:CentOS6.7 x86_64


数据库服务器:

IP192.168.1.11

操作系统:CentOS6.7 x86_64


日志服务器:

IP192.168.1.12

操作系统:CentOS6.7 x86_64

loganalyzerloganalyzer-3.6.6.tar.gz

官网:http://www.loganalyzer.net/


实验过程:

连接日志服务器和客户端:

编辑日志服务器配置文件,启动日志服务器功能,接收客户端的日志:

# vim /etc/rsyslog.conf
> $ModLoad imudp
> $UDPServerRun 514
>
> $ModLoad imtcp
> $InputTCPServerRun 514


重启rsyslog服务,查看端口:

# service rsyslog restart
# ss -tunl | grep :514

wKioL1Xlt_2xKlYiAABqNMpMsVQ904.jpg


编辑日志客户端配置文件,指定日志服务器,重启rsyslog服务;

# vim /etc/rsyslog.conf
> *.info;mail.none;authpriv.none;cron.none    @192.168.1.12
# service rsyslog restart


日志服务器查看日志:

# tail -l /var/log/messages

wKioL1XluDegxfBcAACVsqoJnWY836.jpg

服务器已接收到客户端的日志。



日志服务器连接数据库:

数据库服务器安装服务;

# yum install mysql mysql-server


启动mysql服务:

# chkconfig mysqld on
# service mysqld start


日志服务器安装mysql模块:

# yum install rsyslog-mysql

 

查看安装rsyslog-mysql模块生成文件:

# rpm -ql rsyslog-mysql

wKiom1XltlnwmB2RAABud0XTdZ0973.jpg


生成的数据库文件传送给数据库服务器:

# scp /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql 192.168.1.11:/root


将文件导入数据库:

# mysql < createDB.sql


授权rsyslog用户

# mysql
mysql> GRANT ALL ON Syslog.* TOrsysloguser@'192.168.1.%' IDENTIFIED BY 'rsyslogpass';

mysql> FLUSH PRIVILEGES;

rsyslog+loganalyzer搭建日志服务器_第1张图片


编辑日志服务器配置文件添加ommysql模块,日志信息指向数据库服务器,重启服务:

# vim /etc/rsyslog.conf
> $ModLoad ommysql
> *.info;mail.none;authpriv.none;cron.none    :ommysql:192.168.1.11,Syslog,rsysloguser,rsyslogpass
# service rsyslog restart


查看mysql信息:

rsyslog+loganalyzer搭建日志服务器_第2张图片

数据库已接收到日志信息。



安装lamp平台部署loganalyzer

安装lamp平台:

# yum install httpd php php-mysql


配置loganalyzer

# tar xf loganalyzer-3.6.6.tar.gz
# mkdir -p /var/www/html/log
# cp -a loganalyzer-3.6.6/src/*/var/www/html/log/
# cp -a loganalyzer-3.6.6/contrib/*/var/www/html/log/
# cd /var/www/html/log/
# chmod +x configure.sh secure.sh
# ./configure.sh
# ./secure.sh
# chmod 666 config.php
# chown -R apache:apache ./*


启动服务:

# chkconfig httpd on
# service httpd start


访问站点http://192.168.1.10/log配置信息:

rsyslog+loganalyzer搭建日志服务器_第3张图片

点击here继续;

rsyslog+loganalyzer搭建日志服务器_第4张图片

点击Next继续;

rsyslog+loganalyzer搭建日志服务器_第5张图片

文件可写,点击Next继续;

rsyslog+loganalyzer搭建日志服务器_第6张图片

关闭用户数据库,Next继续;

rsyslog+loganalyzer搭建日志服务器_第7张图片

连接数据库,Next继续;

rsyslog+loganalyzer搭建日志服务器_第8张图片

安装完成:

rsyslog+loganalyzer搭建日志服务器_第9张图片

 

结语:

查看日志,分析日志是一位运维工程师的日常,rsyslog+loganalyzer可以将日志信息反映于web页面,显示更直观,便于统计、分析,并且还可以远程查看,管理,搭建过程也非常方便;以上为本人学习整理内容,试验中如有遗漏和失误,欢迎各路大神来喷。


本文出自 “小马的学习记录” 博客,请务必保留此出处http://masachencer.blog.51cto.com/8683770/1690605

你可能感兴趣的:(mysql,rsyslog,loganalyzer)