将 SFTP 设置为不需要私钥

将 SFTP 设置为不需要私钥

所以我有这个服务器,我使用密钥通过 SSH 使用我的 sudoer 帐户登录。我还创建了另一个受限帐户,以便其他用户可以访问特定文件夹中的 SFTP 文件。

现在,当我尝试使用 sftp 连接时,它仍然向我吐出无效密钥。

我希望该特定用户能够仅使用用户名和密码进行 SFTP。感谢这里的任何帮助,谢谢!

丹尼尔

答案1

在 /etc/ssh/sshd_config 中,通过为每个用户名添加此块来定义 sshd 中的以下异常:

Match User username
 ChrootDirectory %h
 ForceCommand internal-sftp
 PasswordAuthentication yes

如果您有多个帐户,则更容易进行组捕获:

Match Group sftp
  ChrootDirectory %h
  ForceCommand internal-sftp
  PasswordAuthentication yes

为了清楚起见,您的意思是:没有公钥要求。私钥保留在客户端的工作站/服务器上。

之后,重新加载 sshd 就可以了。阅读更多相关信息,请访问https://wiki.archlinux.org/index.php/SFTP_chroot

答案2

也许最简单和最简单的解决方案是创建第二个sshd守护程序,它具有不同的配置文件和不同的属性。该帐户可以指定允许使用它的一个用户,并且可以使用任何适当的凭据设置该帐户。

例如,我有第二个服务器,通过以下方式调用:

/usr/sbin/sshd -f /etc/ssh/sshd_config1

config1 文件指定了不同的端口,

Port 2134
AllowUsers xxxxy yyyyx
AuthenticationMethods password
PubkeyAuthentication no

相关内容