尝试使用公钥认证在 Windows 服务器上进行 ssh,但无法识别公钥。
将公钥以适当的权限保存在 .ssh/authorized_keys 中。
在详细模式下运行时收到以下消息:
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Trying private key: C:\Users\$amku001\.ssh/id_rsa
debug1: Trying private key: C:\Users\$amku001\.ssh/id_dsa
debug1: Trying private key: C:\Users\$amku001\.ssh/id_ecdsa
debug1: Trying private key: C:\Users\$amku001\.ssh/id_ed25519
debug1: Next authentication method: keyboard-interactive
debug1: Authentications that can continue: publickey,password,keyboard-interactive
可以看出,它甚至没有提供公共 RSA 密钥。它还在尝试获取不存在的私钥。
答案1
您可能没有将私钥放在运行客户端 ssh 的机器中。
请确认您已执行以下所有说明。
为了使用私钥/公钥执行 ssh 登录,您应该:
- 创建密钥对(例如使用来自这里)
客户端:
.ssh
在主目录中创建文件夹- 将私钥放在
.ssh
文件夹 中- 命名
id_rsa
- 命名
服务器端:
.ssh
在主目录中创建文件夹- 将公钥内容添加到文件
.ssh/authorized_keys
文件权限:
- 私钥只能由您访问
- 公钥可能被其他人读取(但不能被其他人写入)
.ssh
文件夹只能由您访问