红联Linux门户
Linux帮助

CentOS 6.5+Rsyslog+LogAnalyzer搭建中央日志服务器

发布时间:2015-04-05 04:45:49来源:linux网站作者:zhjixi1234

概述

Rsyslog是比syslog功能更强大的日志记录系统,可以将日志输出到文件,数据库和其它程序.可以使用rsyslog替换系统自带的syslog。

LogAnalyzer 是一个 syslog 和其他网络事件数据的 Web 前端工具,提供简单易用的日志浏览、搜索和基本分析以及图表显示。

本文环境为CentOS 6.5平台部署Rsyslog+LogAnalyzer

环境要求

CENTOS 6.5 X64

安装过程

安装介质

Rsyslog采用系统自带yum源。

http://loganalyzer.adiscon.com/downloads/

下载LogAnalyzer

RSYSLOG服务器配置

用root用户登录

调整时间

#hwclock --set --date="2013/07/04 13:49"

#hwclock -hctosys

配置本地YUM源

#mkdir /mnt/cdrom

#mount /dev/cdrom /mnt/cdrom

#cd /etc/yum.repos.d/

#mkdir bak

#mv *.repo bak/

#vi media.repo

[media]

name=media

baseurl=file:///mnt/cdrom

enabled=1

gpgcheck=0

配置前先关闭iptables和SELINUX,避免安装过程中报错。

# service iptables stop

# setenforce 0

# vi /etc/sysconfig/selinux

---------------

SELINUX=disabled

安装MYSQL PHP APACHE

# yum install mysql-server mysql-devel libcurl-devel net-snmp-devel php php-gd php-xml php-mysql httpd
 
# service mysqld start

# mysql -uroot

mysql> set password=password('rootroot');

安装rsyslog

# yum install rsyslog rsyslog-mysql -y

注:rsyslog-mysql为rsyslog将日志传送到mysql数据库的一个模块,这里必须安装
若服务器未安装RSYSLOG,需要修改/etc/sysconfig/rsyslog文件配置

SYSLOGD_OPTIONS="-c 2 -r -x -m 180"

KLOGD_OPTIONS="-x"
各参数作用:
-c 指定运行兼容模式。

-r 指定监听端口。 默认514

-x 在接收客户端消息时,禁用DNS查找。需和-r参数配合使用。

-m 标记时间戳。单位是分钟,为0时,表示禁用该功能。

# cd /usr/share/doc/rsyslog-mysql-5.8.10/

# mysql -uroot -prootroot < createDB.sql

注:创建Syslog库并在该库中创建了两张空表

创建rsyslog用户在mysql下的相关权限

# mysql -uroot -prootroot

mysql > grant all privileges on Syslog.* to rsyslog@localhost identified by "123456";
 
mysql > flush privileges;

配置服务端支持rsyslog-mysql模块,并开启UDP服务端口获取网内其他LINUX系统日志

# vi /etc/rsyslog.conf

在#### MODULES ####下添加这两行

$ModLoad ommysql.so

*.* :ommysql:localhost,Syslog,rsyslog,123456

注:localhost表示本地主机,Syslog为数据库名,rsyslog为数据库的用户,123456为该用户密码

取消下面三行注释

$ModLoad immark

$ModLoad imudp

$UDPServerRun 514

重启服务:

# service rsyslog restart

(rsyslog client)

# yum install rsyslog -y

配置rsyslog客户端发送本地日志到服务端

# vi /etc/rsyslog.conf

末行添加如下内容

*.* @192.168.7.201

注:192.168.7.201 为日志服务器端IP地址

重启服务:

# service rsyslog restart

防火墙开放服务端口

#service iptables start

/sbin/iptables -I INPUT -p tcp --dport 514 -j ACCEPT

/sbin/iptables -I INPUT -p udp --dport 514 -j ACCEPT

#/etc/init.d/iptables save

#/etc/init.d/iptables status

LOGANALYZER配置

用root用户登录

配置前先关闭iptables和SELINUX,避免安装过程中报错。

# serviceiptables stop

# setenforce 0

# vi /etc/sysconfig/selinux

---------------

SELINUX=disabled

启动mysqld httpd

安装loganalyzer

上传安装文件至/tmp下

#tar zxvf loganalyzer-3.6.3.tar.gz

复制loganalyzer源代码到apache的loganalyzer目录

#cd /tmp/loganalyzer-3.6.3

#mkdir -p /var/www/html/loganalyzer/

#cp -r src/* /var/www/html/loganalyzer/

#cp -r contrib/* /var/www/html/loganalyzer/

#cd /var/www/html/loganalyzer/

#touch config.php

#chmod 666 config.php

修改php环境

为配合LogAnalyzer对php环境的要求,请修改/etc/php.ini中的内容为:

memory_limit = 512M
max_execution_time = 120

创建日志目录

# mkdir -p  /var/log/httpd/loganalyzer

配置虚拟机,apache安全配置
这部分,请根据apache实际情况操作。以默认系统为例,虚拟主机配置文件都放在/etc/httpd/conf/httpd.conf,加入下面内容。

# loganalyzer

<VirtualHost *:80>

ServerName logserver

ServerAdminzhjixi1234@163.com

DocumentRoot /var/www/html/loganalyzer

<Directory />

Options FollowSymLinks

AllowOverride All

</Directory>

<Directory /var/www/html/loganalyzer >

# pcw No directory listings

# Options Indexes FollowSymLinks MultiViews

Options -Indexes FollowSymLinks MultiViews

AllowOverride All

Order allow,deny

allow from all

</Directory>

ErrorLog /var/log/httpd/loganalyzer/error.log

# Possible values include: debug, info, notice, warn, error, crit,

# alert, emerg.

LogLevel warn

CustomLog /var/log/httpd/loganalyzer/access.log combined

ServerSignature On

</VirtualHost>

重启服务

#service httpd restart

WEB配置

在浏览器输入网址,进入安装向导

访问http://serverip:80

1.提示没有配置文件,点击here利用向导生成

文件权限config.php不正确,chmod 666 /var/www/html/loganalyzer/config.php

注:点击NEXT时若报错,后台执行如下命令后继续

# ln-s /var/lib/mysql/mysql.sock /tmp/mysql.sock

然后开始写入数据库,设置监控日志保存到mysql数据库中,一路配置过去。
查看loganalyzer是否获取系统日志
CentOS 6.5+Rsyslog+LogAnalyzer搭建中央日志服务器

注:以上图片上传到红联Linux系统教程频道中。

防火墙开放服务端口

#service iptables start

/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

安全配置

#cd /var/www/html/loganalyzer

#chmod 644 config.php

总结:
感觉RSYSLOG+LOGANALYZER搭建相对于SYSLOG-NG+LOGANALYZER搭建简单很多,LogAnalyzer的BUG还没试出来。
SYSLOGNG相对于RSYSLOG功能强大很多,但那些功能是收费的。
LOGZILLA功能也很强大,但那些也是收费的。
综上所述,打算采用RSYSLOG+LOGANALYZER作为日志集中服务器,遗憾的是,这个版本的loganalyzer的用户权限控制不是很好。