首先准备lamp环境
yum -y install httpd mysql* php*
chkconfig httpd on
/etc/init.d/httpd start
chkconfig mysqld on
/etc/init.d/mysqld start
chkconfig rsyslog on
/etc/init.d/rsyslog start
设置MySQL密码并测试php页面:
mysqladmin -uroot password "Rfd.com"
cd /var/www/html/
cat > index.php <<EOF
<?php
phpinfo();
?>
EOF
浏览器测试:http://10.230.248.181/index.php
安装rsyslog 连接MySQL数据库的模块,并导入rsyslog-mysql 数据库文件,rsyslog-mysql 为rsyslog 将日志传送到MySQL 数据库的一个模块。
yum install rsyslog-mysql wget vim rsync –y
cd /usr/share/doc/rsyslog-mysql-5.8.10/
mysql -uroot -pRfd.com <createDB.sql
mysql -uroot -p
创建rsyslog 用户在mysql下的相关权限
mysql> grant all on Syslog.* to rsyslog@localhost identified by 'Rfd.com';
mysql> grant all on Syslog.* to [email protected] identified by 'Rfd.com';
mysql> flush privileges;
配置服务端支持rsyslog-mysql 模块,并开启UDP服务端口获取网内其他LINUX系统
日志
配置之前先备份原文件:
cp /etc/rsyslog.conf /etc/rsyslog.conf.bak
vim /etc/rsyslog.conf
$ModLoad ommysql
*.* :ommysql:localhost,Syslog,rsyslog,Rfd.com
在 #### MODULES #### 下添加上面两行。
#说明:localhost 表示本地主机,Syslog 为数据库名,rsyslog 为数据库的用户,Rfd.com为该用户密码。
开启相关日志模块
vim /etc/rsyslog.conf
$ModLoad immark #immark是模块名,支持日志标记
$ModLoad imudp #imupd是模块名,支持udp协议
$UDPServerRun 514 #允许514端口接收使用UDP和TCP协议转发过来的日志
配置客户端
rsyslog默认已安装,备份原文件后直接打开配置即可。
# vim /etc/rsyslog.conf
*.* @10.230.248.181
#行尾新增上面这行内容,即客户端将本地日志发送到服务器。
服务端和客户端重启rsyslog:
/etc/init.d/rsyslog restart
查看端口需要加参数-u:
然后在客户端执行几个测试命令去服务端查看是否接收到执行命令的信息日志,
tail /var/log/messages
以上结果表示测试OK。
安装LogAnalyzer
wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.6.tar.gz
tar zxf loganalyzer-3.6.6.tar.gz
cd loganalyzer-3.6.6
mkdir -p /var/www/html/loganalyzer
rsync -a src/* /var/www/html/loganalyzer/
浏览器输入:http://10.230.248.181/loganalyzer/
提示没有配置文件,点击 here 利用向导生成
第一步,测试系统环境,点击next
提示错误:缺少config.php 文件,并且权限要设置为666,可以使用contrib目录下的configure.sh 脚本生成
查看configure.sh 文件内容
需要在/var/www/html/loganalyzer/ 下创建config.php 文件,并设置其权限为666
touch /var/www/html/loganalyzer/config.php
chmod 666 /var/www/html/loganalyzer/config.php
做完上面的操作之后,执行 ReCheck 操作,config.php 文件可写,点击 Next 进入下一步
第三步,基础配置, Enable User Database点击yes
在User Database Options 中,填入上面设置的参数,然后点击 Next.
第四步,创建表, 点击 Next 开始创建表
第五步,检查SQL结果,继续点击next
第六步,创建管理用户(admin;Rfd.com)点击next
第七步,创建第一个系统日志source.下面一定要注意“SystemEvents”大小写
第八步,完成
这时再去客户端随便执行几个命令就会在web界面显示出来;
下面两个报错,就是第七步错了,建议一开始做个快照,便于重来。
为LogAnalyzer添加源IP
1、数据库修改
LogAnalyzer 默认表字段只有一个 FromHost,我们在添加一个 FromIP,用于记录源IP地址。
mysql -u root -p
mysql> USE Syslog;
mysql> ALTER TABLE SystemEvents ADD FromIP VARCHAR(60) DEFAULT NULL AFTER FromHost;
Parsed in 0.004 seconds at 22.45 KB/s
2、修改rsyslog.conf
rsyslog 默认情况下插入语句没有 FromIP字段,我们修改插入SQL 语句添加 FromIP字段即可,
$template insertpl,"insert into SystemEvents (Message, Facility, FromHost, FromIP, Priority, DeviceReportedTime, ReceivedAt,InfoUnitID, SysLogTag) values ('%msg%', %syslogfacility%, '%HOSTNAME%', '%fromhost-ip%', %syslogpriority%, '%timereported:::date-mysql%', '%timegenerated:::date-mysql%', %iut%, '%syslogtag%')",SQL
$ModLoad ommysql
*.* :ommysql:localhost,Syslog,root,123456;insertpl #这个只需要加后面insertpl字段就可以;
#注意添加的时候别有换行符,上面这些文字都在一行上
3、LogAnalyzer添加源IP地址
添加Fields
添加views
添加DBMappings,用于建立字段对应关系
修改数据源配置 修改默认 Table type =>> MonitorWare, 修改为 NewSyslog 也就是上面新添加的NewSyslog。
查看日志选择 Select View => NewSyslog, 此时我们可以同时查看 源主机和源IP地址了