1. 安裝MySQL
a. ./configure –prefix=/usr/local/mysql –with-charset=utf8
b. make install
2. 配置MySQL,增加一個隻寫的賬號和一個隻讀的賬號,隻寫的賬號是給rsyslog往mysql裡面寫日志,隻讀的賬號是前端web頁面用的
GRANT INSERT ON Syslog.* TO 'rsyslog_write'@'localhost' IDENTIFIED BY 'password_123456';
GRANT SELECT ON Syslog.* TO 'rsyslog_read'@'localhost' IDENTIFIED BY 'password_234567';
3. 安裝rsyslog
a. https://www.rsyslog.com/ 上下載最新版本
b. PATH=$ PATH:/usr/local/mysql/bin # 因為MySQL手工安裝,不在環境變量中,而rsyslog的configure會從環境變量中找MySQL的lib
c. ./configure –prefix=/usr/local/rsyslog –enable-mysql # 打開MySQL支持,將日志寫到MySQL中可以在前端web上直接展示,報表
d. Make install
e. Mysql -u root -p < ./plugins/ommysql/createDB.sql # 導入db結構
f. Cp rsyslog.conf /etc/ # 默配置文件
g. ln -s /usr/local/rsyslog/sbin/rsyslogd /sbin/rsyslogd # 這一步可用可不用
4. 配置rsyslog
a. 在/etc/rsyslog.conf最上面加上$ ModLoad ommysql 載入mysql支持的模塊
b. 去掉/etc/rsyslog.conf內以下兩行前的#號,打開udp監聽端口
$ ModLoad imudp.so # provides UDP syslog reception
$ UDPServerRun 514 # start a UDP syslog server at standard port 514
c. 增加/etc/rsyslog.conf下面兩行,將local7和user的日志寫到mysql中
local7.* :ommysql:127.0.0.1,Syslog,rsyslog_write,password_123456
user.* :ommysql:127.0.0.1,Syslog,rsyslog_write,password_123456
d. 去掉鏈接錯的日志示例
:msg, contains, "error: connect" ~
5. 替換syslog 為rsyslog
a. 由於rsyslog沒有附帶啟動腳本,我做瞭如下修改
b. Cp /etc/init.d/syslog /etc/init.d/syslogd #保留老的的syslog啟動文件,以備要恢復時使用
c. 編輯/etc/init.d/syslog 將裡面路徑有關的全改成/usr/local/rsyslog/sbin/rsyslogd 如果你上面3.g這一步做瞭鏈接,就可以隻把syslog改為rsyslogd
d. 這樣修改完後就是先停掉老的syslog,再啟用新的rsyslog瞭
e. /etc/init.d/syslogd stop; # 停掉系統自帶的
f. /etc/init.d/syslog start # 啟用新的rsyslog
6. 修改iptables ,增加udp54端口出入,防止被人強x
a. Iptables -A RH-Firewall-1-INPUT -s 1.2.0.0/255.255.0.0 -p udp -m udp –dport 514 -j ACCEPT
b. Iptables -A RH-Firewall-1-INPUT -s 3.4.0.0/255.255.0.0 -p udp -m udp –dport 514 -j ACCEPT
7. 安裝phplogcon
a. https://www.phplogcon.org/ 上下載最新版本
b. 解壓到某個目錄,並配置好apache的vhost,這些步驟就不寫瞭,比較平常的操作
c. 訪問https://127.0.0.1/install.php 安裝,填上mysql的賬號和密碼就行瞭,其他選項都默認。
8. 配置日志客戶端
a. 在web服務器上echo 'kern.*;user.* @1.2.3.4' >> /etc/syslog.conf
b. /etc/init.d/syslog reload #重啟syslogd