我有一个运行 Windows 的本地工作站(名为 myDesktop),我使用用户名“windowsLogin”登录,还有一个名为 myLinux 的 Linux 目标服务器,我必须使用用户“linuxLogin”进行 ssh 登录。
从 Windows 计算机上运行的 MobaXterm,我可以生成一个密钥并将其复制到 myLinux:
local$ /bin/ssh-keygen
local$ cat .ssh/id_rsa.pub |ssh myLinux 'cat >> .ssh/authorized_keys'
local$ ssh myLinux <========= OK fine it worked !
现在id_rsa.pub
包含一行以“windowsLogin@MYDESKTOP”结尾的行。
如何使用 putty 实现相同的目的,因为仍然要求我输入密码,即在“连接”下的 putty 保存的会话中指定的用户密码 - >“自动登录用户名”字段中的数据(与我的操作系统桌面“windowsLogin”不同) )...
我已经尝试过:
- 将自动登录用户名替换为我的 linuxLogin
- 将“自动登录用户名”字段留空,单击“使用系统用户名 (Seb FamilyName)”...
- 将 puttygen 在 myLInux 上生成的公钥复制到 .ssh/authrorized_keys 中(以“rsa-key-20180111”结尾的字符串)
而这些都不起作用......
是否可以让 putty 使用 ssh 密钥来避免输入密码?
答案1
是的,您可以通过 PuTTY 使用密钥对身份验证。但是,PuTTY 期望私钥文件采用不同的格式。使用附带的PuTTYgen
程序将您生成的私钥转换为ssh-keygen
PuTTY 可以使用的密钥(或者为您的 Windows 机器生成一个新的密钥对以与 PuTTY 一起使用)。