好了,废话不多说。上头下来个需求,让我给别人开个ftp账户,只能访问项目的目录,不能访问项目外的目录,就算cd切换目录也不行。

开始:

第一步;安装ftp,我用的是centos7,只需敲入命令

  yum install vsftpd

chkconfig vsftpd on  #设置开机启动

第二步配置 vsftpd.conf

  做这一步,先备份好配置  cp vsftpd.conf vsftpd.conf_bak,然后修改下面3行代码,将注释去掉

  

为了防止报错,在文末加一行

allow_writeable_chroot=YES

如果不加上面一行,会出现如下截图:

然后再新建chroot_list文件。

实现方法是有2种思路的;

第一种:

chroot_local_user=YES   #设置是否锁定本地用户在自己的主目录中,(登录后无法cd到父目录或同级目录中) 
chroot_list_enable=YES   #设置是否将用户锁定在自己的主目录中 
chroot_list_file=/etc/vsftpd/chroot_list      #定义哪些用户将会锁定在自己的主目录中 

解释:chroot_local_user=YES将所有用户限定在主目录内,chroot_list_enable=YES表示要启用chroot_list_file, 因为chroot_local_user=YES,即全体用户都被“限定在主目录内”,所以总是作为“例外列表”的chroot_list_file这时列出的是那些“不会被限制在主目录下”的用户。

第二种:

chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

解释:chroot_local_user=NO则所有用户不被限定在主目录内,chroot_list_enable=YES表示要启用chroot_list_file, 因为chroot_local_user=NO,即全体用户都“不被限定在主目录内”,所以总是作为“例外列表”的chroot_list_file这时列出的是那些“会被限制在主目录下”的用户。

配置好后

重启vsftp :  service vsftpd restart #重启vsftpd

第三步:

useradd -d /home/www -m /home/www 用户                ##-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录

passwd 用户     #修改用户名

最后:

chown  -R ftp用户名:root    项目目录

我的是:  chown  -R test:root  /home/ftptest/

我们来测试一下:

还可以这样测试

当然你也可以在浏览器输入ftp://XXXXXX

至此,大功搞成!

Cenos7下指定ftp用户限制在特定目录下(亲身实践)的更多相关文章

  1. linux 指定ftp用户 特定目录及权限

    Linux添加FTP用户并设置权限   在linux中添加ftp用户,并设置相应的权限,操作步骤如下:  1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建 ...

  2. linux下建ftp用户,并限制用户访问路径[转]

    目的是:在linux系统上建立ftp用户,并限制其通过ftp访问时,只能访问用户主目录:其主目录显示路径也是“/”,看不到上级目录.     例如,我要建立用户usertest,密码为usertest ...

  3. Linux:linux下建ftp用户,并限制用户访问路径

    安装:ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# service vsftpd start 关闭 ...

  4. 在lampp的proftpd下新增FTP用户的方法与配置

    用LAMPP的安装方法可以开一个默认的lampp用户,不过多用户怎样管理.目录怎样设置?这里简明说一下. 要求:使用Lampp的proftpd,开通多个FTP用户,并各分配一个目录,而且需要限制用户在 ...

  5. 【ftp服务】配置ftp用户不能返回上级目录,只能在指定的目录

    500 OOPS: vsftpd: both local and anonymous access disabled! 出现这个错,需要修改配置:local_enable=YES 500 OOPS: ...

  6. 如何设置让SFTP的用户限制在某个目录下

    通常SFTP的任何用户登录之后能看到整个系统的文件目录,这样很不安全. 通过chroot我们可以将某个用户登录SFTP后只能在某个限定的目录下操作,这样可以更安全.我们来看看怎么设置. 1.创建一个用 ...

  7. ftp删除目录和文件,目录下有文件删除提示【550 Remove directory operation failed.】

      注意:目录下有文件,直接删除目录会失败,提示550 Remove directory operation failed. 必须先将目录下的文件都删除,才能删除目录   ftp命令行: ftp删除目 ...

  8. java 20 -3 递归之删除特定目录下的特定文件

    /* 需求:删除H:\demo目录下的带内容的文件 分析: A:封装该目录 B:获取该目录下所有的文件或文件夹的File数组 C:遍历该File数组,获取每一个File对象 D:判断所遍历的FIle对 ...

  9. java 20 -2 递归之找特定目录下的特定格式文件

    /* 需求:把C:\Users\Administrator\Desktop\记录目录下所有以.java结尾的文件的绝对路径输出到控制台 分析: A:封装该目录 B:获取该目录下的所有文件或文件夹的Fi ...

随机推荐

  1. NR / 5G - MAC Scheduler

  2. UNIX读书笔记----UNIX基础知识

    UNIX体系结构: 从严格意义上讲,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境.我们通常将这种软件称为内核(Kernel),因为他相对较小,而且位于环境的核心.图片显示了UNI ...

  3. windows10 CTCP

    windows上除了普通tcp之外,有一个CTCP. 据说可以提升长延时情况下的吞吐量. win7可以方便的通过netsh int tcp set global congestionprovider= ...

  4. go每日新闻--2020-02-19

    gocn_news_2020-02-19 1.使用 t.Cleanup 做测试收尾 https://ieftimov.com/post/testing-in-go-clean-tests-using- ...

  5. Ajax0001:ajax介绍 JSON数据处理

  6. Redis入门(介绍、搭建)——Windows、Centos环境

    一.介绍 Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cac ...

  7. cf1294E

    题意简述:给一个矩阵,有两种操作可以进行 操作1:改变矩阵中一个元素的值 操作2:将矩阵中某一列的值循环下移 要求用最少的操作次数使得矩阵变成 题解:对于一列来说,我们肯定是先变化然后再循环下移,所以 ...

  8. 何时使用异步或同步AJAX

    通常最好使用异步调用 通过优锐课核心java学习笔记中,我们可以看到,码了很多专业的相关知识, 分享给大家参考学习. AJAX代表异步JavaScript和XML,是一项允许异步更新网页的技术,这意味 ...

  9. Python面向对象设计小结

    转自林海峰老师,学习之余做的笔记. class School: zhuti='学生和老师‘ def __init__(self,name,dic,country): self.mingzi=name ...

  10. 使用CSV Data Set Config配置原件,参数化数据

    对接口数据的参数化方式大概有三种方式,1:jmeter内置函数:2:借助CSV Data Set Config配置原件:3:jdbc连接数据库,使用数据表字段 此处主要讲第二种:借助CSV Data ...