`
ansn001
  • 浏览: 94693 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

vsftpd匿名用户不能上传文件和删除

阅读更多

转载自:http://www.360doc.com/content/11/0304/10/1997902_97984819.shtml,仅供学习

 

vsftpd匿名用户不能上传文件和删除

vsftpd匿名用户不能上传文件

在vsftp中启用了
anon_upload_enable=YES
anon_mkdir_write_enable=YES
选项后用匿名帐号登录系统发现无权上传文件和创建文件夹.

解决方法:
mkdir /var/ftp/upload
chmod 755 /var/ftp/upload
chown ftp:ftp /var/ftp/upload
此时匿名用户就可以上传文件创建文件夹到upload了 
注: 
/var/ftp/pub文件夹是用来存放下载文件的.这个文件夹和/var/ftp文件夹的权限是755,所有者是root不能够修改.否则用户将不能进入该目录
 

  其他属性按实际需要修改(我没有修改,使用了默认值)

       在启动服务之前还需要做一个修改:

# setsebool -P ftp_home_dir 1

有的版本说是ftpd_disable_trans,但我用getsebool -a 命令没有找到那一项,也就没法设置,只有这一项比较像。实际也证明就是这个,不改上传不了文件。       

===========

一般至此,便实现vsftpd匿名用户的上传下载了。如果还不行,就是下面的问题。

selinux的配置
SELinux(Security-Enhanced Linux) 是美国国家安全局(NAS)对于强制访问控制的实现,是 Linux上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到。
最简单的办法,关闭selinux
方法1:修改/etc/selinux/config文件中的SELINUX=”" 为 disabled ,然后重启。
方法2:用命令setenforce 0,无需重启。(setenforce的格式:setenforce [ Enforcing | Permissive | 1 | 0 ])
方法3:在lilo或者grub的启动参数中增加:selinux=0,也可以关闭selinux。
使用 getenforce 查看当前selinux是否正在运行。

不关闭selinux,就要设置selinux的ftp权限。
1、使用getsebool -a | grep ftp查看ftp相关设置状态,我们要将allow_ftpd_anon_write设为on。
2、使用setsebool -P 进行设置。例:setsebool -P allow_ftpd_anon_write=on。
或使用togglesebool进行bool值取反,例如togglesebool allow_ftpd_anon_write。
3、修改selinux安全上下文,先介绍两个命令:

命令1、ls -Z  ps -Z  id -Z  # 分别可以看到文件,进程和用户的SELinux属性
命令2、#chcon 改变SELinux安全上下文
chcon -u [user] 对象
-r [role]
-t [type]
-R 递归
–reference 源文件 目标文件 # 复制安全上下文
使用方法:
步骤1、ls -Zd /var/ftp/upload/ 通常会看到:
drwxr-xr-x ftp root system_u:object_r:public_content_t /var/ftp/upload/
步骤2、chcon -R -t public_content_rw_t /var/ftp/upload/
步骤3、ls -Zd /var/ftp/upload/ 如果看到如下信息就OK了:
drwxr-xr-x ftp root system_u:object_r:public_content_rw_t /var/ftp/upload/

最后还是重启下selinux和vsftpd吧,不重启其实也没关系。重新登录到ftp上,应该就能解决问题了。

另,selinux的图形界面 可由system-config-selinux命令进入。








anonymous_enable=YES|NO   
* 控制是否允许匿名用户登录,YES允许,NO不允许,默认值为YES。 
ftp_username=   
* 匿名用户所使用的系统用户名。默认下,此参数在配置文件中不出现,值为ftp。 
no_anon_password=YES|NO   
* 控制匿名用户登入时是否需要密码,YES不需要,NO需要。默认值为NO。 
deny_email_enable=YES|NO   
* 此参数默认值为NO。当值为YES时,拒绝使用banned_email_file参数指定文件中所列出的e-mail地址进行登录的匿名用户。即,当匿名用户使用banned_email_file文件中所列出的e-mail进行登录时,被拒绝。显然,这对于阻击某些Dos攻击有效。当此参数生效时,需追加banned_email_file参数 
banned_email_file=/etc/vsftpd.banned_emails   
* 指定包含被拒绝的e-mail地址的文件,默认文件为/etc/vsftpd.banned_emails。 
anon_root=   
* 设定匿名用户的根目录,即匿名用户登入后,被定位到此目录下。主配置文件中默认无此项,默认值为/var/ftp/。 
anon_world_readable_only=YES|NO   
* 控制是否只允许匿名用户下载可阅读文档。YES,只允许匿名用户下载可阅读的文件。NO,允许匿名用户浏览整个服务器的文件系统。默认值为YES。 
anon_upload_enable=YES|NO   
* 控制是否允许匿名用户上传文件,YES允许,NO不允许,默认是不设值,即为NO。除了这个参数外,匿名用户要能上传文件,还需要两个条件:一,write_enable参数为YES;二,在文件系统上,FTP匿名用户对某个目录有写权限。 
anon_mkdir_write_enable=YES|NO   
* 控制是否允许匿名用户创建新目录,YES允许,NO不允许,默认是不设值,即为NO。当然在文件系统上,FTP匿名用户必需对新目录的上层目录拥有写权限。 
anon_other_write_enable=YES|NO   
* 控制匿名用户是否拥有除了上传和新建目录之外的其他权限,如删除、更名等。YES拥有,NO不拥有,默认值为NO。 
chown_uploads=YES|NO   
* 是否修改匿名用户所上传文件的所有权。YES,匿名用户所上传的文件的所有权将改为另外一个不同的用户所有,用户由chown_username参数指定。此选项默认值为NO。 
chown_username=whoever   
* 指定拥有匿名用户上传文件所有权的用户。此参数与chown_uploads联用。不推荐使用root用户。
 
分享到:
评论

相关推荐

    Linuxvsftpd匿名用户开放上传,写入,创建,删除权限[收集].pdf

    为确保匿名用户能够安全地上传、写入、创建和删除文件,我们需要正确地配置 vsftpd 软件包。下面我们将详细介绍如何配置 vsftpd,以便匿名用户拥有相应的权限。 安装 vsftpd 软件包 首先,我们需要安装 vsftpd ...

    vsftpd匿名用户上传和下载的配置方法

    创建一个名为`upload`的子目录,然后将其权限设置为777,这样匿名用户就可以在这个目录内进行上传、创建目录和删除文件等操作。为确保安全,你可以使用`chmod a-w /var/ftp`命令去除FTP根目录的写权限。 如果在...

    vsftpd基本配置文件详解

    - `Anon_mkdir_write_enable=yes`: 允许匿名用户创建目录,并能在新目录中上传文件。 - `Write_enable=yes`: 开启本地用户的写入权限。 - `Anon_other_write_enable=yes`: 允许匿名用户删除文件。 3. **开启匿名...

    Linux搭建FTP服务器实现匿名上传.doc

    需要注意的是,默认情况下,匿名用户只能上传文件,而不能删除文件。这是因为 FTP 服务器的安全机制为了防止恶意攻击。只有超级用户和文件的拥有者才能删除文件。 如果我们需要授予其他用户上传文件的权限,可以...

    vsftpd配置文件详解 

    - 允许匿名用户执行除上传和创建目录之外的操作,如删除或重命名文件/目录,默认为`NO`。 - **chown_uploads=YES/NO** - 是否更改匿名用户上传文件的所有者,默认为`NO`。 - **chown_username=username** - ...

    建立Vsftpd虚拟用户

    例如,若希望虚拟用户拥有写入权限(包括上传、下载、删除等操作),则需同时设置`virtual_use_local_privs=YES`和`write_enable=YES`。 通过以上步骤,我们可以成功地配置Vsftpd服务器使用虚拟用户进行认证,这...

    Ubuntu 18.04 vsftpd服务配置文件

    修改好的vsftpd配置文件 登录用户访问 匿名访问,匿名用户上传下载以及删除

    CentOS 7.0 使用Vsftpd服务传输文件.zip

    在CentOS 7.0操作系统中,我们可以利用Vsftpd来搭建安全的文件传输服务,让用户能够通过FTP协议进行文件的上传和下载。 ### 安装Vsftpd 在CentOS 7.0中,首先需要通过yum包管理器安装Vsftpd。打开终端并输入以下...

    匿名搭建,本地用户搭建,虚拟用户搭建ftp.doc

    FTP(File Transfer Protocol)是一种...无论是匿名、本地还是虚拟用户模式,都需要考虑安全性、权限管理和用户体验。在实际部署时,根据具体需求选择合适的FTP服务类型,并确保遵循最佳实践,以提供稳定且安全的服务。

    vsftpd中文联机文档

    - **chown_uploads**: 控制匿名上传的文件所有权是否更改为指定的用户。默认为 **NO**。启用后有助于文件管理的安全性。 - **chroot_list_enable**: 控制是否启用对某些用户的“chroot”限制。默认为 **NO**。如果...

    CentOS vsftpd配置解析及实例

    - `anon_other_write_enable=YES`:赋予匿名用户删除文件的权限。 ### 4. 下载权限 开启匿名登录后,匿名用户即可下载文件,但需注意目录权限设置,确保其具有读取权限。 ### 5. 普通用户连接 - `local_enable=...

    vsftpd-1.2.1.tar

    通过FTP,用户可以上传、下载或删除远程服务器上的文件。对于系统管理员而言,FTP是管理服务器、部署更新和共享文件的有效工具。而使用安全的FTP服务,如vsftpd,能确保数据在传输过程中的加密,防止未授权的访问,...

    vsftpd ubuntu14.04服务端配置手册

    1. **创建虚拟用户文件**:在 `/etc/vsftpd` 目录下(如果不存在,请手动创建)创建一个名为 `vftpuser.txt` 的文本文件。 ``` sudo gedit /etc/vsftpd/vftpuser.txt ``` 2. **添加虚拟用户和密码**:在文件中...

    vsftpd-3.0.2.tar.gz

    vsftpd以其简单配置、性能稳定和安全策略而受到欢迎,适用于个人用户到大型企业等多种场景。 ### 3. vsftpd功能特性 - **安全性**:支持SSL/TLS加密,确保数据传输的安全。 - **权限控制**:能够根据用户或用户组...

    vsftpd服务器初学者指南

    了解Linux系统中的用户和用户组的基本概念对于设置FTP用户至关重要。例如,在配置一个名为`ftp`的用户时,通常会看到类似如下的条目: ``` ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin ``` - `ftp`: 用户名。 - ...

    CentOS_vsftpd的安装与配置

    3. **虚拟用户模式**:类似于本地用户模式,但用户账户不直接存储在Linux系统中,而是通过数据库或其他方式验证,适用于需要大规模用户管理的场景。 #### 二、vsftpd的安装 在不同的Linux发行版中,vsftpd的安装...

    Ubuntu下Vsftpd服务器配置指南

    Vsftpd支持匿名用户的登录与操作,如上传文件、重命名或删除文件等。为了确保安全性,通常会对匿名用户的权限进行严格的限制,例如只允许上传而不允许下载文件。 #### 八、认证FTP配置 Vsftpd支持多种认证方式,...

    VSFTPD服务器配置文件关键配置语句祥解[参考].pdf

    `anon_umask=022`是针对匿名用户的umask值,`anon_upload_enable=YES`允许匿名用户上传文件,`anon_mkdir_write_enable=YES`允许创建目录,`anon_other_write_enable=NO`阻止匿名用户执行删除和重命名等操作。...

Global site tag (gtag.js) - Google Analytics