Я пытаюсь загрузить файлы на сервер, который я настраивал с помощью sftp. Поэтому я использую внутренний сервер sftp сервера openSSH.

Я попытался добавить следующий код в /etc/ssh/sshd_config

Match User web
   ChrootDirectory /var/www
   ForceCommand internal-sftp

Но я всегда получаю ошибку Connection reset by peer . Если я пропущу код, он будет работать, но я, конечно, не в том каталоге (/home/web). В чем здесь проблема и что я могу сделать, чтобы добиться того, что я описал?

1 ответ1

2

Я ответил на это в Unix Stackexchange. На это отвечали много раз, но я не могу найти это сейчас. Ответ RTFM.

Короткая история: от man sshd_config вы можете получить эту строку:

ChrootDirectory

Задает путь к каталогу для chroot(2) после аутентификации. Все компоненты пути должны быть корневыми каталогами, которые не доступны для записи любому другому пользователю или группе. После chroot sshd(8) меняет рабочий каталог на домашний каталог пользователя.

Что объясняет ваше сообщение об ошибке. Исправление ACL на пути решит вашу проблему.

В журнале вашего сервера также есть ошибка (хорошее место для начала изучения таких проблем), описывающая эту проблему.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .