习惯用Putty远程管理Vultr的vps,但是每次都要输入密码,比较麻烦,而且还容易输错,按照下面的方法就可以设置Putty免密SSH到vps,特此记录下来。
下载Putty
官网下载
Puttygen生成私钥和公钥
下载的安装包里包含了Puttygen,运行,点击Generate生成私钥和公钥:
生成完毕,将私钥保存起来:
然后将公钥全选复制:
配置服务器端
1 | mkdir .ssh |
- 按A键粘贴进去复制的公钥
- 按Esc键输入wq保存退出
- 设置权限
1 | chmod 700 ~/.ssh |
配置Putty端
Connection -> Data项设置自己的登陆用户名:
再点SSH项下面的Auth,添加之前保存的私钥:
重新打开Putty,看下是否不需要输入密码就可以SSH到远程Centos。
2020-02-24 更新:
今天用这个方法ssh到Centos7虚拟机,出现server refused our key
,用下面的方法解决了,特此记录。
Linux系统中绝大部分的发行版都是用OpenSSH,所以生成公钥私钥的时候最好用ssh-keygen命令,如果用putty自带的PUTTYGEN.EXE生成会不兼容OpenSSH,从而会导致登录时出现server refused our key错误。
- 生成公私钥
id_rsa为私钥,id_rsa.pub为公钥
1 | ssh-keygen -t rsa |
- 导入公钥
1 | cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys |
- 更改SSH配置文件
修改SSH的配置文件/etc/ssh/sshd_config
1 | #PubkeyAuthentication yes |
修改为
1 | PubkeyAuthentication yes |
- 重启SSH服务
1 | service sshd restart |
- 保存私钥