﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-高性能服务器开发-随笔分类-系统管理</title><link>http://www.cppblog.com/TheLast/category/19313.html</link><description /><language>zh-cn</language><lastBuildDate>Sun, 13 May 2012 06:27:58 GMT</lastBuildDate><pubDate>Sun, 13 May 2012 06:27:58 GMT</pubDate><ttl>60</ttl><item><title>vsftp的配置,包括匿名上传</title><link>http://www.cppblog.com/TheLast/archive/2012/05/13/174755.html</link><dc:creator>兵临城下</dc:creator><author>兵临城下</author><pubDate>Sun, 13 May 2012 06:16:00 GMT</pubDate><guid>http://www.cppblog.com/TheLast/archive/2012/05/13/174755.html</guid><wfw:comment>http://www.cppblog.com/TheLast/comments/174755.html</wfw:comment><comments>http://www.cppblog.com/TheLast/archive/2012/05/13/174755.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/TheLast/comments/commentRss/174755.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/TheLast/services/trackbacks/174755.html</trackback:ping><description><![CDATA[<span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">vsftpd匿名用户上传和下载的配置</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　看到很多朋友配置vsftpd时不能使用匿名用户上传和下载（创建目录或删除、重命名文件夹），本文主要解决vsftpd的匿名用户权限配制问题。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　配置要注意三部分，请一一仔细对照：</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　1、vsftpd.conf文件的配置(vi /etc/vsftpd/vsftpd.conf)</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　＃允许匿名用户登录FTP</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　anonymous_enable=YES</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　＃设置匿名用户的登录目录（如需要，需自己添加并修改）</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　anon_root=/var/ftp/pub</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　＃打开匿名用户的上传权限</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　anon_upload_enable=YES</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　＃打开匿名用户创建目录的权限</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　anon_mkdir_write_enable=YES</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　＃打开匿名用户删除和重命名的权限（如需要，需自己添加）</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　anon_other_write_enable=YES</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　#匿名用户的掩码（如需要，需自己添加，含义：如umask是022,这时创建一个权限为666的文件，文件的实际权限为666-022=644）</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　anon_umask=022</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　2、ftp目录的权限设置</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　默认情况下，ftp的根目录为/var/ftp，为了安全，这个目录默认不允许设置为777权限，否则ftp将无法访问。但是我们要匿名上传文件，需要&#8220;other&#8221;用户的写权限，正确的做法：</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　在/var/ftp中建立一个upload（名子自己起吧）文件夹，将个文件夹权限设置为777（视具体需要自己设），在upload这个文件夹中，匿名用户可以上传文件、创建文件夹、删除文件等。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　一般至此，便实现vsftpd匿名用户的上传下载了。如果还不行，就是下面的问题。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　3、selinux的配置</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　SELinux(Security-Enhanced Linux) 是美国国家安全局（NAS）对于强制访问控制的实现，是 Linux上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系，在这种访问控制体系的限制下，进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上，也可以作为其他发行版上容易安装的包得到。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　最简单的办法，关闭selinux</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　方法1：修改/etc/selinux/config文件中的SELINUX="" 为 disabled ，然后重启。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　方法2：用命令setenforce 0，无需重启。（setenforce的格式：setenforce [ Enforcing | Permissive | 1 | 0 ]）</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　方法3：在lilo或者grub的启动参数中增加：selinux=0,也可以关闭selinux。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　使用getenforce查看当前selinux是否正在运行。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　不关闭selinux，就要设置selinux的ftp权限。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　1、使用getsebool -a | grep ftp查看ftp相关设置状态，我们要将allow_ftpd_anon_write设为on。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　2、使用setsebool -P 进行设置。例：setsebool -P allow_ftpd_anon_write=on。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　或使用togglesebool进行bool值取反，例如togglesebool　allow_ftpd_anon_write。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　3、修改selinux安全上下文，先介绍两个命令：</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　命令1、ls -Z　　ps -Z　　id -Z　　# 分别可以看到文件,进程和用户的SELinux属性</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　命令2、#chcon 改变SELinux安全上下文</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　chcon -u&nbsp;&nbsp; 对象</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　　　　-r&nbsp;</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　　　　-t&nbsp;</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　　　　-R 递归</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　　　　--reference 源文件 目标文件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # 复制安全上下文</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　使用方法：</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　步骤1、ls -Zd /var/ftp/upload/ 通常会看到：</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　　drwxr-xr-x ftp root system_u:object_r:public_content_t /var/ftp/upload/</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　步骤2、chcon -R -t public_content_rw_t /var/ftp/upload/</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　步骤3、ls -Zd /var/ftp/upload/ 如果看到如下信息就OK了：</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　　　　drwxr-xr-x ftp root system_u:object_r:public_content_rw_t /var/ftp/upload/</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　最后还是重启下selinux和vsftpd吧，不重启其实也没关系。重新登录到ftp上，应该就能解决问题了。</span><br style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; " /><span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px; background-color: #ffffff; ">　　另，selinux的图形界面 可由system-config-selinux命令进入。</span>&nbsp;<img src ="http://www.cppblog.com/TheLast/aggbug/174755.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/TheLast/" target="_blank">兵临城下</a> 2012-05-13 14:16 <a href="http://www.cppblog.com/TheLast/archive/2012/05/13/174755.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>