我已阅读并使用chroot在sftp中设置初始目录,并使用了一些
questions和
tutorials.我有chroot目录的正确权限和所有权.我可以让新用户登录,但是他们无法将文件传输到他们应该拥有的文件夹.
例
我想chroot sftpbackups组的成员.在我的sshd_config文件中,我有以下内容.
Subsystem sftp internal-sftp Match Group sftpbackups ChrootDirectory %h X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp
首先,我创建了一个未添加到sftpbackups组的用户testuser.主目录是/ home / testuser /并且我想在sftp上使用子目录/ home / testuser / backups /.我可以使用sftp将文件传输到我的备份文件夹,例如
sftp> ls -l drwxrwxrwx 2 testuser testuser 4096 Sep 25 00:09 backups sftp> put a.txt backups Uploading a.txt to /home/testuser/backups/a.txt a.txt
当我将testuser添加到sftpbackups组时出现问题.
sftp> ls -l drwxrwxrwx 2 1290 1291 4096 Sep 30 14:58 backups sftp> put a.txt backups Uploading a.txt to /backups/a.txt remote open("/backups/a.txt"): Permission denied
我不确定为什么目录所有权只有在我添加到sftpbackups组后才会改变,我认为这与我无法传输文件的原因有关.
任何想法如何前进?谢谢.服务器是CentOS 6.8.