首页 > 其他分享 >ssh_key_push.sh

ssh_key_push.sh

时间:2022-10-16 16:00:47浏览次数:41  
标签:sshpass dev sh ssh key push 172.31

[root@ansible-server ansible]# cat ssh_key_push.sh 
#!/bin/bash
#
#**********************************************************************************************
#FileName:      ssh_key_push.sh
#Description:   ssh_key_push for CentOS 7/8 & Ubuntu 18.04/24.04 & Rocky 8
#Copyright (C): 2021 All rights reserved
#*********************************************************************************************
COLOR="echo -e \\033[01;31m"
END='\033[0m'

export SSHPASS=123456
HOSTS="
172.31.0.101
172.31.0.102
172.31.0.103
172.31.0.104
172.31.0.105"

os(){
    OS_ID=`sed -rn '/^NAME=/s@.*="([[:alpha:]]+).*"$@\1@p' /etc/os-release`
}

ssh_key_push(){
    rm -rf ~/.ssh
    ssh-keygen -f /root/.ssh/id_rsa -P '' &> /dev/null
    if [ ${OS_ID} == "CentOS" -o ${OS_ID} == "Rocky" ] &> /dev/null;then
        rpm -q sshpass &> /dev/null || { ${COLOR}"安装sshpass软件包"${END};yum -y install sshpass &> /dev/null; }
    else
        dpkg -S sshpass &> /dev/null || { ${COLOR}"安装sshpass软件包"${END};apt -y install sshpass &> /dev/null; }
    fi
    for i in $HOSTS;do
        {
            sshpass -e ssh-copy-id -o StrictHostKeyChecking=no -i /root/.ssh/id_rsa.pub $i &> /dev/null
            echo $i is finished
        }&
    done
    wait
}

main(){
    os
    ssh_key_push
}

main

[root@ansible-server ansible]# bash ssh_key_push.sh 
172.31.0.104 is finished
172.31.0.102 is finished
172.31.0.101 is finished
172.31.0.105 is finished
172.31.0.103 is finished

 

标签:sshpass,dev,sh,ssh,key,push,172.31
From: https://www.cnblogs.com/gaoyuechen/p/16796361.html

相关文章

  • Linux学习记录(六):SSH
    使用场景:VSCode通过SSH访问远程服务器通过SSH连接远程服务器:sshuser@hostname(SSH默认端口为22),然后提示需要输入登录密码参考:https://code.visualstudio.com/docs/rem......
  • bash脚本的判断语句之一
    开始学习bash的“编程”操作。其实严格来说,这个脚本语言的语法是比较古老和特殊的,有很多不符合中国人习惯的东西。因为在中国人的世界里,电脑键盘上面的使用shift才能输出......
  • recketmq-dashboard打包
    前提使用JDK1.8下载编译rocketmq-dashboard-master(之前叫rocketmq-console)是RocketMQ的可视化插件,通过该插件我们可以在界面实现消息的生产和消费。下载地址:https://......
  • 集合—HashSet
    HashSet和ArrayList区别:HashSet无序不可重复,ArrayLIst有序可重复HashSet(无序不重复)1.add方法//以下会去掉重复值hashSet.add(100);hashSet.add(100);System.out.p......
  • 在Docker容器中运行Elasticsearch、Kinbana、Cerebo、Logstash
    确保自己的Centos环境中已经安装好了Docker,Docker-compose相关的软件安装cerebro、es、kibana编写docker-compose.yml文件,部署单机环境version:'3.5'services:cer......
  • virsh管理域
    域==虚拟机KVM部分创建并查看虚拟机磁盘文件cd/var/lib/libvirt/imagesqemu-imgcreatecentos35-1.qcow2-fqcow2-obacking_file=centos-35.rawll/var/lib/libvi......
  • Adobe photoshop 2023更新,最新PS2023中文版新增功能(附PS2023下载)
    ps作为一款电脑必备修图工具,收到广大网友的推崇,目前,该版本已经更新到ps2023版!最新的ps2023帮助你组合、修饰和重新混合您的照片,为您的旧黑白添加新颜色,或者让不需要的东......
  • xp_cmdshell的启用与关闭
    1、xp_cmdshell简介:xp_cmdshell扩展存储过程将命令字符串作为操作系统命令shell执行,并以文本行的形式返回所有输出。一般情况下默认处于关闭状态  2、开启xp_cmd......
  • Photoshop 2023 (ps 2023) for Mac 支持M1
    ps作为一款电脑必备修图工具,收到广大网友的推崇,目前,该版本已经更新到ps2023版!最新的ps2023帮助你组合、修饰和重新混合您的照片,为您的旧黑白添加新颜色,或者让不需要的东......
  • redis: hash类型
    Hash类型,也叫散列,其value是一个无序字典,类似于Java中的HashMap结构。String结构是将对象序列化为JSON字符串后存储,当需要修改对象某个字段时很不方便:  Hash结构可以......