13.4.1 ssh协议[安全外壳协议]
SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;
SSH 是建立在 应用层 基础上的 安全协议。
SSH 是较可靠,专为 远程登录会话 和 其他网络服务 提供安全性的协议。
利用 SSH 协议可以有效防止 远程管理 过程中的 信息泄露问题。
SSH提供两种级别的安全验证:
第一种级别(基于 口令 的安全验证)---对称加密 (账密)
只要你知道自己 帐号和口令,就可以登录到远程主机。
所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。
可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。
第二种级别(基于 密匙 的安全验证)---非对称加密(公钥,私钥)
需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙(公钥)放在需要访问的服务器上。
如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。

13.4.2 ssh基于 密码 远程登录 ---对称加密 (账密)

centos7-1 通过账密登录 centos7-2
ssh 192.168.88.129
yes
输入centos7-2的密码

注意:
(1)密码
登录哪个服务器,就输入哪个服务器的密码
(2)退出并返回到当前服务器
exit
扩展:可以通过 主机名 登录
(1)需要配置 ip地址 和 主机名 的映射关系(每一台主机都要配置)
vi /etc/hosts

(2)接下来就可以是用主机名登录了

13.4.3 ssh基于秘钥实现免密 登录 ---非对称加密(公钥,私钥)
公钥加密数据,私钥解密数据

前提:在 /etc/hosts 中配置了 IP 与 hostname 的映射 (每一台主机都要配置,可以通过主机名登录)

第一步:在三台机器执行以下命令(在centos7-1和centos7-2和centos7-3上面都要执行),生成公钥与私钥
ssh-keygen -t rsa
第二步:将 centos7-2 和 centos7-3 的公钥 拷贝到 centos7-1
centos7-1的公钥,自己也要复制一份
即:centos7-1里有centos7-1、centos7-2、centos7-3的公钥 (都在authorized_keys文件中)
# 分别在 centos7-2、centos7-3、centos7-1 执行以下命令,将公钥拷贝到centos7-1上面去
ssh-copy-id centos7-1
在centos7-1中,会生成一个authorized_keys文件

注意:
(1)生成的公钥 在登录用户的~/.ssh目录下
(2)相当于把三台主机的 公钥 都放到centos7-1的authorized_keys文件中
(3)如果 公钥 都一样,则authorized_keys文件中,只有一个值

第三步:在centos7-1中,再将centos7-1的 公钥 分发给 centos7-2 和 centos7-3
scp authorized_keys centos7-2:$PWD
scp authorized_keys centos7-3:$PWD
在centos7-2中,多了一个authorized_keys文件

在centos7-3中,多了一个authorized_keys文件

第四步:使用ssh 主机名完成免密登录 即可
ssh centos7-2

ssh centos7-3
