ssh免密登陆(简单快捷)

介绍免密登陆配合下边这张图可以了解下过程:

 

假设现在A要通过免密登陆B

在A上的操作:

1.终端输入ssh-keygen (后边可以指定加密算法:-t 算法,如果不指定就是默认的rsa)

原理:

首先通过ssh-keygen命令生成密钥对(即公玥和私钥)

生成后密钥对会自动保存到/root/.ssh目录下,此目录下有两个文件即:

id_rsa(私钥),id_rsa.pub(公钥)

2.终端输入ssh-copy-id 要连接的ip地址(如果本地/etc/hosts配置文件中有该地址的别名也可以用别名),然后输入连接ip密码,登陆成功

原理:

这一步的主要作用是将公钥发送到B上(第一次对要连接的ip使用需要输入要连接的ip的用户的密码),

然后B将公钥保存到/root/.ssh文件夹中的authorized_keys文件中(这个文件也会保存其它主机的公钥),

然后B用公钥对一个随机字符串加密返回给A,A再用自己的私钥解密,把解出来的明文发给B,B验证,如果正确,就会连接成功

 

总结(也就是说命令只需要在A主机上写就行了,如果是第一次要知道B端的用户密码):

A:

终端输入ssh-keygen

然后输入ssh-copy-id 连接ip,之后会要求属连接ip上的用户的密码,输入之后成功连接,以后再连接该ip,只需要ssh ip地址 就能直接免密登陆

如果还要连接其它ip,如果已经生成密钥对,不需要再输入ssh-keygen生成密钥对,(如果重新生成,则以前的连接ip就会连接不上)

posted @ 2019-05-07 11:21  Jarbein  阅读(340)  评论(0编辑  收藏  举报