Я только что настроил новый сервер Debian SFTP, чтобы предоставить доступ нескольким пользователям CHROOT. В то время как первая добавленная мной учетная запись работает нормально, вторая отключается сразу после аутентификации.
Вывод sftp -v:
debug1: Authentication succeeded (password).
Authenticated to xxx.xxx.xxx.xxx ([xxx.xxx.xxx.xxx]:22).
debug1: channel 0: new [client-session]
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: channel 0: free: client-session, nchannels 1
debug1: fd 0 clearing O_NONBLOCK
Connection to xxx.xxx.xxx.xxx closed by remote host.
Transferred: sent 2416, received 1376 bytes, in 0.0 seconds
Bytes per second: sent 279797.8, received 159355.1
debug1: Exit status -1
Couldn't read packet: Connection reset by peer
и конфигурация пользователя:
Match group joseph
ChrootDirectory /backups/joseph
x11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
Права доступа rw для папки CHROOT — a+rw, владельцем является root.
Есть идеи?
PS - Я также должен добавить, что там есть «Subsystem sftp internal-sftp».
решение1
Похоже, я допустил какую-то ошибку, когда создавал следующих пользователей и группы:этотруководство к письму.
Как это на самом деле сработало для меня:
$useradd <user>
$usermod -d /<folder> -s /bin/false <user>
$chmod 744 /<folder>
- Предоставить пользователю разрешение на чтение/запись в его собственной папке.
- Разрешено подключение по протоколам ssh/sfpt
- Добавил это для каждого пользователя в /etc/ssh/sshd_config:
Группа соответствия
ChrootDirectory /folder
x11Forwarding нет
AllowTcpForwarding нет
ForceCommand внутренний-sftp