Прерывание соединения при попытке войти в изолированную учетную запись chroot через sftp

Я пытаюсь создать пользователя kake_sftp, который может войти на веб-сервер, расположенный по адресу / var / www / html или аналогичный. Я знаю, что chroot нужны некоторые дополнительные подкаталоги для разрешения, чтобы работать, поэтому я в порядке с добавлением новых папок или небольшим изменением макета папки.

Я создал пользователя в группе www-data и с домашним каталогом в / var / www / html

$ cat /etc/passwd | grep kake_sftp
kake_sftp:x:1001:1001::/var/www/html:/bin/bash

$ groups kake_sftp
kake_sftp : kake_sftp www-data

Затем я сделал некоторые изменения в / etc / ssh / sshd_config. Я заменил "Подсистема sftp / usr / lib / openssh / sftp-server" на "Подсистема sftp internal-sftp" и добавил в конце следующие строки

Match User kake_sftp
ChrootDirectory /var/www
ForceCommand internal-sftp
AllowTcpForwarding no

Права доступа к папке www установлены следующим образом.

$ ls -la /var/www
drwxrwxr-x  3 root root     4096 Apr  7 12:17 .
drwxr-xr-x 12 root root     4096 Apr  4 10:17 ..
drwxr-xr-x  2 root www-data 4096 Apr  4 11:34 html

Когда я сейчас пытаюсь войти с Filezilla, установленным на sftp. Я получаю следующую ошибку.

Error:  Network error: Software caused connection abort
Error:  Could not connect to server

Когда я пытаюсь войти в систему с моим основным пользователем через sftp, это работает как шарм. Так что с клиентом проблем нет.

1 ответ

Решение

Причина, по которой это не сработало, заключалась в том, что у chroot-каталога были права на запись. Отменив все права на запись, мне удалось подключиться.

chmod 555 /var/www
Другие вопросы по тегам