我遇到了使用ChrootDirectory设置sftp的问题。 我已经在其他发行版本上做了相同的设置,但出于某种原因,我无法在Redhat AMI上使用它。
对我的sshd_config文件的更改是:
Subsystem sftp internal-sftp Match Group ftponly PasswordAuthentication yes X11Forwarding no ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no
我拥有root用户拥有/ home / user的有关usere的家园。 与ftponly组中的用户连接后,我被放入/没有任何权限,无法做任何事情。
sftp bob@localhost Connecting to localhost... bob@localhost's password: sftp> pwd Remote working directory: /
我可以正常连接不在ftponly组中的用户。
openssh 5.3版本
我已经尝试了不同的权限,以及让用户拥有自己的主目录(给出一个写入失败:pipe道错误),到目前为止,似乎没有任何工作。
我确定这是一个权限错误,或者一样平凡的东西,但在这一点上我的眼睛已经开始釉了,任何帮助将不胜感激。
编辑:
詹姆斯和Madhatter,谢谢澄清。 我被chroot把我弄糊涂了……只是没有正确地思考。 我已经添加了适当的目录和权限来获得读取权限。 另外一个关键部分是对chrooted home进行写入访问:
setsebool -P ssh_chroot_rw_homedirs on
为了获得写权限。 我想现在我已经全部了 谢谢您的帮助。
ChrootDirectory %h
将chroot用户主目录为/。 我可能是错的,但是你不能做任何事情的原因是因为chroot监狱里不存在必要的支持文件。 快速searchconfigure ssh chroot
带我到这个网页http://www.techrepublic.com/blog/opensource/chroot-users-with-openssh-an-easier-way-to-confine-users-to-their- home-directories / 229在那里你可以提供必要的文件。