Linux企业 集群批量管理-秘钥认证

集群批量管理-秘钥认证

概述

  • 管理更加轻松:两个节点,通过秘钥认证形成进行访问,不需要输入密码,单向
  • 服务要求(应用场景):
    一些服务在使用前要求我们做秘钥认证
    手动写批量管理脚本
  • 名字:秘钥认证,免密码登录,双机互信
    提示:秘钥认证是单向的

ssh秘钥认证流程(原理)

密钥对

公钥:public key 一般以.pub结尾

私钥:private key

角色 主机名 ip
管理机 m01 192.168.28.61
被管理节点 nfs01 192.168.28.131
被管理节点 web01 192.168.28.7
被管理节点 backup 192.168.28.41

检查

#ping
ping 172.16.1.xxx

#22端口 sshd服务开启或可以访问
[root@m01 ~]#nmap -p22 172.16.1.131 172.16.1.7

在这里插入图片描述

创建密钥对

ssh-keygen -t rsa

在这里插入图片描述
测试是否连接成功ssh 192.168.28.131 hostname
在这里插入图片描述
在这里插入图片描述

  1. 创建密钥对
  2. 给这密钥对进行加密码
  3. 身份证进行

cd /root/.ssh
在这里插入图片描述
在这里插入图片描述
一定要保护好私钥,如果私钥,用户名,服务器id 就不安全(密钥进行认证)

创建1次密钥,否则多次创建密钥对会出现覆盖,认证失效
在这里插入图片描述

分发公钥

  • 分发公钥–》管理谁分发给谁,不需要密码,可以分发给公有云,私有云,虚拟机都可以进行连接
  • ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.28.131
    在这里插入图片描述
    在这里插入图片描述
    检查
    在这里插入图片描述
    在这里插入图片描述
    ssh-copy-id 后公钥被存放在对方的服务器的用户的家目录下面的.ssh下面

自动化创建密钥对

root@m01 ~]#ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ‘’

  • -发用于指定私钥的位置
  • -P 密码短语,设置为空

在这里插入图片描述

自动化分发公钥

阻碍:密码

- 安装密码提示公钥

  yum install -y sshpass

sshpass命令基本使用
-p指定密码
sshpass -p123 ssh 192.168.28.7 hostname -I
192.168.28.7 172.16.1.7

- 使用sshpass 与ssh-copy-id分发给公钥
- sshpass -p1    ssh-copy-id  192.168.28.131

在这里插入图片描述
在这里插入图片描述
直接回车创建完成!!!

sshpass 与ssh-copy-id的时候如果第一次连接,提示yes/no,sshpass失效了

  • sshpass适用于相给ssh相关命令提供密码:ssh,scp,ssh-copy-id

  • expect(语言)用与非交互式判断及认证

  • 阻碍:第1次连接的时候提示yes/no,主机密钥信息检查,输入yes后存放到~/.ssh/know_hosts

在这里插入图片描述
解决思路:临时取消即可,连接的时候不检查主机信息

-o StrictHostKeyCheckin=no 临时不检查主机信息

sshpass -p1 ssh-copy-id -i ~/.ssh/id_rsa.pub -oStrictHostKeyChencking=no 192.168.28.41

执行脚本

[root@m01 ~]#vim /server/scripts/fenfa.sh

#/bin/bash
#author:wulin
#version: v1
#desc:一键进行创建密钥对,并且分发密钥

#var
pass=123
ips="192.168.28.7 192.168.28.131 192.168.28.51"
. /etc/init.d/functions


#判断互联网是否联网或是可以使用yum

#加入判断sshpass命令是否存在,如果不存在则进行安装

#创建密钥对
if [ -f ~/.ssh/id_rsa ] ;then
  echo "已经创建过密钥对..."
else
  echo"正在创建密钥对..."
  ssh-keygen -t rsa -f ~/.ssh/id_rsa    -P ''  &>/dev/null
  if [ $? -eq 0 ];then
      action "密钥创建成功" /bin/true
  else
      action "密钥创建失败" /bin/false
  fi
fi

#通过循环发送公钥
for ip in $ips
do
   sshpass -p${pass} ssh-copy-id -i ~/.ssh/id_rsa.pub -oStrictHostKeyChecking=no ${ip} &>/dev/null
   if [ $? -eq 0 ];then
       action "$ip 公钥分发 成功" /bin/true
   else
       action "$ip 公钥失败 失败" /bin/false
   fi
done
-- 插入 --        

测试自动化创建密钥的脚本结果
在这里插入图片描述再次执行脚本:
在这里插入图片描述
检查脚本:

在这里插入图片描述
执行脚本:
在这里插入图片描述
更多内容请关注小编!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/730252.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

A800显卡驱动安装(使用deb安装)

重新安装显卡驱动,查阅了资料将过程记录如下: 1.下载deb安装包 打开nvidia官网查找对应的驱动版本,A800所在的选项卡位置如图: 点击查找后下载得到的是nvidia-driver-local-repo-ubuntu2004-550.90.07_1.0-1_amd64.deb安装包 2.…

猫头虎分享:IPython的使用技巧整理

🐯 猫头虎分享:IPython的使用技巧整理 关于猫头虎 大家好,我是猫头虎,别名猫头虎博主,擅长的技术领域包括云原生、前端、后端、运维和AI。我的博客主要分享技术教程、bug解决思路、开发工具教程、前沿科技资讯、产品…

【学一点儿前端】单页面点击前进或后退按钮导致的内存泄露问题(history.listen监听器清除)

今天测试分配了一个比较奇怪的问题,在单页面应用中,反复点击“上一步”和“下一步”按钮时,界面表现出逐渐变得卡顿。为分析这一问题,我用Chrome的性能监控工具进行了浏览器性能录制。结果显示,每次点击“上一步”按钮…

【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 任务安排问题(200分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 📎在线评测链接 https://app5938.acapp.acwing.com.cn/contest/2/problem/OD…

cron.timezone

系统 date 数据库 show timezone插件 show cron.timezonealter system set cron.timezonePRC;show cron.timezone

前端新手小白的Vue3入坑指南

昨天有同学说想暑假在家学一学Vue3,问我有没有什么好的文档,我给他找了一些,然后顺带着,自己也写一篇吧,希望可以给新手小白们一些指引,Vue3欢迎你。 目录 1 项目安装 1.1 初始化项目 1.2 安装初始化依…

CDGA|数据治理要点是数据稳定、规范、安全,就像盖楼盘一样

在数字化浪潮汹涌的时代,数据已经成为企业运营和社会发展的核心驱动力。如同高楼大厦需要稳固的地基和规范的施工流程,数据治理同样需要确保数据的稳定性、规范性和安全性,以构建坚实可靠的数据大厦。 数据治理的首要任务是确保数据的稳定性 …

一文读懂过零检测电路的作用、电路原理图及应用

过零检测电路是一种常见的应用,其中运算放大器用作比较器。它通常用于跟踪正弦波形的变化,例如过零电压从正到负或从负到正。它还可以用作方波发生器。过零检测电路有许多应用,例如标记信号发生器、相位计和频率计。#过零检测电路#可以采用多…

人工智能与生物信息组学 || 2. 非编码 RNA 与疾病关联分析 || 2.2 非编码 miRNA 与疾病关联关系预测

非编码 miRNA 与疾病关联关系预测 越来越多的研究表明,一个复杂疾病通常经由多个 miRNA 协同调控,一个 miRNA 通常参与多个疾病的发生发展过程。因此,预测 miRNA 与疾病的关联关系成为一个当前的研究热点。下面我们将探讨一种 miRNA 和疾病关…

spring-gateway配置说明

在开发过程中遇到的一些配置问题,记录下来以供参考 spring-gateway版本是2.2.9-release,使用的spring cloud dependence 是 Hoxton.SR12 在依赖eureka 服务发现并自动将发现服务器加入到router中的时候,需要指定对应的服务进行添加,根据文档…

对比 Axios 和 Fetch:选择最适合的 HTTP 请求方法

在前端开发中,处理 HTTP 请求是一个常见且重要的任务。JavaScript 提供了多种方式来发送网络请求,其中最受欢迎的两种方式分别就是 Fetch API 和 Axios。尽管两者都能完成同样的任务,即从客户端向服务器发送请求并接收响应,但它们…

学校教育为什么要选择SOLIDWORKS教育版?

在数字化和智能化时代,学校教育正面临着挑战与机遇。为了培养具备创新能力和实践技能的新时代人才,学校教育需要引入先进的教学工具和资源。SOLIDWORKS教育版作为一款专为教育和培训目的而设计的软件,以其全方面的功能、友好的用户界面、丰富…

[信号与系统]模拟域中的一阶低通滤波器和二阶滤波器

前言 不是学电子出身的,这里很多东西是问了朋友… 模拟域中的一阶低通滤波器传递函数 模拟域中的一阶低通滤波器的传递函数可以表示为: H ( s ) 1 s ω c H(s) \frac{1}{s \omega_c} H(s)sωc​1​ 这是因为一阶低通滤波器的设计目标是允许低频信…

重磅来袭,表格数据显示的快捷方式和注意事项!

今天分享数据表格常见的两个问题,如何“快速去除小数点”和“快速显示万位数”,及日常工作计算常见问题,今天刘小生跟大家一起排雷! 1. 快速去除小数点 问题:经数据计算后出现小数位数,想要在整体数据展示…

除了百度,还有哪些搜索引擎工具可以使用

搜索引擎成是我们获取知识和信息不可或缺的工具。百度作为国内最大的搜索引擎,全球最大的中文搜索引擎,是许多人的首选。那么除了百度,还有哪些搜索引擎可以使用呢?小编就来和大家分享国内可以使用的其他搜索工具。 1. AI搜索 AI…

4K高质量视频素材库,剪辑必备

找免费4K 高质量视频素材,就上这8个网站,剪辑必备,赶紧收藏吧! 1、baotu 【实拍视频】免费下载_实拍视频素材​ibaotu.com/shipin/7-5026-0-0-0-1.html?spmzhkolws​编辑 国内高质量素材网站,涵盖设计、新媒体、视频…

QT:QT中的默认代码 QT 创建控件的两种方式

目录 QT中的默认代码 新项目的结构 主函数 wiget类的声明文件.h wiget类的定义文件.cpp form file界面文件 .pro文件 QT 创建控件的两种方式 通过ui界面创建控件 通过代码方式创建控件 QT中的默认代码 新项目的结构 主函数 基本概念:Qt 在创建的一个 Wi…

Redis(超详细)

Redis Redis概念: Redis是开源的,遵循BSD的,基于内存数据存储,被用于作为数据库、缓存机制、消息中间件; Redis的特点: 1.高性能key/valu内存xing数据库; 2.支持丰富的数据类型 3.支持持久化&am…

CRMEB 多店商品详情页装修说明

一、功能介绍 商家可调整商品详情各板块样式,可根据不同的需求开启或关闭单独的板块 二、操作流程 装修 > 商品详情 三、功能说明 1、商品信息 可控制商品详情页面商品信息的显示与隐藏 2、会员信息,排行榜 控制商品详情页面会员信息及排行榜的…

idea中的git在clone文件提示 filename too long

一 解决版本 1.1 问题描述以及解决办法 当在Windows系统下使用Git时出现“filename too long”错误: git config --system core.longpaths true