Linux系统服务 5 ---- Vsftpd匿名用户不能下载原因分析及解决

原文出处

Vsftp匿名用户不能下载原因分析及解决

 
 vsftp中的和匿名用户有关的参数

 1)主配置文件:/etc/vsftpd/vsftpd.conf

--------------------------------------------------

[root@station ~]# cat /etc/vsftpd/vsftpd.conf |grep -v ^#
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022   //本地用户上传文件的umask值。
anon_upload_enable=YES    //允许匿名上传
anon_mkdir_write_enable=YES //匿名用户可以对目录进行写操作。
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES

pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
--------------------------------------------------- 
 

 2)看相关的selinux设置:

---------------------------------------------------

[root@station ~]# getsebool -a |grep ftp
allow_ftpd_anon_write --> on    //匿名用户写权限,要开启
allow_ftpd_full_access --> on   //匿名用户要上传文件,要开启
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
allow_tftp_anon_write --> off
ftp_home_dir --> on             //本地用户家目录
ftpd_disable_trans --> off       //关闭selinux对ftp服务的影响
ftpd_is_daemon --> on
httpd_enable_ftp_server --> off
tftpd_disable_trans --> off

------------------------------------------------------

    按照上面的设置,重启服务就好了。大多数新人看到的文章基本都是这么配置的,但是我们遇到的问题就产生了。

    现象:匿名用户能登陆ftp服务器(linux客户端,或者windows客户端都可以)使用linux客户端,可以上传文件,可以建立目录;使用windows客户端可以长传文件,建立目录不能修改名字,只能用新建文件夹 新建文件夹1......

    分析:

          1、能确定的一定是权限问题。

          2、关闭selinux测试,问题依旧,说明和selinux无关。

          3、我们来看一下我们上传的文件:

             1)目标目录的权限:

------------------------------------------------------

[root@station booleans]# ll /var/ftp/
总计 16
drwxr-xr-x 2 root root 4096 2007-12-13 pub
drwxrwxrwx 2 root root 4096 09-15 10:25 test  //777权限没问题
------------------------------------------------------

              2)上传以后的文件的权限:

------------------------------------------------------
lftp 192.168.1.10:/test> put /root/install.log ./
27001 bytes transferred
lftp 192.168.1.10:/test> ls
-rw------- 1 14 50 27001 Sep 15 02:31 install.log

------------------------------------------------------

    注意看那个权限600,这是造成我们不能下载的主要原因。

    解决方法:

    /etc/vsftpd/vsftpd.conf下只有local_umask=022的选项,他决定了上传月以后的文件的权限。默认文件权限是666,目录权限是777,然而我们的匿名用户上传的文件的权限却没有写明,那么默认的vsftp服务对匿名用户的umask值是多少呢?根据我们的测试,应该是066。所以我们要修改匿名用户的umask值使我们可以进行一些相关操作,增加anon_umask=022,重启服务,然后测试vsftp
是不是能下载了?

-----------------------------------------------------

lftp localhost:/test> put /root/install.log
27001 bytes transferred
lftp localhost:/test> ls
-rw-r--r-- 1 14 50 27001 Sep 15 02:34 install.log

-----------------------------------------------------

时间: 2024-08-03 18:02:18

Linux系统服务 5 ---- Vsftpd匿名用户不能下载原因分析及解决的相关文章

Vsftp匿名用户不能下载的原因及解决方法

近期在群里,坛子里,包括自己做练习的时候都遇到了上面的问题,搜索网络也没找到比较确切的答案:后又查看了大量的相关文章和资料,现把这个问题拿出来分析解决,供广大vsftp学习新人参考:(这个问题和防火墙无关,关闭iptables) vsftp中的和匿名用户有关的参数: 1)主配置文件:/etc/vsftpd/vsftpd.conf -------------------------------------------------- [root@station ~]# cat /etc/vsftpd

Linux系统服务 6 ---- vsftpd服务的配置文件实现匿名登录上传下载和删除功能

/etc/vsftpd/vsftpd.conf配置文件 # Example config file /etc/vsftpd/vsftpd.conf # # The default compiled in settings are fairly paranoid. This sample file # loosens things up a bit, to make the ftp daemon more usable. # Please see vsftpd.conf.5 for all com

tomcat在opensuse下开机自启失败的原因分析及解决方法_unix linux

环境•opensuse 10.2•tomcat 5.5 设置信息在/etc/init.d/boot.local中添加如下命令:/opt/tomcat/bin/startup.sh 错误描述opensuse启动完毕后,tomcat一直没启动. 分析1. 系统启动完毕后,手动启动tomcat可以成功,说明不是权限的问题.2. 查找系统日志(/var/log/boot.msg),找到了如下信息: Neither the JAVA_HOME nor the JRE_HOME environment va

vsftpd虚拟用户与匿名用户配合使用

前几天写过一篇有关vsftpd虚拟用户的文章,今天再来介绍有关vsftpd虚拟用户与匿名用户配合使用的案例. 要求:在公司FTP服务器上,用户ilanni对/data目录下所有的目录都具有管理员权限,即删除.新建.重命名.上传等.而匿名用户可以浏览data目录下的所有目录,其中只对tmp目录具有管理员权限. 这样可以达到只有一个管理员账号,可以对/data目录进行操作,而公司的其他员工帐号都可以浏览/data目录,并且在/data/tmp目录下可以新建自己的目录,并上传文件等权限. 有关vsft

紧急求助:linux vsftpd虚拟用户能上传、下载文件,没有删除权限

问题描述 紧急求助:linux vsftpd虚拟用户能上传.下载文件,没有删除权限 SELinux设置为disable了,文件属主是virtural(virtual是虚拟用户所在的本地用户) 解决方案 写个脚本将文件扫描到就赋予所有权限呢 解决方案二: 把write_enable=yes前面的注释取消试试

linux系统中配置vsftpd及用户权限

先确认下安装上了没,可以使用  代码如下 复制代码 [root@localhost sv005-mongodb]# service vsftpd restart Shutting down vsftpd:                                      [  OK  ] Starting vsftpd for vsftpd:                                [  OK  ] 或者使用命令 [root@localhost sv005-mong

Linux ftp匿名用户访问的默认路径能改?改成外接硬盘文件夹?/var/ftp/软链接到硬盘?

问题描述 Linux ftp匿名用户访问的默认路径能改?改成外接硬盘文件夹?/var/ftp/软链接到硬盘? ln -s 外接硬盘绝对路径 /var/ftp/ 我发现软链接后能够访问匿名用户的根目录,但是根目录下的文件无法访问.是否是因为匿名用户只能操作/var/ftp/这个路径下的文件?

Linux FTP管理之虚拟用户的搭建与部署

项目环境: 西安凌云高科技有限公司由于业务的需求,需要架设一台FTP服务器.由于系统稳定和安全等方面的考虑.公司决定采用RHEL.4作为服务器平台,在平台上面安装VSFTP软件包.在安装的过程中考虑系统安全性和流量控制.配置VSFTP服务器对最大连接数.最大传输速率等进行限制,保证系统资源的合法性. 项目标准: 能够实现FTP虚拟目录的上传和下载保证公用虚拟目录的上传下载.针对不同的虚拟目录设置不同的权限. 项目实施: 配置虚拟目录之前,VSFTP软件包我们已经安装完成.关于FTP的简单部署<菜

Linux下用vsftpd构建FTP服务器

在Linux下如何使用vsftpd构建FTP服务器,构建后的FTP服务器有哪些特点?本文将作详细介绍. vsftpd 是"very secure FTP daemon"的缩写,安全性是它的一个最大的特点.vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BSD.Solaris. HP-UNIX等系统上面,是一个完全免费的.开发源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征.比如:非常高的安全性需求.带宽限制.良好的可伸