Назад | Перейти на главную страницу

Установите пользователей как chrooted для sftp, но разрешите пользователю входить в SSH

Я установил ssh-сервер на debian 7, чтобы использовать sftp-соединение.

Я отключил какого-то пользователя с такой конфигурацией:

Match Group sftpusers
    ChrootDirectory /sftp/%u
    ForceCommand internal-sftp

Но если я хочу войти в систему с одним из этих пользователей с root-доступом в консоли ssh, они будут зарегистрированы, но автоматически закроют соединение. В логах вижу:

 Oct 17 13:39:32 xxxxxx sshd[31100]: Accepted password for yyyyyy from   zzz.zzz.zzz.zzz port 7855 ssh2
 Oct 17 13:39:32 xxxxxx[31100]: pam_unix(sshd:session): session opened for user yyyyyyyyyyyy by (uid=0)
 Oct 17 13:39:32 d00hyr-ea1 sshd[31100]: pam_unix(sshd:session): session closed for user yyyyyyyyyyyy

Как я могу выполнить chroot пользователя только для sftp и использовать его как обычного пользователя для ssh?

Из вашего комментария видно, что вы хотите запускать сценарии от имени другого пользователя, ограничивая при этом этого пользователя только SFTP. Для этого оставьте настройки SFTP как есть. Войдите под своим именем и выполните:

sudo -u webuser /usr/bin/somescript.sh

Это запустит сценарий «/usr/bin/somescript.sh» от имени пользователя «webuser».