Прерывание соединения при попытке войти в изолированную учетную запись 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