热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

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

下面小编就为大家分享一篇vsftpd匿名用户上传和下载的配置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

看到很多朋友配置vsftpd时不能使用匿名用户上传和下载(创建目录或删除、重命名文件夹),本文主要解决vsftpd的匿名用户权限配制问题。

配置要注意三部分,请一一仔细对照:

1、vsftpd.conf文件的配置(vi /etc/vsftpd/vsftpd.conf)

#允许匿名用户登录FTP anonymous_enable=YES #打开匿名用户的上传权限 anon_upload_enable=YES #打开匿名用户创建目录的权限 anon_mkdir_write_enable=YES #打开匿名用户删除和重命名的权限(如需要,需自己添加) anon_other_write_enable=YES #匿名用户的掩码(如需要,需自己添加,含义:如umask是022,这时创建一个权限为666的文件,文件的实际权限为666-022=644) anon_umask=022

2、ftp目录的权限设置

默认情况下,ftp的根目录为/var/ftp,为了安全,这个目录默认不允许设置为777权限,否则ftp将无法访问。但是我们要匿名上传文件,需要“other”用户的写权限,正确的做法:

在/var/ftp中建立一个upload(名子自己起吧)文件夹,将个文件夹权限设置为777(视具体需要自己设),在upload这个文件夹中,匿名用户可以上传文件、创建文件夹、删除文件等。

vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了

可以用命令chmod a-w /var/ftp 去除用户主目录的写权限

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

3、selinux的配置

SELinux(Security-Enhanced Linux) 是美国国家安全局(NAS)对于强制访问控制的实现,是 Linux上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到。

最简单的办法,关闭selinux

方法1:用命令setenforce 0,无需重启。(setenforce的格式:setenforce [ Enforcing | Permissive | 1 | 0 ])

方法2:在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 -Zps -Zid -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命令进入。

以上这篇vsftpd匿名用户上传和下载的配置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


推荐阅读
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • 本文详细介绍了如何在BackTrack 5中配置和启动SSH服务,确保其正常运行,并通过Windows系统成功连接。涵盖了必要的密钥生成步骤及常见问题解决方法。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 掌握Linux:基础命令入门
    本章节深入浅出地介绍了Linux系统中的基本命令操作,帮助读者快速上手并理解其核心功能。 ... [详细]
  • 解决Linux系统中pygraphviz安装问题
    本文探讨了在Linux环境下安装pygraphviz时遇到的常见问题,并提供了详细的解决方案和最佳实践。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 在哈佛大学商学院举行的Cyberposium大会上,专家们深入探讨了开源软件的崛起及其对企业市场的影响。会议指出,开源软件不仅为企业提供了新的增长机会,还促进了软件质量的提升和创新。 ... [详细]
  • CMake跨平台开发实践
    本文介绍如何使用CMake支持不同平台的代码编译。通过一个简单的示例,我们将展示如何编写CMakeLists.txt以适应Linux和Windows平台,并实现跨平台的函数调用。 ... [详细]
  • 在Linux系统中配置并启动ActiveMQ
    本文详细介绍了如何在Linux环境中安装和配置ActiveMQ,包括端口开放及防火墙设置。通过本文,您可以掌握完整的ActiveMQ部署流程,确保其在网络环境中正常运行。 ... [详细]
  • 在Ubuntu 16.04 LTS上配置Qt Creator开发环境
    本文详细介绍了如何在Ubuntu 16.04 LTS系统中安装和配置Qt Creator,涵盖了从下载到安装的全过程,并提供了常见问题的解决方案。 ... [详细]
author-avatar
昏暗的夜风刮过
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有