我正在设置一个FTP服务器,并最初使用以下方法将所有用户监禁在其主目录中:
DefaultRoot ~
此行为使用户只能看到其主目录的内容,而看不到其上方的任何内容。例如:使用诸如filezilla和user之类的客户端作为testuser时,testuser目录显示为
/
incoming/
outgoing/
但是,我想看看是否有任何方法可以允许用户“查看”其上方的目录,但不允许他们列出其目录,创建,删除任何文件或目录。因此,使用filezilla作为testuser就像:
/ftp
/home/
testuser/
incoming/
outgoing/
唯一的原因是,当前我们拥有自动化的管道,这些管道使用完整路径来获取文件,即/ftp/home/testuser/dir/file.txt
,该文件在当前配置中失败。但是/dir/file.txt
可以正常工作。
任何帮助将不胜感激
答案 0 :(得分:0)
最佳方法:调整自动化管道。 (当然..)
另一种非常简单(但仍然很愚蠢)的方法是:在房屋中创建一个相对的符号链接,这也应该起作用。
例如:
mkdir -p /ftp/home/testuser/ftp/home
cd /ftp/home/testuser/ftp/home
ln -s ../../ testuser
ls -l /ftp/home/testuser/ftp/home/testuser
#lrwxrwxrwx 1 testuser testuser 15 Oct 6 16:37 testuser -> ../../
ls -l /ftp/home/testuser/ftp/home/testuser/dir/file.txt
#-rw-rw-r-- 1 testuser testuser 16 Nov 6 16:37 file.txt