当前位置: 首页>>技术教程>>正文


SFTP致命错误所有权或chroot目录ubuntu 12.04的模式

, , ,

问题描述

我只是设置了SFTP服务器,当我从第一个用户帐户使用它时,它可以正常工作。我想添加一个我们称为’magnarp’的用户。首先,我在sshd_config中做到了这一点:

Subsystem sftp internal-sftp


Match group sftponly
    ChrootDirectory /home/%u
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp

效果很好,用户magnarp进入了他的主目录。然后,我尝试向其添加符号链接。

home$ sudo ln -s /home/DUMP/High\ Defenition/ /home/magnarp/"High Defenition"

该符号链接可以通过SSH正常运行,但不能通过SFTP正常运行。

因此,我现在想将Chroot组sftponly设置为/home /DUMP,我这样做是这样的:

Match group sftponly
    ChrootDirectory /home/DUMP
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp

DUMP文件夹具有以下权限。

drwxrwxrwx  5 root     root      4096 aug 18 02:25 DUMP

这是错误代码:

Aug 18 16:40:29 nixon-01 sshd[7346]: Connection from 192.168.1.198 port 51354
Aug 18 16:40:30 nixon-01 sshd[7346]: Accepted password for magnarp from 192.168.1.198 port 51354 ssh2
Aug 18 16:40:30 nixon-01 sshd[7346]: pam_unix(sshd:session): session opened for user    magnarp by (uid=0)
Aug 18 16:40:30 nixon-01 sshd[7346]: User child is on pid 7467
Aug 18 16:40:30 nixon-01 sshd[7467]: fatal: bad ownership or modes for chroot directory "/home/DUMP"
Aug 18 16:40:30 nixon-01 sshd[7346]: pam_unix(sshd:session): session closed for user magnarp

最佳答案

当涉及到chroot目录时,sshd具有一定程度的偏执狂。我不认为可以禁用它(即使使用StrictModes no)。 chroot目录和所有父目录必须be properly set

  1. chroot目录及其所有父目录不能具有组或世界写入功能(即chmod 755)

  2. chroot目录及其所有父目录必须由root拥有。

在您的情况下,可以使用chmod 755 /home/DUMP修复登录错误。通过将目录设为/home/DUMP/的子目录,可以解决您的明显意图是sftpuser可以登录到world-writable目录,并且每个人都可以放置文件

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8723.html,未经允许,请勿转载。