Windows和Linux下实现ssh免密登录

------------恢复内容开始------------

SSH是一种通讯协议,可以实现远程安全登录。可以通过如putty、MobaXterm等工具通过ssh安全登录到虚拟机进行操作。 
Openssh:ssh远程安全登录的开源实现(软件)。

SSH安全免密码登录:ssh key

ssh key 使用非对称加密方式生成公钥和私钥

私钥存放在本地 ~/.ssh目录

公钥可以对外公开,放在服务器的~/.ssh/authorized_keys

 Windows下生成ssh key:

借助xshell工具,点工具---新建用户生成向导

  

 选rsa,然后一直下一步,我这里用空密码演示

下一步另存文件

 打开centos,进入~/.ssh,然后新建authorized_keys储存私钥

vim编辑

打开刚刚在xshell里保存的文件,然后粘贴到authorized_keys里边

 然后xshell新建会话

然后点用户身份验证,选择public key,用户名为root,密钥选刚刚保存的公钥

 

 这就可以免密登录了

Linux平台生成ssh key:

ssh-keygen -t rsa 或  ssh-keygen -t dsa ,ssh-keygen,这里采用的也是空密码生成,这时查看会多了centos_rsa和centos_rsa.pub两个文件

 第二步,把生成的centos_rsa.pub打开复制下来,然后打开/ssh/下的authorized_keys文件

把复制的内容粘贴到authorized_keys里

   

 最后把密钥添加到ssh服务里边去(Windows下不需要这样)

ssh-add ~/.ssh/centos_rsa,

执行ssh-add时出现Could not open a connection to your authentication agent

若执行ssh-add /path/to/xxx.pem是出现这个错误:Could not open a connection to your authentication agent,则先执行如下命令即可:

  ssh-agent bash

这时就可以免密登录了

 

原文地址:https://www.cnblogs.com/ls-pankong/p/12248032.html