拓扑:

mariadb

192.168.1.200  Centos 7.2

 

rsyslog服务器

192.168.1.101   主机名为logmaster,系统为Centos 6.8

 

node主机

192.168.1.102   主机名为node1, 系统为Centos 6.8

192.168.1.103   主机名为node2, 系统为Centos 6.8

 

httpd主机(用于部署loganalyzer)

192.168.1.202  Centos 7.2

 

 

实验目的:

  1. 所有主机将本地的储存在/log/message相关的日志发送给rsyslog服务器,并存放在mariadb中

  2. 使用loganalyzer查看存放在mariadb中的日志记录

  3. loganalyzer只允许logadmin组的成员访问

 

一、配置node主机:

在两台node主机上做相同操作

cp /etc/rsyslog.conf{,.bak}     //先备份

vim /etc/rsyslog.conf         //配置rsyslog

rsyslog+loganalyzer_第1张图片

 

service rsyslog restart       //重启rsyslog

 

 

二、配置rsyslog服务器:

在192.168.1.101上操作

yum install -y rsyslog-mysql       //安装连接mysql的模块

rsyslog+loganalyzer_第2张图片

 

head/usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql    //查看sql脚本

rsyslog+loganalyzer_第3张图片

 

 

cp /etc/rsyslog.conf{,.bak}      //先备份

 

vim /etc/rsyslog.conf

rsyslog+loganalyzer_第4张图片

 

rsyslog+loganalyzer_第5张图片

 

service rsyslog restart        //重启rsyslog服务

 

 

三、部署mariadb:

192.168.1.200上操作

yum install -y mariadb-server

systemctl start mariadb        //启动服务

 

mysql       //连接数据库

 

GRANT ALL ON Syslog.* TO 'logadmin'@'192.168.1.%'IDENTIFIED BY 'logpass';

//授权,要和sql脚本以及rsyslog配置中定义的一致

 

exit           //退出mysql

 

 

四、rsyslog连接数据库:

在rsyslog服务器上操作

yum install -y mysql       //安装mysql客户端

 

mysql -h 192.168.1.200-ulogadmin -plogpass < /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql

//连接数据库,使用sql脚本创建DataBase和Table

 

rsyslog+loganalyzer_第6张图片

 

测试

yum install -y tree      //在任意node主机上使用yum安装一个软件

 

rsyslog+loganalyzer_第7张图片

 

 

五、部署loganalyzer

在192.168.1.202上操作

1.    部署lamp

yum install -y httpd php php-mysql php-gd

 

2.    配置虚拟主机

   创建组和用户用于管理日志

htpasswd -c -m/etc/httpd/conf.d/.htpasswd logadmin1

htpasswd -m/etc/httpd/conf.d/.htpasswd logadmin2   //创建两个用户

 

vim /etc/httpd/conf.d/.htgroup             //创建管理组

rsyslog+loganalyzer_第8张图片

 

 

   配置虚拟主机

mkdir -p/mydata/www/loganalyzer      //创建站点目录

 

vim/etc/httpd/conf.d/loganalyzer.conf   //配置虚拟主机

 

rsyslog+loganalyzer_第9张图片

 

systemctl start httpd      //启动httpd服务

 

测试

vim/mydata/www/loganalyzer/test.php    //测试lamp是否可以正常工作

rsyslog+loganalyzer_第10张图片

 

rsyslog+loganalyzer_第11张图片

 

rsyslog+loganalyzer_第12张图片

rm -f/mydata/www/loganalyzer/test.php      //删除测试用文件

 

3.    部署loganalyzer

   准备源码包

rsyslog+loganalyzer_第13张图片

 

tar -xzvf loganalyzer-3.6.5.tar.gz

cp -r loganalyzer-3.6.5/src/* /mydata/www/loganalyzer/   

cp -r loganalyzer-3.6.5/contrib/*/mydata/www/loganalyzer/

chmod +x /mydata/www/loganalyzer/*.sh

//复制网站文件到虚拟主机目录,且给脚本文件添加执行权限

 

bash /mydata/www/loganalyzer/configure.sh

bash /mydata/www/loganalyzer/secure.sh

//执行两个脚本文件

rm -f /mydata/www/loganalyzer/*.sh      //执行后可删除

chmod 666 /mydata/www/loganalyzer/config.php

 //给由脚本生成的配置文件添加权限

 

 

    安装loganalyzer

rsyslog+loganalyzer_第14张图片

 

rsyslog+loganalyzer_第15张图片

 

rsyslog+loganalyzer_第16张图片

 

rsyslog+loganalyzer_第17张图片

 

rsyslog+loganalyzer_第18张图片

 

rsyslog+loganalyzer_第19张图片

 

 

注:

1.    可以给每台node主机安装rsyslog-mysql以直接连接数据库,不需要先把日志传送给rsyslog服务器

2.    修改hostname后,需要重启rsyslog才能在日志中正常显示主机名

3.    httpd2.4貌似不能同时限制客户端ip地址和登录账户