如何在不允许SSH登录的情况下更改SFTP密码?

Tom*_*mmy 4 ssh debian password-management sftp

我正在运行 Debian 服务器作为多个用户的 SFTP 数据存储。我不允许用户通过 ssh 登录。有没有办法让用户更改他们的密码?他们大多使用 WinSCP 客户端。

我试图让他们的密码过期,但 WinSCP 没有提示他们更改密码。

有任何想法吗?

Jak*_*uje 5

嗯…… SFTP 是文件传输协议,不支持任何用户管理(密码更改),所以简而言之,在 SFTP 中是不可能的。

唯一的可能性是仅允许 SSH 访问以更改密码(例如,ForceCommand与代理一起使用在sftp-serverpasswd命令之间进行选择),例如:

#!/bin/sh
# Script: /usr/local/bin/wrapper.sh 

case "$SSH_ORIGINAL_COMMAND" in
    "/path/to/sftp-server")
        /path/to/sftp-server
        ;;
    "passwd")
        passwd
        ;;
    *)
        echo "Sorry. Only passwd to change password or sftp is allowed"
        exit 1
        ;;
esac
Run Code Online (Sandbox Code Playgroud)