Linux ssh免密登录配置

ssh简介

SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。

ssh两种身份验证机制

远程登录的安全外壳协议
有两种身份验证机制:
1.用户名+密码验证
2.密钥验证

ssh免密登录

我们现在开启了两台Linux虚拟机,IP分别为192.168.254.128和192.168.254.129。

我们现在远程连接192.168.254.128这台虚拟机。
我们来看看能不能ping通192.168.254.129这台虚拟机。
这里写图片描述

我们发现是可以ping通的。

现在我们通过ssh协议登录另一台Linux虚拟机。
这里写图片描述

或者我们还可以从我们现在这台192.168.254.128虚拟机拷贝文件到192.168.254.129这台虚拟机上。
这里写图片描述
然后我们可以看到另一台虚拟机上的确有这个文件了:
这里写图片描述

但是传文件总是需要输入密码。所以我们需要通过ssh免密登录。

ssh免密登录原理

这里写图片描述

ssh免密登录配置流程

根据上面的ssh免密登录原理,我们来一步步实现配置流程。

首先我们要在我们的Server A(当前的就是192.168.254.128这台虚拟机)上面生成一对公钥。
命令:ssh-keygen -t rsa,不过默认算法就是RSA,所以我们直接使用ssh-keygen就可以了。
这里写图片描述
生成密钥对之后,我们可以看看它保存的目录下的文件。
这里写图片描述

接下来我们就要把Server A(192.168.254.128)的公钥拷贝到Server B(192.168.254.129)上并授权。
我们可以直接用一条命令完成上面拷贝并授权的过程。

ssh-copy-id 192.168.254.129

这里写图片描述

然后我们就可以到Server B(192.168.254.129)上面看到拷贝过来的公钥了。
这里写图片描述

现在我们就可以直接免密登录到Server B(192.168.254.129)
这里写图片描述

ssh免密登录配置完成!

猜你喜欢

转载自blog.csdn.net/cckevincyh/article/details/80573556