SSH 服务器权限被拒绝(公钥)

SSH 服务器权限被拒绝(公钥)

过去,我在 kali linux 上设置了一个使用公钥身份验证的 ssh 服务器,它可以正常工作,但现在我在 Ubuntu 18.10 上,它不起作用。当我尝试连接客户端时,我得到:Permission denied (publickey)

通常,在 kali 上,我会使用 ssh 隧道服务 serveo.net 并成功执行以下命令:

ssh -R crayyhost:22:localhost:1337 serveo.net

我将像这样连接到服务器:ssh -J serveo.net auser@crayyhost

但这里我就是不能。我无法连接到我自己...服务器在 ubuntu 上,客户端在 kali 上。

我甚至无法连接ssh auser@EXTERNAL_IP -p 1337——我收到“连接被拒绝”的提示。

LAN 也一样:-“权限被拒绝”ssh [email protected] -p 1337

服务器可以使用 连接自身ssh localhost -p 1337,服务器甚至可以使用 远程连接自身ssh -J serveo.net auser@crayyhost,但客户端不能。

客户端的id_rsa.pub文件已添加到.ssh/authorized_keys

我甚至禁用StrictModesshd_config

答案1

“连接被拒绝”意味着可能有防火墙。尝试运行telnet 1337以验证端口至少可以从您尝试连接的位置访问。

“权限被拒绝”表明,除了防火墙之外,您的公钥也未正确安装。如果您已将 .pub 密钥添加到正确的目录,则可以尝试重新启动 ssh 服务以确保它可以接收它。ssh [email protected] -p 1337

除此之外,请仔细检查此问题的答案中列出的所有内容:https://askubuntu.com/questions/46424/how-do-i-add-ssh-keys-to-authorized-keys-file

答案2

您可能需要指定您的私钥。

使用ssh -i <private key path> user@server -p 1337

例如,如果您的私钥已直接复制到您的机器的目录中,则可以使用。这告诉它使用您指定的私钥。ssh -i id_rsa [email protected] -p 1337

您还可以研究如何将其添加到 ~/.ssh 中的配置文件中以实现自动化,以及端口。

相关内容