目录
前言
一、密钥对免密原理
二、mobaxterm免密操作
1.生成密钥对
(一)、生成密钥对
(二)、保存公钥到windows
(三)、保存私钥到Windows
2.上传公钥到需要免密登录的server机
(一)、验证免密是否生效
前言
我们需要借助密钥对来实现clientA的免密登陆,如何来理解密钥对中的公钥与私钥呢?我们可以这样来理解私钥就像是一把钥匙,而公钥像是一把锁,所谓免密登录就有点像是将虚拟机的登录口用公钥“锁”起来,当我们需要登陆时clientA便会使用私钥来打开公钥这把锁进而登陆serverB。因此我们谁需要登陆,谁就是客户机clientA,被登陆的便是serverB,A需要登陆也就是A需要“开锁”就要由A来生成密钥对,然后将自己的“锁”交给B也就是上传公钥到B。
一、密钥对免密原理
对于密钥对的免密原理,我们先来了解一下公钥和私钥究竟是干什么的吧。公钥主要是用于加密数据或者验证签名的;而私钥则是用来解密由对应公钥加密的数据或创建数字签名。当我们的客户机clientA需要登陆时便会向服务器serverB发送一个包含其公钥的连接请求,serverB收到请求之后便会在信任列表中寻找匹配的公钥,找到之后serverB会向clientA发送一个质询信息(一个用公钥加密的字符串)进行进一步的身份验证。clientA收到质询信息使用私钥进行解密(只有拥有相应的私钥才能正确解密)并将结果返回给serverB以证明自己的身份。验证完成之后便可以成功登陆了。
二、mobaxterm免密操作
以mobaxterm免密为例
1.生成密钥对
打开mobaxterm点击工具
选择mobaxterm的密钥生成
(一)、生成密钥对
点击Genrate生成公钥
长按鼠标左键左右移动鼠标可以加快密钥生成速度
(二)、保存公钥到windows
到F盘新建文件夹prolinux(这个路径根据自己需要确定只需记住就好)用来保存私钥和公钥,然后在prolinux里新建一个文本文档更改名称为rh.pub连后缀一起改掉(文件只要改成XX.pub的形式就好了)注意这里因为改了后缀所以会提示你:是否更改文件名这有可能会导致文件不可用的提示。我们选择继续更改就好了,如果没有出现这个提示可能是开启了隐藏后缀需要先将隐藏关掉再更改。
将生成的公钥复制
粘粘到rh.pub文件中(注意以计事本的形式打开)
ctrl+s保存退出
(三)、保存私钥到Windows
点击save private key生成私钥
这里我们会出现提示是否要在没有密码保护的情况下保存密钥,我们直接点击是 忽略就好了。
生成的私钥我们命名为rh.ppk由于这个会自带.ppk后缀所以我们就输入rh(我们自定义的文件名)就好了
2.上传公钥到需要免密登录的server机
选中公钥复制一个副本命名为authorized_keys同样连同后缀改掉
登陆我们所需要进行免密的server虚拟机选中root目录下点击增加一个目录(这里以免密root账户为例)
命名一个隐藏文件夹.ssh点击确定
再选中该文件夹上传副本公钥authorized_keys。
然后退出该虚拟机进入设置勾选使用私钥并选择私钥位置
选中我们先前生成的私钥(rh.ppk文件)
(一)、验证免密是否生效
再次登陆server
可以看到已经成功免密登陆
至此我们已经完成免密登陆操作了。(由于这里我们只将公钥上传到了root账户之中,所以免密登陆时也只能免密登陆root账户,若需免密登陆其它账户,则需要将公钥用同样的方法上传到其它账户下。同理由于我们已经生成了mobaxterm的密钥对,我们下次需要免密登陆新的server机时,也只需上传公钥到相应的账户下便可完成免密登陆操作。