Я пытаюсь выполнить chroot "тестового" пользователя (группа sftp) в / home / test. Я добавил следующие строки в конец sshd_config:
Subsystem sftp internal-sftp
Match User test
ChrootDirectory /home/test
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
home
и test
каталоги имеют 755 разрешений и принадлежат пользователю root. Я также пробовал с ChrootDirectory /home
.
root@Debian:/# namei -l /home/test
f: /home/test
drwxrwxrwx root root /
drwxr-xr-x root root home
drwxr-xr-x root root test
Я не могу подключиться к серверу через SFTP или SSH (независимо от того, включаю ли я Subsystem sftp internal-sftp
и ForceCommand internal-sftp
или не). Как только я вхожу в систему, я получаю следующее сообщение:
Write failed: Broken pipe
... и в auth.log добавляется следующее:
May 12 13:48:29 Reach sshd[25503]: Accepted password for test from 192.168.0.10 port 51058 ssh2
May 12 13:48:29 Reach sshd[25503]: pam_unix(sshd:session): session opened for user test by (uid=0)
May 12 13:48:29 Reach sshd[25505]: fatal: bad ownership or modes for chroot directory component "/"
May 12 13:48:29 Reach sshd[25503]: pam_unix(sshd:session): session closed for user test
По-видимому, проблема в том, что он пытается выполнить chroot на "/", когда должно быть "/ home / test". Что мне не хватает? Я оставил остальную часть sshd_config значениями по умолчанию, и другой директивы ChrootDirectory нет ...
Спасибо.
Ваши разрешения на /
слишком открыты.
Интересно, как вы к этому пришли.
Которые должны быть 0755
.
Так что вам нужно это изменить.
В остальном вроде нормально.