在web服务器上搭建了vsftpd用来上传代码程序,开启日志记录客户端的上传、下载删除等操作;
#修改/etc/vsftpd/vsftpd.conf[root@node1 ~]# vim /etc/vsftpd/vsftpd.confanonymous_enable=NOanon_root=/ftpanonlocal_enable=YESwrite_enable=YESlocal_umask=022dirmessage_enable=YESdual_log_enable=yes #↙#启用/var/log/vsftpd.log和/var/log/xferlog双份日志,#xferlog是wu-ftpd类型的传输日志,而vsftpd.log是vsftpd自己类型的日志;xferlog_enable=YESconnect_from_port_20=YESxferlog_std_format=YESlisten=YESpam_service_name=vsftpduserlist_enable=YEStcp_wrappers=YESuse_localtime=yes #↙#默认时间为GST与本地时间存在时差记录日志时可能不方便区分时间,开启该选项使用本地时间,chroot_local_user=yes
进行连接、上传、下载、删除测试:
#连接
[root@node1 ~]# cat /var/log/vsftpd.log Thu Jun 26 10:40:10 2014 [pid 2011] CONNECT: Client "192.168.1.60"Thu Jun 26 10:40:10 2014 [pid 2010] [www] OK LOGIN: Client "192.168.1.60"#上传test.txt文件[root@node1 ~]# tail -f /var/log/vsftpd.log Thu Jun 26 10:41:39 2014 [pid 2012] [www] OK UPLOAD: Client "192.168.1.60", "/test.txt", 12 bytes, 0.84Kbyte/sec#下载test.txt文件[root@node1 ~]# tail -f /var/log/vsftpd.log Thu Jun 26 10:43:15 2014 [pid 2012] [www] OK DOWNLOAD: Client "192.168.1.60", "/test.txt", 12 bytes, 13.23Kbyte/sec #删除test.txt文件[root@node1 ~]# tail -f /var/log/vsftpd.log Thu Jun 26 10:43:56 2014 [pid 2012] [www] OK DELETE: Client "192.168.1.60", "/test.txt"
查看xferlog日志:
[root@node1 ~]# cat /var/log/xferlog
Thu Jun 26 10:41:39 2014 1 192.168.1.60 12 /test.txt a _ i r www ftp 0 * cThu Jun 26 10:43:15 2014 1 192.168.1.60 12 /test.txt a _ o r www ftp 0 * c分析xferlog日志:
Thu Jun 26 10:43:15 2014 :时间
1:传输文件所用时间
192.168.1.60:客户端ip
12:文件大小,单位为byte
/test.txt:文件名,传输到的路径
a:文件传输类型:a为ASCII传输,b为二进制传输
i:传输方向:i为从客户端到服务器(上传); o为从服务器到客户端(下载)
r:访问用户类型:a为匿名用户;g来宾用户;r真实本地用户;
www:用户名
ftp:服务名
0:认证方式:0为无; 1为RFC931认证
*:认证用户的id; *为未获取到
c:传输状态; c表示传输完成