4.3.3 配置数据库
导入rsyslog-mysql 数据库文件
# cd /usr/share/doc/rsyslog-mysql-5.8.10/
# mysql -uroot -pmysqlpassword < createDB.sql
查看做了哪些操作
# mysql -uroot –p
mysql> show databases;
mysql> show tables;
导入数据库操作创建了Syslog 库并在该库中创建了两张空表SystemEvents 和SystemEventsProperties。
创建rsyslog 用户在mysql下的相关权限
# mysql -uroot –p
mysql> grant all on Syslog.* to rsyslog@localhost identified by '123456';
mysql> flush privileges;
mysql> exit
4.4 创建表
4.5 检测sql结果
4.5创建管理员
创建完成以后就可以登录了。大功告成。NO!
还有几个比较难解决的报错等着我们。这几个报错有些基本在baidu是收不到答案的。经过诸多尝试终于让我解决了。下面就贴出来供大家参考。
1. No syslog records found - Error Details
解决方法:
1.1修改/var/www/html/loganalyzer/config.php
$CFG['Sources']['Source1']['DBTableName'] = 'systemevents'; 为
$CFG['Sources']['Source1']['DBTableName'] = "SystemEvents";
1.2 更新数据库配置
Mysql -uroot -p
Use Syslog;
mysql> update logcon_sources set DBTableName='SystemEvents' where> mysql> flush privileges;
2.这个错误
这个错误是没有配置rsyslog对mysql的连接。进行连接即可。参考4.3.2
可以做一个客户端行为监控的小玩意儿。就是在日志中看到所有用户执行了什么命令做了什么操作。
编辑/etc/bashrc,将客户端执行的所有命令写入系统日志/var/log/messages中。
# vi /etc/bashrc
在文件尾部增加一行
export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'
设置其生效
# source /etc/bashrc
配置完毕。这样用户的行为会被写到messages中去。在loganalyzer中也可以看到。