SSH – 尝试强制内部sftp时无法启动sftp-server

我遇到了麻烦,迫使用户只能通过ssh连接时使用sftp。

我在/ etc / ssh / sshd_config中有以下几行:

Subsystem sftp /usr/libexec/openssh/sftp-server Match user USERNAME ForceCommand internal-sftp 

但是,当我尝试通过SFTP连接,我得到的错误:

 error: subsystem: cannot stat /usr/libexec/openssh/sftp-server: No such file or directory subsystem request for sftp failed, subsystem not found 

但是,文件/ usr / libexec / openssh / sftp-server确实存在,似乎工作正常。 如果我不尝试强制连接sftp,那么我可以很好地ssh,所以SSH守护进程似乎正在处理的东西,但迫使sftp不是。

有没有人有什么build议? 我试过寻找答案,但所有我find的解决scheme似乎是关于sftp服务器不在正确的位置。 对我来说,这个文件肯定是存在的。

我正在使用CentOS 6和OpenSSH 5.3p1。 感谢您的帮助。

你使用“ChrootDirectory”? 如果你的“/ usr / libexec / openssh / sftp-server”存在的话,那将解释“找不到文件”。

你应该使用“Subsystem sftp internal-sftp”来代替(或者放弃Chroot)