相关疑难解决方法(0)

尝试使用密钥文件进行 ssh 身份验证:服务器拒绝了我们的密钥

我正在尝试使用密钥文件而不是用户名/密码来设置 ssh 身份验证。客户端是运行 PuTTY 的 Windows 机器,服务器是 Ubuntu 12.04 LTS 服务器。

我下载了 puttygen.exe 并让它生成了一个密钥对。在/etc/ssh/sshd_config我有这一行:

AuthorizedKeysFile %h/.ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)

在我客户的公钥文件上,它说:

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "my@email.address.com"
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAr3Qo6T5XU06ZigGOd3eKvfBhFLhg5kWv8lz6
qJ2G9XCbexlPQGanPhh+vcPkhor6+7OmB+WSdHeNO652kTofnauTKcTCbHjsT7cJ
GNrO8WVURRh4fabknUHPmauerWQZ6TgRPGaz0aucU+2C+DUo2SKVFDir1vb+4u83
AV1pKxs=my@email.address.com
---- END SSH2 PUBLIC KEY ----
Run Code Online (Sandbox Code Playgroud)

我将部分从“ssh-rsa AAA”复制到“my@email.address.com”并将其放入~/.ssh/authorized_keys我的服务器上的文件中(在我自己的主文件夹中)。在连接 > SSH > Auth 下的 PuTTY 中,我输入了它在我的客户端上生成的私钥的路径并保存了会话设置。

我重新启动了 ssh 服务器

sudo service ssh restart
Run Code Online (Sandbox Code Playgroud)

现在,如果我在 PuTTY 中加载配置文件(我验证了私钥仍在连接 > SSH > Auth 中并且路径正确)并运行配置文件,它会说

Server refused our key
Run Code Online (Sandbox Code Playgroud)

我尝试将公钥放在目录下的文件中, ./ssh/authorized_keys/但这没有帮助,所以我将其./ssh/authorized_keys用作文件,将密钥粘贴在其中。我还尝试在服务器上生成一个私钥/公钥对,将公钥放入./ssh/authorized_files并在我的客户端的 PuTTY 中加载私钥。重新启动服务器也没有帮助。 …

server ssh authentication

69
推荐指数
6
解决办法
35万
查看次数

标签 统计

authentication ×1

server ×1

ssh ×1