我已经在 debian 7 上设置了一个 ssh 服务器,以使用 sftp 连接。
我使用以下配置 chroot 了一些用户:
Match Group sftpusers
ChrootDirectory /sftp/%u
ForceCommand internal-sftp
但是,如果我想在 ssh 控制台中使用这些 chroot 用户之一登录,他们会被记录,但会自动关闭连接。在日志中我看到:
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 的普通用户?
答案1
从您的评论来看,您似乎想以其他用户的身份运行脚本,同时将该用户限制为仅使用 SFTP。为此,请保留您的 SFTP 设置。以您自己的身份登录并执行以下操作:
sudo -u webuser /usr/bin/somescript.sh
这将以用户“webuser”的身份运行脚本“/usr/bin/somescript.sh”。