centos 7.0 依賴Rsyslog+LogAnalyzer部署日誌服務器
Loganalyzer簡介:
LogAnalyzer 是一款syslog日誌和其他網絡事件數據的Web前端。它提供了對日誌的簡單瀏覽、搜索、基本分析和一些圖表報告的功能。數據可以從數據庫或一般的syslog文本文件中獲取,所以LogAnalyzer不需要改變現有的記錄架構。基於當前的日誌數據,它可以處理syslog日誌消息,Windows事件日誌記錄,支持故障排除,使用戶能夠快速查找日誌數據中看出問題的解決方案。
LogAnalyzer 獲取客戶端日誌會有兩種保存模式,一種是直接讀取客戶端/var/log/目錄下的日誌並保存到服務端該目錄下,一種是讀取後保存到日誌服務器數據庫中,推薦使用後者。
LogAnalyzer 采用php開發,依賴LAMP安裝環境。
安裝環境:
系統: centos 7.0 最小化安裝
軟件:rsyslog 、loganalyzer 、 LAMP環境
依賴包:rsyslog-mysql 、
配置rsyslog 日誌服務器端
安裝、調配LAMP環境
請參考前文 Centos 7.0 編譯安裝LAMP(Linxu+apache+mysql+php)之源碼安裝
配置日誌服務器端
a.檢查並安裝服務器端軟件
[[email protected] ~]# rpm -qa |grep rsyslog #檢查服務器端是否有安裝rsyslog 服務 ,默認centos 7.0 均已安裝
rsyslog-7.4.7-16.el7.x86_64
[[email protected] ~]# yum install -y rsyslog rsyslog-mysql #更新rsyslog 、安裝rsyslog-msyql 模塊,rsyslog-mysql 為rsyslog 將日誌傳送到MySQL 數據庫的一個模塊,必須安裝。
b.導入rsyslog-mysql 文件到mysql數據庫
[[email protected] src]# cd /usr/share/doc/rsyslog-7.4.7/ #進入rsyslog安裝目錄
[[email protected]
Enter password:
[[email protected] libmcrypt-2.5.8]mysql -u root -p #登錄mysql 數據庫
Enter password:
mysql> use Syslog; #切換到Syslog數據庫
mysql> show tables; #顯示Syslog 數據庫列表 ,例:下圖證明mysql-createDB.sql 文件導入成功 ,顯示2張空表
+------------------------+
| Tables_in_Syslog |
+------------------------+
| SystemEvents |
| SystemEventsProperties |
+------------------------+
2 rows in set (0.01 sec)
mysql> grant all on Syslong.* to [email protected] identified by ‘123abc.com‘; #創建Syslog數據庫rsyslog用戶並授於管理權限
mysql> flush privileges;
c. 配置服務端支持rsyslog-mysql 模塊,並開啟tcp、udp服務端口獲取網內其他LINUX系統日誌
[[email protected] src]# vi /etc/rsyslog.conf
在 #### MODULES #### 下添加下面兩行。
$ModLoad ommysql
*.* :ommysql:localhost,Syslog,rsyslog,*****
#說明:localhost 表示本地主機,Syslog 為數據庫名,rsyslog 為數據庫的用戶,*****為該用戶密碼。
$ModLoad immark # provides --MARK-- message capability #開啟支持日誌標記,刪除改行首字符#
# Provides UDP syslog reception
$ModLoad imudp #開啟支持UDP協議
$UDPServerRun 514 #允許514端口接受udp協議轉發日誌
# Provides TCP syslog reception
$ModLoad imtcp #開啟支持TCP協議
$InputTCPServerRun 514 #允許514端口接受tcp協議轉發日誌
d. 重啟rsyslog 服務
[[email protected] ~]# systemctl restart rsyslog.service
linux服務器客戶端、華為交換機日誌配置
檢查linux客戶端是否安裝rsyslog 組件
[[email protected] ~]# rpm -qa |grep rsyslog #檢查客戶端是否有安裝rsyslog 服務 ,默認centos 7.0 均已安裝
rsyslog-7.4.7-16.el7.x86_64
配置rsyslog客戶端發送本地日誌到服務端
[[email protected] ~]# Vi /etc/rsyslog.conf
*.* @172.16.10.10:514 #添加改行內容,其中 @代表了udp 協議,@@ 代表了tcp協議 ,ip地址為日誌服務器ip ,514 為接收日誌端口號
c. 重啟rsyslog 服務
[[email protected] ~]# systemctl restart rsyslog.service
d. 編輯/etc/bashrc,將客戶端執行的所有命令寫入系統日誌/var/log/messages中
[[email protected] ~]#vi /etc/bashrc
export PROMPT_COMMAND=‘{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }‘ #在結尾處加上此內容,輸出日誌格式
[[email protected] ~]source /etc/bashrc #使配置生效
華為系列交換機、防火墻客戶端日誌配置
[1-HX]info-center channel 2 name loghost1 #定義channel信道 2級別
[1-HX]info-center loghost source Vlanif1 #定義轉發日誌出口為vlanif1
[1-HX]info-center loghost 172.16.10.10 channel 2 #定義日誌服務器ip地址
開啟防火墻514端口,測試rsyslog_server可否正常接收rsyslog_client的日誌
[[email protected] ~]#vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 514 -j ACCEPT #接收tcp協議 日誌
-A INPUT -p udp -m state --state NEW -m udp --dport 514 -j ACCEPT #開通514端口,接收udp協議 日誌
[[email protected] ~]systemctl restart iptables.service #重啟防火墻服務
[[email protected] ~]tailf /var/log/messages #查看日誌,證明日誌服務器可正常接收客戶端發來的日誌信息
Jul 12 12:47:41 zabbix root: [euid=root]:root pts/0 2017-07-12 12:21 (172.16.10.1):[/root]ls
Jul 12 12:47:42 zabbix root: [euid=root]:root pts/0 2017-07-12 12:21 (172.16.10.1):[/root]ls
安裝LogAnalyzer
上傳loganalyzer-4.1.3.tar 到目錄 /usr/local/src ,解壓 。復制
[[email protected] src]# tar -zxf loganalyzer-4.1.3.tar.gz
[[email protected] src]# mkdir /usr/local/apache/htdocs/loganalyzer #創建loganalyzer 目錄
[[email protected] src]# cd loganalyzer-4.1.3
[[email protected] loganalyzer-4.1.3]# cp -a ./src/* /usr/local/apache/htdocs/loganalyzer/ #復制src文件夾到loganalyzer 目錄
在瀏覽器 登錄http://localhost/loganalyzer 進行安裝配置
具體配置請參考官方文檔:https://tecadmin.net/setup-loganalyzer-with-rsyslog-and-mysql/
在step 2安裝過程中 ,提示file‘./config.php‘ File does NOT exist! 解決方法:創建./config.php文件並調配權限
[[email protected] loganalyzer-4.1.3]# cd /usr/local/apache/htdocs/loganalyzer/
[[email protected] loganalyzer]# touch config.php
[[email protected] loganalyzer]# chown root:root config.php
[[email protected] loganalyzer]# chmod 777 config.php
在step 3、step 7步驟需註意各name 名稱 ,註意字母大小寫:
Database name : Syslog
Database user : rsyslog
Database password: 123abc.com
Database tablename :SystemEvents
點擊finish 完成配置 ,輸入配置的管理員賬戶和密碼 ,進入web 查看頁面 。
至此 ,Rsyslog+LogAnalyzer日誌服務器部署並安裝完成 ,可進一步根據需要進行loganalyzer 的配置。
本文出自 “ITCol_XiaoYu” 博客,請務必保留此出處http://itcolxiaoyu.blog.51cto.com/11439802/1946621
centos 7.0 依賴Rsyslog+LogAnalyzer部署日誌服務器