以下配置实验是针对chroot_local_user、chroot_list_enable、chroot_list_file和/etc/vsftpd.chroot_list这四项做出的。
如果想要某用户peo(注:默认的普通用户,只属于users组)禁止访问除自己目录以外的其它目录,那么设置如下:
方案一、首先修改配置文件vsftpd.conf,将其中默认的“#chroot_list_enable=YES”、“#chroot_list_file=/etc/vsftpd.chroot_list”这两项前面的“#”注释掉。接者在/etc下新建文件vsftpd.chroot_list,并向其中添加禁止访问到系统根目录/(也就是一般意义上不可以chroot())的用户peo。这样添加进去的用户peo就只具有在本用户目录中访问而不具有查看除此以外其它目录文件的权限。这步完成后重启vsftpd服务即可实现预期设置。
方案二、首先修改配置文件vsftpd.conf,将其中默认的“#chroot_local_user=YES”、“#chroot_list_enable=YES”、“#chroot_list_file=/etc/vsftpd.chroot_list”这三项前面的“#”注释掉,并将“chroot_local_user=YES”中的“YES”更改为“NO”。接者在/etc下新建文件vsftpd.chroot_list,并向其中添加禁止访问到系统根目录/(也就是一般意义上不可以chroot())的用户peo。这样添加进去的用户peo就只具有在本用户目录中访问而不具有查看除此以外其它目录文件的权限。这步完成后重启vsftpd服务即可实现预期设置。
方案三、首先修改配置文件vsftpd.conf,将其中默认的“#chroot_local_user=YES”、“#chroot_list_enable=YES”、“#chroot_list_file=/etc/vsftpd.chroot_list”这三项前面的“#”注释掉。接者在/etc下新建文件vsftpd.chroot_list,并向其中添加可以访问到系统根目录/(也就是一般意义上可以chroot())的用户peo。这样,用户peo就可以通过chroot()进行跳转到系统根目录/等相关操作,而未被添加进去的其它用户就只具有在本用户目录中访问,并不具有查看除此以外其它目录文件的权限。这步完成后重启vsftpd服务即可实现预期设置。
通过对比以上实验的配置可以看出,vsftpd对登陆用户默认的chroot()功能是不被允许的,也就是说去掉“#chroot_list_enable=YES”、“#chroot_list_file=/etc/vsftpd.chroot_list”这两项前面的“#”后,再添加到vsftpd.chroot_list的用户即是被禁止跳转出本用户目录的,其只能在其用户自身的目录范围内活动。
另:
1、通过实验发现,单纯地修改vsftpd.chroot_list文件中的内容并不用重启vsftpd服务即可使相应的配置生效。
2、将vsftpd.conf中的“anonymous_enable=NO”设置为“YES”并重启vsftpd服务后,启用了anonymous账户登陆,密码为任意值,登录路径为“/srv/ftp”。默认权限为只能下载不能上传,也不能跳转出本目录。默认可以登录的账号为“anonymous”和“ftp”,密码任意。
实验环境:Ubuntu Desktop 8.04.4,Ubuntu Server 10.04
QQ:81064483
E-mail:AllenNewOK@126.com
版权声明:若要转载,需征得作者AllenNewOK的同意,必须以超链接形式标明文章原始出处和作者。
分享到:
相关推荐
linux下的FTP命令。包含登陆,退出,下载和上传等命令。
linux 的ftp的使用程序,通过ftp上传和下载程序.
ftp源码,在armlinux下的ftp服务器
ftp移植,用于linux上的ftp服务器移植
linux 下FTP 通信程序,具体内容请参考具体代码.
允许匿名FTP,允许上传,chroot用户目录,上传文件属主改为root anonymous_enable=YES local_enable=YES write_enable=YES local_umask=022 anon_upload_enable=YES anon_mkdir_write_enable=YES ...
本设计实现了ftp的设计,使用了socket网络编程,ftp基于cs模式,包含客户端和服务端,可以实现上传、下载、删除、添加等各种功能,支持断点续传、多用户登陆、错误日志等功能。运行环境是linux,压缩包内含有源代码...
Linux_FTP详细说明配置文档 Linux_FTP详细说明配置文档
linux下的实现FTP服务器程序....包含文本说明...
linux ftp 客户端的实现,功能有些简单,但是还比较好用
这是我培训时候,在red hat linux 9.0上面开发的ftp服务器代码!
linux下用C开发的源代码,是ftp 的相关代码
linux平台下用C编写的FTP服务端程序
[Linux_FTP工具]lftp命令详解[Linux_FTP工具]lftp命令详解[Linux_FTP工具]lftp命令详解[Linux_FTP工具]lftp命令详解
Linux下ftp服务的服务器端的代码实现
本程序为linux命令行下ftp客户端程序,实现了大部分常用ftp命令
linux平台下编写的ftp项目,主要功能包括: 1.cd 进入对应目录 2.ls 列出相应目录文件 3.puts 将本地文件上传至服务器 4.gets 文件名 下载服务器文件到本地 5.remove 删除服务器上文件 6.pwd 显示目前所在路径 7....
linux下实现c语言编程,实现简单ftp上传与下载功能
linux下FTP类的实现:通过socket实现FTP,可以连接、创建目录、上传文件、下载文件、断开连接
使用C语音开发的ftp程序 环境:linux系统