参考来自:
the_script :https://yq.aliyun.com/articles/675198
名山、深处:https://www.cnblogs.com/skychenjiajun/p/8244099.html
所搭建的服务器所用到的镜像文件及软件:
CentOS镜像文件下载地址:http://mirror.nsc.liu.se/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso
一、部分公司会购买一个专业的硬件设备来搜集内网的所有网络设备、服务器等日志信息;但对于除了生产网以外并不重要的系统(如办公系统等),对于预算并不充足的情况下,单独购买一台服务器设备就有点奢侈了;
日志管理服务器可以解决以下问题:
1、不再需要逐台服务器去查询系统日志文件
2、将日常的系统信息存储在mysql数据中,方便进行查询、统计、审计过滤等操作
3、通过其他软件可以实现扩平台日志收集,如使用evtsys采集window日志发送到linux日志服务器上
4、在linux下rsyslog配置比较简单,维护较为容易。
5、rsyslog+loganalyzer可以实现前端图形化查询等操作.
二、rsyslog的安装与配置
使用yum安装相关程序包:
1、安装LAMP:
yum install mysql-server mysql-devel httpd,php-mysql php php-gd php-xml -y
2、安装rsyslog及驱动
yum install libcurl-devel net-snmp-devel rsyslog rsyslog-mysql -y
3、mysql-server
(1)网上下载mysql57-community-release-el7-11.noarch.rpm
并使用rpm安装:rpm -ivh mysql57-community-release-el7-11.noarch.rpm
(2)使用wget和yum进行下载和安装;
①使用wget下载
[root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm --2018-01-08 16:57:46-- https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 正在解析主机 dev.mysql.com (dev.mysql.com)... 137.254.60.11 正在连接 dev.mysql.com (dev.mysql.com)|137.254.60.11|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 302 Found 位置:https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm [跟随至新的 URL] --2018-01-08 16:57:48-- https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm 正在解析主机 repo.mysql.com (repo.mysql.com)... 23.1.165.122 正在连接 repo.mysql.com (repo.mysql.com)|23.1.165.122|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度:25680 (25K) [application/x-redhat-package-manager] 正在保存至: “mysql57-community-release-el7-11.noarch.rpm” 100%[==================================================================================================================================================================================================>] 25,680 --.-K/s 用时 0.1s 2018-01-08 16:57:48 (232 KB/s) - 已保存 “mysql57-community-release-el7-11.noarch.rpm” [25680/25680]) [root@localhost ~]#
②使用yum安装;
yum localinstall -y mysql57-community-release-el7-11.noarch.rpm
③查看Mysql源是否安装成功
[root@localhost ~]# yum repolist enabled | grep "mysql.*-community.*" mysql-connectors-community/x86_64 MySQL Connectors Community 42 mysql-tools-community/x86_64 MySQL Tools Community 55 mysql57-community/x86_64 MySQL 5.7 Community Server 227 [root@localhost ~]#
④安装Mysql服务
yum install -y mysql-community-server
⑤查看Mysql服务是否安装成功
[root@localhost ~]# systemctl status mysqld ● mysqld.service - MySQL Server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: inactive (dead) Docs: man:mysqld(8) http://dev.mysql.com/doc/refman/en/using-systemd.html [root@localhost ~]#
三、启动mysql服务:
1、初次启动时会在/var/log/mysqld.log随机生成root密码,使用grep 'password' '/var/log/mysqld.log'查看:
2、使用刚才找到的密码登录并修改root密码:
mysqladmin -u root password 'yourpassword'.
假设将root密码设为123456:
set password for root@'localhost'=password('12345678');
将会提示错误信息:
原因为mysql默认参数validate_password_policy=medium,将这个值设为0,set global validate_password_policy=0;修改就能使用较为简单的密码。
也可以不用手动设置这个值,直接配置一个复杂一点的密码就可以了(大小写都有+符号+数字)。
3、设置mysql默认字符集为UTF-8:编辑/etc/my.cnf文件,在[mysqld]下添加一行:
character-set-server = utf8 skip-name-resolve=on ###禁止域名解析(如果使用英文可以不用修改)
然后重启mysql服务:systemctl restart mysqld
4、使用刚才安装的rsyslog-mysql程序包文档目录下的sql文件创建rsyslog数据库:
使用rpm -ql rsyslog-mysql 查询并找到该sql文件
使用该文件创建数据库 mysql -u root -p < mysql-createDB.sql
创建的数据库名为:syslog
5、mysql中创建数据库Syslog的使用用户syslog并授权:
grant all on Syslog.* to 'syslog'@'127.0.0.1(本机IP)' identified by '111111(密码)';
flush privileges;
6、修改rsyslog配置文件:
vim /etc/sysconfig/rsyslog
添加两行:
SYSLOGD_OPTIONS="-c 2 -r -x -m 180"
KLOGD_OPTIONS="-x"
编辑rsyslog主配置文件/etc/rsyslog.conf:
在#### MODULES ####下进行以下操作:
取消ModLoadimudp、UDPServerRun 514 这2行的注释表示通过UPD协议的514端口接收日志文件。
添加$ModLoad ommysql 一行 #######配置服务端支持rsyslog-mysql模块
添加. :ommysql:127.0.0.1,Syslog,rsyslog,123456789
重启rsyslog:
systemctl restart rsyslog
四、loganalyzer的配置
1、在apache的默认documentRoot目录下创建loganalyzer目录:
mkdir -p /var/www/html/loganalyzer
创建loganalyzer日志目录:
mkdir -p /var/log/httpd/loganalyzer
2、官网上下载Loganalyzer解压到/usr/loca/src下:
wget http://download.adiscon.com/loganalyzer/loganalyzer-4.1.6.tar.gz
cd /usr/local/src
tar -zxvf loganalyzer-4.1.6.tar.gz
在解压后的loganalyzer-4.1.6目录内复制src/与contrib/下的所有文件到/var/www/html/loganalyzer目录下:
cp -r src/* /var/www/html/loganalyzer
cp -r contrib/* /var/www/html/loganalyzer
3、在/var/www/html/loganalyzer下创建config.php并设置权限:
touch config.php
chmod 666 config.php
4.在/etc/httpd/conf/httpd.conf文件为找到并修改配置为:
Listen 8080
DocumentRoot "/var/www/html/loganalyzer"
ErrorLog /var/log/httpd/loganalyzer/error.log
CustomLog /var/log/httpd/loganalyzer/access_log combined
重启httpd: systemctl restart httpd
5、浏览器上输入日志服务器ip+端口号:
点击next 到step3:
配置后数据库用户及密码,点击next。
step6:创建loganalyzer登录用户:
step7:
点击next并登录即可完成初始化配置:
6、可以在网上搜索下载loganalyzer3.6.5 中文语言包并将解压后的3个文件放在/var/www/html/loganalyzer/lang下并重启rsyslog即可使用loganalyzer中文界面:
7.修改客户端服务器/etc/rsyslog.conf文件实现将日志传输至构建好的日志服务器:
在#### RULES ####中添加配置:
@表示使用upd协议传输文件,划线部分为搭建的集中日志服务器ip.
也可以使用. @ip 表示所有日志文件都传输至日志服务器
8、刷新loganalyzer页面就可看到客户端服务器的日志信息也被记录到数据库中,构建完成.