標籤:
隨著機房內的伺服器和網路裝置增加,日誌管理和查詢就成了讓系統管理員頭疼的事。
系統管理員遇到的常見問題如下:
1、日常維護過程中不可能登入到每一台伺服器和裝置上去查看日誌;
2、網路裝置上的儲存空間有限,不可能儲存日期太長的日誌,而系統出現問題又有可能是很久以前發生的某些操作造成的;
3、在某些非法入侵的情況下,入侵者一般都會清除本地日誌,清除入侵痕迹;
4、zabbix等監控系統無法代替日誌管理,無法監控如系統登入、計劃任務執行等項目。
基於上述原因,在當前的網路環境中搭建一台用於日誌集中管理的RsyslogLog Service器就顯得十分有必要了。
Rsyslog服務的優點如下:
1、Rsyslog伺服器可以大多數的網路裝置支援,在網路裝置的系統裝置選項中大多都有遠程Log Service的配置選項。只需要填寫上IP地址和連接埠(大多數裝置已經預設是514了),然後確定就可以了;
2、Linux伺服器只需要在本地的Rsyslog服務配置中加入簡單的一行就可以將日誌發送到Log Service器,布署和配置起來十分簡單;
3、通過軟體(如evtsys)也可以支援Windows伺服器,布署和配置也不是很難,但是有些軟體是要收費的;
4、搭配前端的loganalyzer等軟體,可以輕鬆實現圖形化管理和查詢日誌。
二、系統內容及軟體版本:
Rsyslog_server: CentOS7.2
Rsyslog_server IP:192.168.253.160
Rsyslog_client: CentOS7.2 + Windows7
所用軟體:
Rsyslog Version: rsyslog-7.4.7-12.el7.x86_64
LogAnalyzer Version: loganalyzer-3.6.5.tar.gz
MySQL Version:MySQL5.7
Httpd Version:httpd-2.4.6-40.el7.centos.x86_64
PHP Version:php-5.4.16-36.el7_1.x86_64
三、環境準備:
3.1 關閉防火牆:
# systemctl stop firewalld
3.2 將SELINUX設定為disabled
# setenforce 0# sed -i ‘s#SELINUX=enforcing#SELINUX=disabled#g‘ /etc/selinux/config
四、配置LAMP環境:
4.1 安裝MySQL,由於CentOS7預設會安裝Mariadb,因此使用MySQL官方提供快速的安裝方法,地址:http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/
# mkdir /home/rsyslog_server/tools -p #建立下載檔案存放目錄
# cd /home/rsyslog_server/tools
# yum install wget -y
# wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
# rpm -Uvh mysql57-community-release-el7-8.noarch.rpm #安裝MySQL官方yum倉庫
# yum install mysql-community-server -y #安裝MySQL
# systemctl start mysqld.service
# systemctl status mysqld.service
# grep ‘temporary password‘ /var/log/mysqld.log #查看初始密碼
# mysql -u root -p
>ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘MyNewPass4!‘; #更改密碼,密碼需要符合以下規則:至少一個大寫字母,一個小寫字母,一個數字,一個特殊字元,而且密碼長度需要超過8位
4.2 安裝Apache及PHP
# yum install httpd -y# yum install php php-gd php-xml php-mysql -y
4.3 啟動服務並加入開機自啟動:
# systemctl start httpd.service# systemctl enable httpd.service# systemctl start mysqld.service# systemctl enable mysqld.service
4.4 測試PHP環境
# vi index.php <?php phpinfo() ?>
在瀏覽器中輸入http://192.168.253.160/index.php,若顯示以下內容,則配置成功。
五、檢查並安裝服務端軟體
5.1 檢查是否安裝了rsyslog軟體
# rpm -qa rsyslog #CentOS7預設會安裝rsyslog
5.2 安裝rsyslog 串連MySQL資料庫的模組
# yum install rsyslog-mysql -y #rsyslog使用此模組將資料傳入MySQL資料庫,必須安裝
六、設定管理員端
6.1 匯入rsyslog-mysql 資料庫檔案
# cd /usr/share/doc/rsyslog-7.4.7/# mysql -uroot -p<mysql-createDB.sql# Enter password:
6.2 登入資料庫查看:
mysql> show databases;
mysql> show tables;
匯入資料庫操作建立了Syslog 庫並在該庫中建立了兩張空表SystemEvents 和SystemEventsProperties。
6.3 在MySQL下建立rsyslog使用者並授權:
mysql> grant all on Syslog.* to [email protected]‘localhost‘ identified by ‘MyNewPass4!‘;mysql> flush privileges;mysql> exit
6.4 佈建服務端支援rsyslog-mysql 模組,並開啟UDP服務連接埠擷取網內其他LINUX系統日誌;
# vi /etc/rsyslog.conf #按如下變更 #### MODULES #### $Modload ommysql *.* :ommysql:localhost,Syslog,rsyslog,MyNewPass4! #localhost 表示本地主機,Syslog 為資料庫名,rsyslog 為資料庫的使用者,123456為該使用者密碼。 $ModLoad immark # immark是模組名,支援日誌標記 $ModLoad imudp #imupd是模組名,支援udp協議 $UDPServerRun 514 #允許514連接埠接收使用UDP和TCP協議轉寄過來的日誌
6.5 重啟rsyslog服務
# systemctl restart rsyslog.service
七、配置用戶端
7.1 檢查用戶端有沒有安裝rsyslog
# rpm -qa rsyslog
7.2 配置rsyslog用戶端發送本地日誌到服務端
# vi /etc/rsyslog.conf *.* @192.168.253.160:514 #在檔案結尾處增加此內容
7.3 重啟rsyslog服務
# systemctl restart rsyslog.service
7.4 編輯/etc/bashrc,將用戶端執行的所有命令寫入系統日誌/var/log/messages中
# vi /etc/bashrc export PROMPT_COMMAND=‘{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }‘ #在結尾處加上此內容
設定使其生效
# source /etc/bashrc
八、測試rsyslog_server可否正常接收rsyslog_client的日誌
rsyslog_client執行以下操作:
rsyslog_server查看:
說明服務端可以正常接收用戶端的日誌。
九、安裝LogAnalyzer
# cd /home/rsyslog_server/tools/# wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.5.tar.gz# tar zxf loganalyzer-3.6.5.tar.gz# cd loganalyzer-3.6.5# mkdir -p /var/www/html/loganalyzer# cp -a src/* /var/www/html/loganalyzer/
十、在瀏覽器中進行安裝LogAnalyzer
10.1 開啟瀏覽器,輸入http://192.168.253.160/loganalyzer
提示無設定檔,點擊here按鈕產生;
10.2 點擊next進行系統內容測試:
此處提示沒有config.php檔案,使用contrib中的configure.sh指令碼可產生;
# cd contrib/# cp configure.sh /var/www/html/loganalyzer/# cd /var/www/html/loganalyzer/# sh configure.sh
此部分操作在/var/www/html/loganalyzer/目錄下建立config.php檔案並配置許可權為666,也可以使用mkdir及chmod命令執行。
10.3 繼續下一步,填寫資料庫資訊
點擊next產生資料庫中的表;
10.4 設定管理員
10.5 建立第一個系統日誌source
10.6 完成
Rsyslog + LogAnalyzer Log Service器部署完畢,可根據需要進行設定。
更多詳情請諮詢 鼎峰胡佳雄
TEL.18824258907
QQ.2881064155
CentOS7下利用rsyslog+loganalyzer配置Log Service器及Linux和windows用戶端配置