Я хочу настроить sftp-сервер для совместного использования каталога, но я не знаю, как изменить /etc/ssh/sshd_config
.
Мои требования:
1) Логин не должен использовать сертификаты, только пароль (т.е. авторизация использует метод пароля)
2) Я хочу войти в систему с пользователем: ftp, пароль: foo и поделиться каталогом /home /ftp.
3) У меня есть приложение, которое время от времени должно загружать файл с сервера, мне не нужно входить в систему с полнофункциональным клиентом.
До сих пор я добавил следующие строки в /etc /ssh /sshd_config:
Protocol 2
Subsystem sftp /usr/libexec/sftp-server
Match User ftp
ForceCommand internal-sftp
ChrootDirectory /home/ftp
Все остальное комментируется.
/home/ftp
- это пустой каталог в данный момент.
Доступ работает, если я пытаюсь загрузить файл с использованием учетных данных root, но не работает, если я использую учетные данные ftp. Нужно ли устанавливать оболочку входа? Нужно ли как-то заполнять /home /ftp?
РЕДАКТИРОВАТЬ: Это мой журнал SSHD:
subsystem request for sftp
debug1: subsystem: exec() internal-sftp
debug1: Forced command (config) 'internal-sftp '
debug2: fd 3 setting TCP_NODELAY
debug2: fd 9 setting O_NONBLOCK
debug2: fd 8 setting O_NONBLOCK
debug1: Received SIGCHLD.
debug1: session_by_pid: pid 17613
debug1: session_exit_message: session 0 channel 0 pid 17613
debug2: channel 0: request exit-status confirm 0
debug1: session_exit_message: release channel 0
debug2: channel 0: write failed
debug2: channel 0: close_write
debug2: channel 0: send eow
debug2: channel 0: output open -> closed
debug2: channel 0: read<=0 rfd 9 len 0
debug2: channel 0: read failed
debug2: channel 0: close_read
debug2: channel 0: input open -> drain
debug2: channel 0: ibuf empty
debug2: channel 0: send eof
debug2: channel 0: input drain -> closed
debug2: channel 0: send close
debug2: notify_done: reading
debug3: channel 0: will not send data after close
debug3: channel 0: will not send data after close
User child is on pid 17611
debug3: mm_request_receive entering
* Клиент зависает здесь (до истечения времени ожидания) *
Обратите внимание, опять же, что, если я войду в систему как "root", файл загрузится правильно. Он также загружает правильно , если я закомментируйте последние три строки файла конфигурации (то есть Match
линии и следующие 2).