rsyslog+mariadb+loganalyzer实现日志采集分析

一、总述

  Linux的日志记录了用户在系统上一切操作,这些日志是使用者了解服务器的情况最好的资料。Rsyslog 是系统的一部分,能够实时的写日志,并且还可以将日志选择性的发送到远程日志服务器。

  rsyslog日志服务器的优势:

    1、日志统一,集中式管理  

    2、日志实时传送到一个更加安全的远端服务器上,真正记录用户行为,使日志的2次更改可能性大大降低,从而能够对日志进行真实回放,便于问题追踪。

  LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的日志并保存到服务端该目录下,一种是读取后保存到日志服务器数据库中,本次试验采用将日志保存到数据库的方式。

 LogAnalyzer 采用php开发,所以日志服务器需要php的运行环境,本文采用LAMP。

二、系统环境

 

Rsyslog Server OS:CentOS 7.2

Rsyslog Server IP:172.16.72.8

Rsyslog 版本:rsyslog-7.4.7-16.el7.x86_64

LogAnalyzer 版本:LogAnalyzer 3.6.4 (v3-stable)

LAMP 版本:httpd-2.4.6-45.el7.centos.x86_64+ mariadb-5.5.52-1.el7.x86_64+ php-5.4.16-42.el7.x86_64

防火墙已关闭/iptables: Firewall is not running.

SELINUX=disabled

Rsyslog Client OS:centos7.2

Rsyslog Client IP:172.16.72.3

三、安装并设置环境

3.1 安装LAMP环境

# yum install httpd php php-mysql mariadb php-gd

查看安装的结果

blob.png

3.2 安装rsyslog 连接MySQL数据库的模块

# yum install rsyslog-mysql –y

blob.png

3.3mysql server上授权rsyslog能连接至当前服务器;

MariaDB [(none)]> GRANT ALL ON Syslog.* TO 'loguser'@'localhost' IDENTIFIED BY 'magedu'; 
MariaDB [(none)]> GRANT ALL ON Syslog.* TO 'loguser'@127.0.0.1 IDENTIFIED BY 'magedu'; 
MariaDB [(none)]> show databases;[object Object]

登录数据库检测一下

blob.png

3.4 rsyslog创建数据库及表

# mysql -uloguser -hlocalhost -pmagedu</usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql

查看数据库Syslog的表

blob.png

3.5配置日志server端的rsyslog将日志保存到mysql中;

需要修改的参数如下

blob.pngblob.png

client端需要修改的参数如下

blob.png

3.6安装LogAnalyzer

 # wget ftp://172.16.0.1/pub/Sources/sources/loganalyzer/loganalyzer-3.6.5.tar.gz
 # tar xf loganalyzer-3.6.5.tar.gz
 # cp -a loganalyzer-3.6.5/src  /var/www/html/log
 # cd  /var/www/html/log
 # touch config.php
 # chmod 666 config.php

启动httpd服务,重启server端的rsyslog服务器

 # systemctl start httpd.service
 # systemctl restart rsyslog.service

3.7 在浏览器导向安装LogAnalyzer的web端

  3.7.1

 在浏览器输入:http://172.16.72.3/log

blob.png

前面直接一路next不需要填写任何参数

blob.png

blob.png

blob.png

下面的一步需要修改和填入相关的参数

blob.png

点击完成

blob.png

blob.png

LogAnalyzer 首页

blob.png

3.8加强安全性

# cd  /var/www/html/log
# chmod 644 config.php

4、测试

在client(172.16.72.3)上执行yum操作,然后查看rsyslogserver端的日志记录情况

blob.png

完成

                                     

原创文章,作者:hanlln1,如若转载,请注明出处:http://www.178linux.com/66239

(0)
hanlln1hanlln1
上一篇 2017-01-10 01:12
下一篇 2017-01-10 09:58

相关推荐

  • Linux发行版本介绍与哲学思想

    1.Linux发行版本介绍 Linux 发行版(英语:Linux distribution,也被叫做GNU/Linux 发行版),为一般用户预先集成好的Linux操作系统及各种应用软件。一般用户不需要重新编译,在直接安装之后,只需要小幅度更改设置就可以使用,通常以软件包管理系统来进行应用软件的管理。 1.服务器版本:Centos/Debian 从Red Ha…

    Linux干货 2016-10-28
  • Linux用户和组命令

                        groupadd命令用户和工作组管理 groupadd命令用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。-g:指定新建工作组的id;  -r:创建系统工作组,系统工作组的组ID小于500; -K:…

    2016-02-09
  • 1019作业

    1019作业 柴震 软连接 硬连接 软连接和硬链接的区别 属性与定义: 硬链接:新建的文件是已经存在的文件的一个别名,所以创建时链接数递增;而且当原文件删除时,新建的链接文件仍然可以使用,因其直接对应于数据块。 软链接:也称为符号链接。新建的链接文件以“路径”的形式来表示另一个文件,其大小为指向的路径字符串的长度,不增加或减少目标文件in…

    Linux干货 2016-10-19
  • sed命令使用

    一、sed简介    sed是一种在线编辑器,一次处理一行内容。处理时,把当前处理的行存储在历史缓冲区,传给“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非使用重定向存储输出。sed主要用来自动编辑一个或…

    Linux干货 2016-08-12
  • Linux man中文帮助安装

    虽然在CentOS操作系统中具有多语言包,但其man手册是英文的,对于新手来说能够使用中文man手册将加快学习速度

    CentOS系统安装中文man手册

    Linux干货 2017-11-26
  • 第八周-Linux网络配置,软件安装,bash编程

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别 网桥:一种网络设备,负责网络桥接(network bridging)之用。桥接器将网络的多个网段在数据链路层(OSI模型第2层)连接起来(即桥接)。 集线器(Hub):是指将多条以太网双绞线或光纤集合连接在同一段物理介质下的设备。集线器是运作在OSI模型中的物理层。 二层交换机:工…

    Linux干货 2016-11-14