我有一个名为“ftp3”的用户属于组“ftpusers-temp”。
该用户的家是家庭/ FTP共享/温度
在proftpd.conf中我有以下2个指令:
DefaultRoot /home/FTP-shared DefaultRoot ~ ftpusers-temp
我期待用户ftp3只能看到“temp”目录; 但是会发生什么情况是login时会默认select“temp”目录,但是用户可以返回并访问ftp服务器的根目录。
没有用户“ftp3”被关在“/ home / FTP-shared / temp”,并且无法访问“/ home / FTP-shared”?
DefaultRoot
行需要位于configuration文件的末尾。
我相信问题可能是你有多个DefaultRoot(s)指定。 正如ProFTPd文档所解释的那样 :
如果两个DefaultRoot指令适用于同一个用户,ProFTPD任意select一个(根据configuration文件的parsing方式)
您可以尝试注释掉第一个DefaultRoot指令,看看是否有助于解决问题。
编辑
这是一种在用户主目录中closures用户的方法。
(让我们快速的解释一下上面的代码:DefaultRoot是proftpd启用jailfunction的参数,someuser是所有被chrooted的用户的主要组(默认情况下和用户名一样)/ home / someuser是目录用户将被监禁。)