崩溃shell无法通过ssh连接

时间:2018-03-19 23:05:52

标签: java tomcat ssh

我有一个嵌入了CRaSH shell库的独立Tomcat应用程序。 我可以通过telnet成功连接到应用程序,但我正在努力使用ssh。

这是我的crash.properties config:

# Key authentication
crash.auth=key
crash.auth.key.path=/usr/share/tomcat8/conf/id_rsa.pem

# SSH configuration
crash.ssh.port=2000

我已经通过ssh-keygen生成了一个ssh密钥对,然后我通过openssl rsa -in id_rsa -outform pem -pubout > id_rsa.pem命令创建了一个pem文件。

无论使用什么ssh密钥,当我尝试通过ssh -i /usr/share/tomcat8/conf/id_rsa -p 2000 myserver.example.com命令连接时出现错误:

Permission denied (publickey).

我尝试了here描述的解决方案但没有成功。我还尝试将id_rsa.pem键放在war / WEB-INF / sshd文件夹中。结果相同。

有任何线索吗?

1 个答案:

答案 0 :(得分:1)

调试之后,我注意到org.crsh.auth.KeyAuthenticationPlugin正在比较授权密钥和登录时给出的密钥,它们是相同的,但方法authenticate总是返回false(错误的身份验证)。修复错误后,我意识到它已经被声明为here,并且same方式提供了拉取请求。