Linux proftpd日志查看與分析
公司采用FTP的方式接收客戶的EDI訂單,近日客戶說某某訂單很久前已經通過FTP發送給我們了,為何還沒發貨,但經過我的反復檢查,沒發現FTP上有該訂單,但客戶堅持說已經上傳了,看來要解決此糾紛只有查看FTP上的操作日志,用數據來說話了。
公司FTP是基於Linux使用proftpd軟件來架設的,首先查看proftpd的配置文件:
vi /etc/proftpd.conf
得知Log文件的路徑,如上圖紅圈所示。
截取某個客戶ftp帳號操作部分的日志內容,並且另存到新文件裡:(下例中帳號為:ftpwbshop)
cat xferlog.processed|grep ftpwbshop > /home/ftpwbshop.log
可以得到多行如下的日志內容:
Thu Dec 3 10:46:32 2009 0 120.32.171.4 2236 /vhost/vhostroot/cycxm2/www/uploadfile/20090307132822145.jpg a _ d r cycxm2 ftp 0 * c
該記錄每一個參數分別對應如下:
current-time 傳輸發生時刻 Fri Jan 9 10:07:20 2004
transfer-time 傳輸持續時間 0 秒
remote-host 遠程 ftp 客戶機的地址 192.168.0.88
file-size 傳輸文件大小 320 B
file-name 傳輸文件名 /home/redflag/partitioninfo
transfer-type 傳輸類型 b 表示為二進制傳輸,a 表示 ascii 傳輸
special-action-flag 特殊行為標記 _ ,C 表示 被壓縮的文件、U 表示 未被壓縮、 T 表示被 tar 、_表示沒有特殊行為
direction 方向 i,為上傳,o為下載,d表示刪除
access- mode r 表示 為系統用戶,a 為 anonymous 用戶
username 用戶名 redflag
service-name 被調用的 ftp 服務器軟件名字
authentication-method 認證方式,0 表示沒有
authen- ticated-user-id * 表示 沒有認證用戶id
completion-status 傳輸完成狀態 c 表示完成,i 表示沒有完成