vsftp增加日志内容--权限管理的思考
1问题描述昨天刚向实验室的同学公开一个movie帐户,其实是想大家都能telnet,或ssh上,有空玩玩。没想到有人就用这个帐号在ftp上删除了文件。首先vsftp默认只有上下传记录,根本没有本地用户的删除或建目录的操做。这个在lastlog里也不会有痕迹。所以对公开账号千万不能同时是本地账号。如果是本地账号,那也要控制该账号确定文件的删除修改权限。不要让该用户对其他文件有破坏性权限。这种控制会积累很多管理漏洞,所以最好就是给虚拟用户,或者ftp只能使用匿名账号(当然,这个管理员可以灵活控制自己的使用权限)。因此在开放用户账号时要考虑日志的决定存在,不能出现这种漏空监控。出现这种问题的关键就是日志与服务没有绝对一致。比如ftp本来只是用来上传或下载,这里却还给了管理文件的权限,而vsftp对管理文件的却没有监控,太失败了。2 相关知识查阅vsftp的参数手册才知道是自己太无知。vsftpd与log有关的选项: vsftpd_log_file xferlog_enable xferlog_std_format xferlog_file dual_log_enable syslog_enable log_ftp_protocol no_log_lock 这里主要要到下面几个参数控制log_ftp_protocol如果启用, 假若选项 xferlog_std_format 没有启用, 所有的 FTP 请求和应答都会被记录. 此选项将对调试很有用.默认: YES dual_log_enable如果启用, 将生成两个相似的日志文件, 默认在 /var/log/xferlog 和 /var/log/vsftpd.log 目录下. 前者是 wu-ftpd 类型的传输日志, 可以用于 标准工具分析. 后者是 vsftpd 自己类型的日志.xferlog_enable如果启用, 将会维护一个日志文件, 用于详细记录上载和下载. 默认情况下, 这个日志文件是 /var/log/vsftpd.log. 但是也可以通过配置文件中的 vsftpd_log_file 选项来指定.默认: NO(但是在示例设置中启用了这个选项) xferlog_std_format如果启用, 传输日志文件将以标准 xferlog 的格式书写, 如同 wu-ftpd 一样. 这可以用于重新使用传输统计生成器. 然而, 默认格式更注重可读性. 此格式的日志文件默认为 /var/log/xferlog, 但是您也可以通过 xferlog_file 选项来设定.默认: NO 3 解决方法这里只给出日志这块的参数设置##################log settings#################### Activate logging of uploads/downloads.xferlog_enable=YES## You may override where the log file goes if you like. The default is shown# below.xferlog_file=/var/log/xferlog##log in two files /var/log/xferlog and /var/log/vsftpd.logdual_log_enable=YESvsftpd_log_file=/var/log/vsftpd.log#log time settinguse_localtime=YES####################end of log####################4 结果Xferlog内容如下---------------------------------------------------------------------------------------------------------------------Wed Apr 18 06:41:29 2007 1 202.116.130.248 0 /pub/upload/kernel.rpm b _ i a root ftp 0 * iWed Apr 18 06:43:27 2007 1 202.116.130.248 0 /pub/sun b _ o a root ftp 0 * cTue May 1 15:03:37 2007 1 202.116.130.242 45662 /mnt/d/movie/linux partition.JPG b _ i r movie ftp 0 * cVsftpd.log内容如下----------------------------------------------------------------------------------------------------------------------Tue May 1 15:03:21 2007 CONNECT: Client "202.116.130.242"Tue May 1 15:03:21 2007 OK LOGIN: Client "202.116.130.242"Tue May 1 15:03:37 2007 OK UPLOAD: Client "202.116.130.242", "/mnt/d/movie/linux partition.JPG", 45662 bytes, 824.60Kbyte/secTue May 1 15:05:12 2007 OK DELETE: Client "202.116.130.242", "/mnt/d/movie/linux partition.JPG"这样xferlog则专门记录上下传信息,对ftp而言,这些信息是有绝对统计意义的。而系统管理员,有时为了满足不同用户的需求,可能会开发一些特殊的账号,怎么以ftp登录从系统的角度来管理监控,vsftpd.log就可以详细供证了。不过,我还是建议服务的专一性,这样才能减轻管理负担。对于日志的分析----eagerlinuxer 《用AWStats对VSFTP日志进行统计》。先看这个图,估计你就有动力去做了。http://awstats.sourceforge.net/awstats.ftp.html如果没有特别要求,可以用sed和awk结合使用,比如 sed -n '/{1} _ {1}/p' xferlog过滤结果后再针对ip过滤等,熟练使用sed,awk可以对数据进行很多有用的处理和分析。参考1etony vsftpd.conf 联机手册 http://fanqiang.iyunv.com/app/ftp/2005-06-24/3337.shtml2wolfg vsftpd日志(xferlog格式)的含义http://www.iyunv.com/jh/15/698727.html3man vsftpd.conf----推荐4eagerlinuxer 《用AWStats对VSFTP日志进行统计》http://www.iyunv.com/jh/15/388056.html 当同时对一个目录或文件有多种服务控制时,就要考虑服务之间的权限复核,即是一种服务的权限对于同一账号不能有不同访问权限。首先目录或文件的自身权限是权限控制的基础,其次不同服务自身还可以加载访问权限(一般相对原始权限提高)。 版权声明:本文为博主原创文章,未经博主允许不得转载。
页:
[1]