你好,游客 登录 注册 搜索
背景:
阅读新闻

RHEL6平台下SeLinux和vsftpd的匿名上传的简单案例

[日期:2013-04-06] 来源:Linux社区  作者:luxiaok [字体: ]

在RHEL6平台下的多数生产线上的FTP应用基本很少开启SeLinux,因为这玩意实在太麻烦了。这里给出一个小案例,基于RHEL 6.3平台。

系统状态:

RedHad Enterprises Linux 6.3  32bit

SeLinux - Enforcing

iptables - disabled (这个开启端口其实很简单,本案例中就不讨论了)

1.安装略(yum -y install vsftpd)

2.默认启动以及测试

这里说明下,就是安装之后,直接启动vsftpd,不修改任何参数,普通用户是可以登陆并且上传下载的,当然是vsftp的默认情况,但是SeLinux存在就不这么默认了。先要开启:

[root@localhost cto.luxiaok.com]# setsebool -P ftp_home_dir=on

否则会报无法切换目录的500错误。其实,vsftp的默认情况允许本地用户登录并且允许上传下载是很危险,因为可以切换到别的目录去,当然是默认情况下。这当然也是可以通过vsftpd.conf进行控制的。

3.开启匿名用户的上传下载

这是本文的主题。再来说说默认情况,默认修改vsftpd.conf的情况下只允许匿名用户进行登录并允许下载,不允许上传。

允许匿名上传设置:

取消上面两行的注释就行了,然后重启vsftpd。这里也可以注释掉local_enable来禁用掉本地用户的登陆。

但是会发现还是无法上传。

首先

[root@luxiaok.com ~]# chmod -R 777 /var/ftp/pub

非常重要的一点,这里不能更改/var/ftp的权限,否则在匿名用户登陆的是就会直接500错误,这是vsftp的默认机制。这里的上传以pub目录为例。

然后

[root@localhost cto.luxiaok.com]# setsebool -P allow_ftpd_anon_write=on

再进行测试,就OK了。

这里只是一个很简单的案例,不过多解释SeLinux的相关知识了。

更多RedHat相关信息见RedHat 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=10

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款