windows下PuTTY通过ssh方式免密登录远程服务器

设备情况一览

远程服务器:ubuntu
本地设备:Windows

准备工作:

  • 远程主机保持开机状态
  • 从镜像站提供的下载链接下载PuTTY的安装包并安装到本地设备,下载链接:

https://mirrors.scau.edu.cn/putty/latest.html

着手生成密钥对:公钥和私钥

之所以在本地设备生成密钥对,目的是:不泄露私钥。公钥是可以公开的。
如果在远程服务器里生成密钥对,就需要把私钥通过网络传输回本地设备(即:下载私钥到本地设备),在某些情况下,网络传输可能是不可靠的。
现实世界中,家里防盗门的门锁相当于公钥,是“公之于众”的,防盗门的钥匙就相当于私钥,只能我私有。

1.双击打开PuTTYgen.exe,使用它来生成密钥对。
2.保持默认,点击“Generate”

3.点击后可以看到生成的公钥(密密麻麻一堆字母的框里就是公钥了),复制到文件“pub.txt”中。
4.点击“Save private Key”,保存私钥到本地设备。可以任意命名该文件,为了区分,这里我们给私钥命名“privateKey.ppk”。注意:后缀名是不可以改的。

开始部署密钥

  1. 在本地设备双击打开PuTTY.exe
  2. 通过密码登录远程服务器
  3. 复制文件“pub.txt”中的文字(这些文字就是公钥)
  4. 将公钥文字粘贴到~/.ssh/authorized_keys
vim ~/.ssh/authorized_keys

5.通过以上命令将公钥复制到“~/.ssh/authorized_keys”后,在键盘为英文状态下输入以下命令,保存并退出vim编辑模式:

:wq

6.远程服务器现在可以关闭退出(exit)了。因为我们下一步就可以实现免密登录服务器了。(注意:不要关机。命令行输入exit进行退出就好了)

在PuTTY.exe进行设置

1.打开PuTTY.exe
2.在绿色箭头处输入

aaa@xxx.xxx.xxx.xxx
  • aaa :要换成你登录远程服务器的用户名,一般购买远程主机后,服务商会发到邮箱里。
  • @ :不要动“@”,它本来就应该有的。
  • xxx.xxx.xxx.xxx :换成远程主机的IP。
  • 举个例子:root@192.168.1.1

3.按步骤点击:
①:点击。
②:点击 → 选择“privateKey.ppk” → 点击“打开”

4.最后,继续按步骤点击:
①:点击此处“Session”。
②:给刚才的配置命名“haha”
③:保存刚才我们设置的配置,并取名“haha”。(哈哈,这里可以自己任意取名的。)

  • 大功告成,点击下面的open按钮就可以免密登陆远程服务器了。

以后,打开软件双击“haha”,就能免密登录远程服务器了。

posted @ 2025-04-12 22:14  月月coding  阅读(113)  评论(0)    收藏  举报