如何“监禁”其主目录(proftpd)中的ftp用户?


3

我有一个名为“ ftp3”的用户,该用户属于组“ ftpusers-temp”。

该用户的家是home / FTP共享/ temp

在proftpd.conf中,我有以下2条指令:

DefaultRoot /home/FTP-shared
DefaultRoot ~ ftpusers-temp

我期望用户ftp3只能看到“ temp”目录;但是发生的是登录时默认选择了“ temp”目录,但是用户可以返回并访问ftp服务器的根目录。

用户“ ftp3”是否应该在“ / home / FTP-shared / temp”中被监禁,并且无法访问“ / home / FTP-shared”?

Answers:



2

我相信问题可能是您指定了多个DefaultRoot。作为ProFTPD的文件解释

如果两个DefaultRoot指令适用于同一用户,则ProFTPD会任意选择一个(基于解析配置文件的方式)

您可以尝试注释掉第一个DefaultRoot指令,看看是否有助于解决问题。


1

编辑

这是一种将用户锁定在其主目录中的方法。

  • 这是ProFTPd中的标准功能
  • 打开/etc/proftpd/proftpd.conf
  • 取消注释#DefaultRoot〜
  • 用DefaultRoot替换/ home / someuser someuser

(让我们快速解释上一行。DefaultRoot是proftpd用于启用jail功能的参数。someuser是正在被chroot的所有用户的主要组(默认情况下,与用户名相同)。/ home / someuser是目录用户将被监禁的地方。)

  • 然后执行“ /etc/init.d/proftpd restart”

1
感谢您的回答,但是我已经尝试过了,但是没有用。
pvieira 2010年

1

我认为,在您的情况下,最好的选择是目录中的监狱用户。您可以使用鲜为人知的%u变量。文档海洋:

在处理FTP会话期间,它将用登录用户的名称替换。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.