ProFTPD 的 chroot 问题

ProFTPD 的 chroot 问题

我在 Centos 7 上运行 ProFTP。我已成功安装服务器并创建了可以登录服务器的用户。问题是用户始终可以访问服务器的根目录,而不是被 chroot 到他们的主目录。此外,即使我在选项文件中将其关闭,根用户也可以登录。

摘录自 /etc/passwd:

ftpadmin:x:1003:1005::/opt/qnap/:/bin/false

在 /etc/shells 中:

/bin/sh
/bin/false
/bin/bash
/usr/bin/sh
/usr/bin/bash

摘自 /etc/proftpd.conf:

# Cause every FTP user except adm to be chrooted into their home directory
DefaultRoot                     ~ adm
RootLogin                       off

# Use pam to authenticate (default) and be authoritative
AuthPAMConfig                   proftpd
AuthOrder                       mod_auth_pam.c* mod_auth_unix.c

谁能告诉我发生了什么事?

答案1

根据我的阅读 http://www.proftpd.org/docs/directives/linked/config_ref_DefaultRoot.html你的语法是错误的,而且我怀疑只有 Adm 组的成员才会 chroot。我会尝试将行改为

  DefaultRoot ~

将每个人都 Chroot 到他们的主目录(因为这样干净、简单,而且我认为管理员不应该使用 FTP)。

或者,我想知道

 DefaultRoot ~ users,!adm

将对除 adm 组成员之外的所有人执行 Chroot 操作。

答案2

进一步的测试表明这是一个客户端问题。

我原以为 DefaultRoot 会强制任何 FTP 客户端使用该目录 - 但事实似乎并非如此。

FileZilla似乎很好地遵守了 DefaultRoot 选项,而FTP Client Pro(IOS)似乎完全忽略了它。

相关内容