2019-02-06 CentOS7+Rsyslog+Mysql+Loganalyzer安装配置

讲一下实施环境。三台虚拟机,一台安装数据库,一台配置为rsyslog服务器,同时做备份服务器,最后一台安装apache和loganalyzer。

1、数据库服务器安装mariadb

yum install mariadb-server
systemctl start mariadb.service
#运行安全脚本
mysql_secure_installation 

2、日志服务器修改配置文件
日志服务器自身已有rsyslog,但默认不接受其他主机传来的日志信息。只需要稍微修改下配置文件,加载TCP、UDP模块,监听端口,就可以接收其他主机传来的日志信息。

# 我只加载了UDP模块
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514

Rsyslog默认将日志文件存储在本地,可以通过配置文件改为存储在MySQL数据库中。需要安装rsyslog-mysql软件包。

 yum install rsyslog-mysql mariadb
 rpm -ql rsyslog-mysql
#上面命令可以看到生成2个文件。一个是模块、一个是初始化数据库的SQL语句
[root@syslog-centos ~]#  rpm -ql rsyslog-mysql
/usr/lib64/rsyslog/ommysql.so
/usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

3、在数据库服务器上创建用户

[axing@mysql-cfl ~]$ mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 83
Server version: 5.5.60-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

[axing@mysql-cfl ~]$ mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 83
Server version: 5.5.60-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> grant all on Syslog.* to loguser@'xx.xxx.xxx.%' identified by 'password';
#这里填写日志服务器地址,创建loguser用户和设定密码

4、现在可以在日志服务器上通过MYSQL创建日志数据库了

mysql -uloguser -ppassword -hxx.xxx.xxx.xxx < /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

前面都没错的话,现在数据库服务器里就有Syslog数据库了

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| Syslog             |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.00 sec)

MariaDB [(none)]>

5、日志服务器修改配置文件链接数据库
同样是更改/etc/rsyslog.conf

#要放在#### GLOBAL DIRECTIVES ####前面,
#增加数据库模块:
$ModLoad ommysql
#### RULES ####
*.info;mail.none;authpriv.none;cron.none
*.*          :ommysql:xx.xxx.xxx.xxx,Syslog,loguser,passwd

重启服务 systemctl restart rsyslog
这时logger触发日志时,日志服务器将会把日志写入远程数据库Syslog里。
6、WEB服务器安装loganalyzer
先安装httpd和php

[root@syslog-http axing]# yum install httpd php php-mysql php-gd
[root@syslog-http axing]# systemctl start httpd

下载解压loganalyzer软件,现在是4.1.7稳定版


[root@syslog-http ~]# wget http://download.adiscon.com/loganalyzer/loganalyzer-4.1.7.tar.gz
--2019-02-05 19:30:43--  http://download.adiscon.com/loganalyzer/loganalyzer-4.1.7.tar.gz
Resolving download.adiscon.com (download.adiscon.com)... 138.201.116.127, 2a01:4f8:c17:44a6::2
Connecting to download.adiscon.com (download.adiscon.com)|138.201.116.127|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2869395 (2.7M) [application/x-gzip]
Saving to: ‘loganalyzer-4.1.7.tar.gz’

100%[==============================================>] 2,869,395   --.-K/s   in 0.1s

2019-02-05 19:30:43 (21.6 MB/s) - ‘loganalyzer-4.1.7.tar.gz’ saved [2869395/2869395]

[root@syslog-http ~]# tar xzvf loganalyzer-4.1.7.tar.gz

[root@syslog-http ~]# cd loganalyzer-4.1.7/
[root@syslog-http loganalyzer-4.1.7]# ls
ChangeLog  contrib  COPYING  doc  INSTALL  src
[root@syslog-http loganalyzer-4.1.7]# mv src/ /var/www/html/log/

现在我们已经把软件安装到了/var/www/html/log/目录下,看一下安装软件要我们做什么

[root@syslog-http log]# cat /root/loganalyzer-4.1.7/contrib/configure.sh
#!/bin/sh

touch config.php
chmod 666 config.php
#需要创建一个空配置文件,照做

然后访问web服务器,http://<IP address>/log/install.php, 图形化安装界面很简单,填好数据库信息,几步就好了。
再去访问http://<IP address>/log/,就可以看到软件界面了。

另外还有一个文件:

[axing@syslog-http ~]$ sudo cat /root/loganalyzer-4.1.7/contrib/secure.sh
#!/bin/sh
chmod 644 config.php

意思为了安全,安装完以后改一下/var/www/html/log/config.php的权限。

至此,服务器部分就全部搞定了,下面简单列一下主机和路由器发送日志的配置案例。
服务器:

vim /etc/rsyslog.conf
#在这之前#### GLOBAL DIRECTIVES ####增加
*.info;mail.none;authpriv.none;cron.none                @xx.xxx.xxx.84
*.info;mail.none;authpriv.none;cron.none                 /var/log/messages
authpriv.*                                    /var/log/secure
mail.*                                        /var/log/maillog
cron.*                                        /var/log/cron
*.emerg                                       *
uucp,news.crit                          /var/log/spooler
local7.*                                      /var/log/boot.log

重启服务systemctl restart rsyslog
Huawei 路由器用info-center命令
info-center loghost xx.xxx.xxx.xx
仅供参考

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容