在 Ammonite sshd 中进行身份验证后,SSH 连接立即断开

在 Ammonite sshd 中进行身份验证后,SSH 连接立即断开

我意识到这个问题(或类似的问题)在其他地方被问过,但解决方案对我来说不起作用。我正在尝试使用菊石在本地的 scala/java 项目中,使用以下命令启动 SSH 服务器

    import ammonite.sshd._
    import org.apache.sshd.server.auth.password.{AcceptAllPasswordAuthenticator, StaticPasswordAuthenticator}
    val replServer = new SshdRepl(
      SshServerConfig(
        address = "localhost", // or "0.0.0.0" for public-facing shells
        port = 22222, // Any available port
        passwordAuthenticator = Some(AcceptAllPasswordAuthenticator.INSTANCE)
      )
    )
    replServer.start()

然后我就可以连接并进行身份验证ssh jbennett@localhost -p22222(或任何用户名,这似乎无关紧要,但我在其他地方读到使用没有主文件夹的用户可能会导致问题,所以我使用现有的用户名)。问题是身份验证后连接立即关闭。以下是输出ssh jbennett@localhost -p22222 -vvvvhttps://pastebin.com/DAZyxnBH

我查看了一下/etc/ssh/sshd_config,发现所有内容基本都是默认设置。我尝试按照另一个建议进行更改internal-sftp,但没有什么效果。

#old line:
#Subsystem  sftp    /usr/libexec/sftp-server
#new line:
Subsystem   sftp    internal-sftp

完整文件在这里:https://pastebin.com/0FcivDVf并且包含行的文件内容只是

# Options set by macOS that differ from the OpenSSH defaults.
UsePAM yes
AcceptEnv LANG LC_*
Subsystem   sftp    /usr/libexec/sftp-server

不确定这对于这个用例是否重要,因为 SSH 连接连接到 REPL 而不是 shell,但我的登录 shell 对用户来说启动正常jbennett,所以它似乎也不是 shell 配置文件的问题。

如果您对如何解决此问题有任何想法,请告诉我!

相关内容