做這個實驗需要三臺機器,我做實驗的環境如下:
centos7.3安裝數據庫
centos6.8 Yum install rsyslog-mysql
centos6.9 實現 lap
實驗開始:
centos7.3
安裝數據庫: yum install mariadb-server
運行安全腳本mysql_secure_installtion
在mysql server 上授權rsyslog 能連接至cnetos6.8服務器
mysql> GRANT ALL ON Syslog.* TO'USER'@'HOST' IDENTIFIED BY 'PASSWORD';
centos6.8
爲了連接數據庫在rsyslog 服務器上安裝mysql 模塊相關的程序包 yuminstall rsyslog-mysql
createDB.sql這個腳本定義了數據庫的名字和表名
centos7上只有本地用戶,不能遠程登錄,所以要把這個腳本拷貝到centos7上
centos7.3
爲rsyslog 創建數據庫及表;
mysql -uUSERNAME -hHOST -pPASSWORD </usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql
在mysql server (cnetos7.3) 上授權rsyslog 能連接至cnetos6.8服務器
mysql> GRANT ALL ON Syslog.* TO'USER'@'HOST' IDENTIFIED BY 'PASSWORD';
centos6.8
配置rsyslog 將日誌保存到mysql中
修改配置文件Vim /etc/rsyslog.conf
#### MODULES ####
$ModLoad ommysql
#### RULES ####
facility.priority:ommysql:DBHOST,DBNAME,DBUSER, PASSWORD
測試一下:centos6.8 logger "I have a good feel!"
cnetos7:
注意:centos6.8中也要裝MySQL,因爲centos7屬於服務端,centos6.8屬於客戶端
centos6.9
(1)在rsyslog 服務器上準備lap 或nmp 組
yum install httpd php php-mysql php-gd
啓動服務:service httpd start
測試一下lap
寫一個php文件:
<?php
phpinfo();
?>
測試結果如下:
centos7
在數據庫中授權centos6.9,使之可以連接數據庫。
安裝LogAnalyzer
tar xf loganalyzer-4.1.5.tar.gz
cp -a loganalyzer-4.1.5/src
/var/www/html/loganalyzer
cd /var/www/html/loganalyzer
touch config.php
chmod 666 config.php
填寫數據庫的信息,千萬別寫錯了,注意大小寫。
(3) 配置loganalyzer
systemctl start httpd.service