SSH 失败,/bin/bash:没有此文件或目录

SSH 失败,/bin/bash:没有此文件或目录

我有一个被监禁的用户。

sshd_配置:

Subsystem sftp internal-sftp

Match user matt
     ChrootDirectory %h
     X11Forwarding no
     AllowTcpForwarding no

密码:

matt:x:1001:5006:Matt Ryan,,,:/home/matt:/home/matt/bin/bash

这对于 sftp 来说非常完美。用户仅限于他的主文件夹以及那里的任何挂载。

但是,我还想授予此用户 shell 访问权限。当他们尝试登录时,会发生以下情况:

$ ssh [email protected]
Linux devnode 2.6.38-linode31 #1 SMP Mon Mar 21 21:22:33 UTC 2011 i686 GNU/Linux
Ubuntu 10.04.2 LTS

Welcome to Ubuntu!
 * Documentation:  https://help.ubuntu.com/
Last login: Thu Mar 31 13:04:29 2011 from abc.nyc.res.rr.com
/home/matt/bin/bash: No such file or directory
Connection to server.com closed.

通过 fstab,bin 文件夹被挂载到主目录并存在。

为什么我会收到此错误?我该如何解决?

谢谢您的帮助!

答案1

当你 时chroot,命名的目录变成/。 那么 里面的正确 shell 路径chroot/bin/bash,而不是/home/matt/bin/bash

您还需要确保 里面有足够的其他东西来chroot保证系统正常工作。您可以用 来测试它,sudo chroot /home/matt /bin/bash看看哪些可以工作,哪些不行;至少,您可能需要一个假人/etc、一个bind,以及里面的/proc大部分。/libchroot

相关内容