尝试通过互联网连接服务器时权限被拒绝(公钥)

尝试通过互联网连接服务器时权限被拒绝(公钥)

运行 Ubuntu Server 20.04.01

在路由器上转发端口 22 后,我能够通过 ssh 连接到 IP 地址来访问我的服务器。本地主机与 IPv4 的连接仍然有效。但是,在使用 Google Authenticator 设置双因素身份验证后,我无法再使用 IP 地址进行连接,只有 IPv4 有效,并且它会验证身份验证代码。

每次它都说:

sudo ssh [email protected] 
[email protected]: Permission denied (publickey).

我已确保在连接服务器之前在 WSL 上生成的密钥(/home/username/.ssh/id_rsa.pub)也在登录时的服务器文件(/home/username/.ssh/authorized_keys)上。

有什么建议么?

答案1

因为它解决了这个问题,所以跟进我的评论。

我认为添加 Google Authenticator 与您的问题无关。基本上,使用 运行命令会sudo在 root 用户上下文中运行它。当您运行命令时ssh user@server,它会在下面查找/home/$USER/.ssh/要使用的私钥。当您使用 运行它时sudo ssh user@server,它会在下面查找/root/.ssh/私钥。我猜你的密钥在你的用户帐户下,而不是 root 下。

相关内容