【综合架构】Part 5.1 密钥认证

目录

 1 概述

 2 原理

 3 操作指南

 4 自动化创建与分发密钥

 4.1 自动化创建 key 命令

 4.2 自动分发密钥

 4.3 自动创建与分发 key 脚本


 1 概述

  • 管理更加便捷:两个节点,通过密钥形式访问,不需要单向的输入密码。

 2 原理

管理机生成密钥对,将公钥发送被管设备。(缺)

 3 操作指南

实验设备

角色主机名ip
管理机m0110.0.0.61
被管理节点nfs0110.0.0.31
被管理节点web0110.0.0.7
被管理节点backup10.0.0.41

步骤 1:基本检查,对设备进行网络连通性测试

# 方式一
ping 172.16.1.x

# 方式二
nmap -p22 172.16.1.31 172.16.1.41

步骤 2:创建key

tips:不加参数 -t 也可以。现在是通过 rsa 方法对数据进行加密。

ssh-keygen -t rsa

步骤 3 :分发公钥

ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.0.0.41

步骤 4 :连接测试

ssh root@10.0.0.41 hostname -I

tips:通过 ssh-copy-id 传输后,公钥被存放在对方服务器的用户家目录(~/)的 .ssh 中,名字为“authorized_keys”。

 4 自动化创建与分发密钥

obstacles:

  1. 创建key命令
  2. 分发密钥时询问 yes / no(yes 后会把信息保存到 .ssh/know_hosts)
  3. 分发公钥时要求输入密码

 4.1 自动化创建 key 命令

ssh-keygen -f ~/.ssh/id_rsa -P ''

ssh-keygen -t rsa -f ~/.ssh_rsa/ -P ''

tips:

  1. -f 用于指定私钥的位置
  2. -P 密码短语 设置为空

 4.2 自动分发密钥

# 先安装 sshpass
yum install -y sshpass

# 参数 -p[密码]
# 测试:查看是否运行成功
sshpass -pa ssh 10.0.0.7 hostname -I

# 使用 sshpass 与 ssh-copy-id 分发公钥
sshpass -pa ssh-copy-id 10.0.0.31

tips:

  • sshpass 与 ssh-copy-id 的时候如果第1次连接,提示 yes/no,sshpass 失效了。
  • sshpass适用于给ssh相关的命令提供密码:ssh,scp,ssh-copy-id。

问题 1:第一次连接的时候通常会提示 yes / no

这个问题是遇到了检查主机信息,输入 yes 后,它的信息是存放在 “~/.ssh/know_hosts”

解决这个问题也很简单,临时取消主机检查信息即可。参数(oStrictHostKeyChecking=no) 

sshpass -pa ssh-copy-id -i ~/.ssh/id_rsa.pub oStrictHostKeyChecking=no 10.0.0.41

 4.3 自动创建与分发 key 脚本

【Script】密钥分发-CSDN博客

遇到问题:

1、假如主机密码不一样怎么写?

  • 集群,采用相同的配置与密码。
  • 每个部分使用 for 循环。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值