Chinaunix首页 | 论坛 | 博客
  • 博客访问: 134885
  • 博文数量: 44
  • 博客积分: 171
  • 博客等级: 入伍新兵
  • 技术积分: 441
  • 用 户 组: 普通用户
  • 注册时间: 2011-05-20 01:02
文章分类
文章存档

2013年(37)

2012年(7)

我的朋友

分类: LINUX

2013-04-17 14:57:36

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


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


  #允许匿名用户登录FTP


  anonymous_enable=YES


  #设置匿名用户的登录目录(如需要,需自己添加并修改)


  anon_root=/var/ftp/pub


  #打开匿名用户的上传权限


  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匿名用户的上传下载了。如果还不行,就是下面的问题。


  3、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命令进入。


  就这些内容了,希望对大家有帮助。
阅读(1142) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~