zoukankan      html  css  js  c++  java
  • ssh免密验证,shell批量设置

    ssh免密验证,shell批量设置

    #ssh免密验证,shell自动设置
    echo '#!/bin/sh
    . /etc/init.d/functions
    [[ -f /usr/bin/expect ]] || { echo "install expect";yum install expect -y; } #若没expect则安装
    [ $? = 0 ] || { echo "expect安装失败";exit; } #安装失败则退出
    PUB=/'`whoami`'/.ssh/id_dsa.pub #公钥路径
    [[ -f $PUB ]] || { ssh-keygen -t dsa -P "" -f /'`whoami`'/.ssh/id_dsa>/dev/null 2>&1; } #若没公钥则生成
    
    USER=root   #登录用户
    PASS=123321 #登录密码
    #expect自动交互
    function EXP() {
    /usr/bin/expect << EOF
    set timeout 5
    spawn /usr/bin/ssh-copy-id -i $PUB  $USER@$n
    expect {
            "*yes/no*" { send "yes
    ";exp_continue }
            "password:" { send "$PASS
    ";exp_continue } 
            eof { exit }
            }
    EOF
    }
    #
    for n in $*
    do
      EXP >/dev/null 2>&1
      echo $n hostname >/dev/null 2>&1
      [[ $? == 0 ]] && action "========$n" /bin/true || action "========$n" /bin/false
    done
    '>./ssh.sh
    ##################以上是生成shell文件ssh.sh##################
    
    #hosts设置
    echo '
    192.168.58.21   controller1
    192.168.58.22   controller2
    192.168.58.23   controller3
    '>>/etc/hosts
    
    #执行shell文件,ssh批量认证
    sh ./ssh.sh controller1 controller2 controller3
  • 相关阅读:
    poj3292
    poj2635
    Android学习之——自己搭建Http框架(2)——框架扩展
    swift -函数、函数指针
    算法导论 第二十一章:不相交集合森林
    Java推断类和实例的关系
    深搜解Riding the Fences
    mariadb克隆
    java-集合类(二)
    在GitHub上使用Hexo搭建静态博客
  • 原文地址:https://www.cnblogs.com/elvi/p/7681779.html
Copyright © 2011-2022 走看看