rsyslog + mysql

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

You May Also Like