Putty WinScp 免密登录远程 Linux [Puttygen版]

Putty WinScp 免密登录远程 Linux

1
https://www.cnblogs.com/0820LL/p/10996437.html

该方法的原理是预先生成一对公钥和私钥,私钥以文件的形式保存在本地,公钥保存在远程机器上。这样每次登录只需指定私钥文件,远程机器通过比对公钥和私钥来验证登录的合法性

Putty 免密登录

1. 生成公钥/私钥对

使用 putty 安装目录中的 puttygen.exe 工具

点击 generate –> 随意移动鼠标来生成秘钥 –>将公钥部分复制备用 –> 点击 Save private key

运行 puttygen.exe, 点击 Generate, 如下图

然后,在空白区随意移动鼠标,puttygen.exe 会根据鼠标移动生成随机数,用来生成 RSA 公私钥

这边一定要记得填自已的用户名:

2. 将公钥添加到远程机器的 ~/.ssh/authorized_keys 文件 (追加到文件末尾即可)

修改目录(700)和文件(600)的权限

1
2
chmod 777 /root/.ssh/authorized_keys     //修改权限,否则你改不了
vi /root/.ssh/authorized_keys            //加入公钥
1
2
chmod 700 /root/.ssh                     //权限改回来,否则会报错
chmod 600 /root/.ssh/authorized_keys     //权限改回来,否则会报错


3. 登录时指定私钥文件

Putty→会话: 将服务器IP填好

Putty→连接→数据:填好自动登陆用户名

Putty→连接→SSH→认证:选择认证私钥文件(保存的密钥文件)

回到Putty→会话:保存的会话

4. WinScp 免密登录

这里 WinScp 使用 putty 生成的公钥和私钥

打开 WinScp –> 新建站点 –> 协议选择 SCP –> 填写远程机器IP 端口 登录用户名 –> 选择高级 –> 在 SSH 验证中指定putty生成的私钥文件 –> 保存


5. ssh私钥登陆提示Server refused our key问的解决办法

因为 /root/ 下的文件只有root账号才能进,别的账号就算提升为超级管理员也进不了,verxxxxxx 就进不了.

=======================================================================================

下面这些都不需要

1
vi /etc/ssh/sshd_config
1
2
RSAAuthentication yes
PubkeyAuthentication yes

Leave a Reply

Your email address will not be published. Required fields are marked *