配置Syslog爲路由交換的日誌服務器

 配置Syslog爲路由交換的日誌服務器vim

 
簡介
   TFTP(Trivial File Transfer Protocol,簡單文件傳輸協議)是TCP/IP協議族中的一個用來在客戶機與服務器之間進行簡單文件傳輸的協議,提供不復雜、開銷不大的文件傳輸服務。端口號爲69。
Rsyslog是一個自由軟件,GPL的lincesed加強的syslogd。其中,它提供了MySQL和徹底可配置的輸出格式(包括大時間戳)的支持。 Rsyslog發起Rainer的格哈茨。據叉從標準的sysklogd包。rsyslog項目的目標是提供一個更可靠的系統日誌守護進程和配置。所謂「可靠」,是指支持如TCP或RFC 3195(系統日誌可靠)可靠的傳輸模式。咱們這樣作並不意味着不可靠的sysklogd包。
 
1、環境介紹
路由器IP:10.2.0.65
服務器(Linux):10.2.0.68
 
2、tftp配置
[root@localhost ~]# yum -y install tftp*
配置tftp
[root@localhost ~]# vim /etc/xinetd.d/tftp
service tftp
{
        disable = no
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /Routing -c
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
重啓服務
[root@localhost ~]# service xinetd restart
查看服務器是否正常啓動
[root@localhost ~]# ps -ef | grep xinetd | grep -v grep
root     27863     1  0 Aug13 ?        00:00:00 xinetd -stayalive -pidfile /var/run/xinetd.pid
[root@localhost ~]# lsof -i:514
COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
rsyslogd 8971 root    3u  IPv4 2099134      0t0  UDP *:syslog 
rsyslogd 8971 root    4u  IPv6 2099135      0t0  UDP *:syslog 
 
3、配置rsyslog服務
[root@localhost ~]# vim /etc/sysconfig/rsyslog 
SYSLOGD_OPTIONS="-r -x -m 0"
加上"-r" 表示接收遠程的日誌
[root@localhost ~]# vim /etc/rsyslog.conf 
將這兩行的註釋去掉
$ModLoad imudp.so
$UDPServerRun 514
local7.*                       /Routing/Cisco.log
注:local7的定義(使用tcpdump查看)
[root@localhost ~]# tcpdump host 10.2.0.65 and udp port 514
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
13:53:11.202058 IP 10.2.0.65.vat > 10.2.0.68.syslog: SYSLOG local7.info, length: 110
13:53:14.032234 IP 10.2.0.65.vat > 10.2.0.68.syslog: SYSLOG local7.warning, length: 453
13:53:14.033748 IP 10.2.0.65.vat > 10.2.0.68.syslog: SYSLOG local7.warning, length: 412
13:53:16.202211 IP 10.2.0.65.vat > 10.2.0.68.syslog: SYSLOG local7.info, length: 110
最後重啓啓動rsyslog服務
[root@localhost ~]# service rsyslog restart
 
4、結果驗證
[root@localhost ~]# tailf /Routing/Cisco.log 
看是否能夠正常打印日誌。
 
5、日誌切割
將Cisco.log文件爲每一個文件10000行的文件。
#!/bin/bash
DATE_LOG=`date -d yesterday +%F`
LOG_DIR="/logs/Routing/$DATE_LOG"
if [ ! -e /logs/$DATE_LOG ];then
mkdir -p /logs/Routing/$DATE_LOG
fi
lines=`wc -l /Routing/Cisco.log | awk -F " " '{print $1}'`  
i=1
file=1
while [ $i -lt $lines ]   
 do
   i2=`expr $i + 9999`
   sed -n "${i},${i2}p" /Routing/Cisco.log  >  /logs/Routing/$DATE_LOG/Cisco_$file.log    
   i=`expr $i2 + 1`
   file=`expr $file + 1`
  done
a=`echo $?`
if [ "$a"x == "0"x ];then
> /Routing/Cisco.log
fi
cd $LOG_DIR
tar zcvf "$DATE_LOG".tar.gz *.log
rm -rf *.log
相關文章
相關標籤/搜索