Rsyslog-利用mysql存储日志并通过loganalyzer展示数据库中的日志

在这里插入图片描述
实验目的: 利用rsyslog日志服务,将收集的日志记录于MySQL中 再通过loganalyzer展示
简单的说。就是不同网络的主机日志传送给Rsyslog 然后存储在mysql里,在通过网页展示出来

== 而将不同网络的主机日志传送给Rsyslog的实验
https://blog.csdn.net/Lcongming/article/details/117428584 已经完成,有时间可以参阅!

利用mysql存储日志

如图所示
10.0.0.18是 rsyslog
10.0.0.28是 mysql 数据库
10.0.0.38是LAP安装httpd和php
**第一步:设置

在28 上安装数据库并且执行启动

yum -install mysql-server
systemctl  enable --now mysqld

在18上查看rpm -ql rsyslog-mysql
在这里插入图片描述
将sql脚本复制到数据库服库上 (ommysql.so功能是为了存数据库)

scp /usr/share/doc/rsyslog/mysql-createDB.sql 10.0.0.28:/data

在这里插入图片描述

在28上 要运行数据库 将数据导入 mysql < mysql-createDB.sql
执行mysql进入数据库
在这里插入图片描述
创建一个数据库账号和密码并且授权:

create user rsyslog@'10.0.0.%' identified by '123456';
grant all on Syslog.* to rsyslog@'10.0.0.%';

在这里插入图片描述
接着 打开 vim /etc/rsyslog.conf 增加新模块ommysql

module(load="ommysql")

在这里插入图片描述

*.info;mail.none;authpriv.none;cron.none               :ommysql:10.0.0.28,Syslog,rsyslog,123456

在这里插入图片描述
重启服务 systemctl restart rsyslog
第二步:验证

在7和8上发送日志,都会在18Rsyslog的主机上提醒:

[root@centos7 ~]#logger "This is a tcp log on from ip 7"
[root@Centos8 ~]#logger "This is a tcp log on from ip 8"

在这里插入图片描述
而这个时候在28 这台数据库主机上查看

mysql> select * from SystemEvents\G

可以看到数据已经存储在mysql里了
在这里插入图片描述在这里插入图片描述
至此 利用mysql存储日志信息设置完成了

为什么要通过loganalyzer展示数据库中的日志呢,根据老王的说法,如果让老板每次输入select * from SystemEvents\G查看,而且这里SystemEvents里还要注意大小写,很容易让老板情绪不稳定,也会让老板觉得你很废物,随时有被炒的风险,如果想避免这种情况发生,第一个方法就是收购公司,自己当老板、第二个方法就是用网页来展示日志信息,老板欢喜,大家才欢喜~

第一步:安装

在38主机 安装httpd和php的包 并启动

yum -y install httpd php-fpm  php-mysqlnd  #(7上不带nd)
systemctl enable --now httpd php-fpm

执行ss -ntul 查看不到9000的端口是因为:apach和mysql在同一台主机18上。所以使用的是套接字监听端口,也是可以的
在这里插入图片描述

vim /etc/php-fpm.d/www.conf

在这里插入图片描述
在这里,测试php是否正常

root@Centos38 ~]#cd /var/www/html
[root@Centos38 html]#vim info.php
<?php phpinfo() ?>

在这里插入图片描述
在网页测试 10.0.0.38/info.php
在这里插入图片描述
接着安装loganalyzer4.1.12的软件
下载链接在:http://loganalyzer.adiscon.com/downloads/
在这里插入图片描述
下载后上传到LAP:38主机进行安装,并且设置config.php和666权限

[root@Centos38 ~]#tar -xvf loganalyzer-4.1.12.tar.gz
[root@Centos38 ~]#mv loganalyzer-4.1.12/src/ /var/www/html/log
[root@Centos38 ~]#touch /var/www/html/log/config.php
[root@Centos38 ~]#chmod 666 /var/www/html/log/config.php

访问http://10.0.0.38/log 实现初始化 并开始测试;
在这里插入图片描述
点击here后 再下一步
在这里插入图片描述
图是显示web显示多少条记录等信息
在这里插入图片描述
再下一步;要指定源等选项,如下图所示
在这里插入图片描述
下一步
在这里插入图片描述
点击完成后显示视图如下:
在这里插入图片描述
验证,在7和8主机上输入后 在web页面可以查看到了:

[root@centos7 ~]#logger "This is a tcp log on from ip 0007"
[root@Centos8 ~]#logger "This is a tcp log on from ip 0008"

在这里插入图片描述
如果想显示图形,需要安装gd包,安装后重启服务;
在这里插入图片描述

[root@Centos38 ~]#yum -y install httpd php-fpm php-mysqlnd php-gd
[root@Centos38 ~]#systemctl restart  php-fpm

再刷新一下界面,图形显示成功;
在这里插入图片描述
至此,设置完成
最后为了避免config.php文件被覆盖或者修改
需要安全加固,执行:

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

谢谢观赏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值