zoukankan      html  css  js  c++  java
  • linux 配置ssh免密码登录脚本

    首先安装expect

    yum install expect
    yum install expect-devel
    yum install tcl

    ssh-keygen -t rsa -P '' -f /home/dp/.ssh/id_rsa

    cat /home/dp/.ssh/id_rsa.pub >/home/dp/.ssh/authorized_keys

    #上面是自动生成公钥和私钥。不需要三次回车

    chmod 600 /home/dp/.ssh/id_rsa
    chmod 644 /home/dp/.ssh/authorized_keys

    cat /home/dp/ip.txt|while read line   //里面有账号与密码

    do

    ip=`echo $line|awk '{print $1}'` #把赋给ip
    echo $ip
    pw=`echo $line|awk '{print $2}'` #把密码赋给变量pw
    echo $pw
    command1="ssh-copy-id -i /home/dp/.ssh/authorized_keys dp@$ip:/home/dp/"  #这里使用-i指定文件,和使用的绝对路径,就是怕其他错误的麻烦。这个命令复制公钥比使用scp简单。

    expect -c "

    spawn $command1;

    expect {

    "password:" {send"$pw "; exp_continue}

    "connecting(yes/no)?" {send "yes "; exp_continue}

    }

    "
    done

    ssh -t -p 22 dp@$ip 'sed -i"s/^#RSAAuthentication yes/RSAAuthentication yes/g"/etc/ssh/sshd_config'

    ssh -t -p 22 dp@$ip 'sed -i"s/^#PubkeyAuthentication yes/PubkeyAuthentication yes/g"/etc/ssh/sshd_config'

    ssh -t -p 22 dp@$ip 'sed -i"s/^#PermitRootLogin yes/PermitRootLogin yes/g"/etc/ssh/sshd_config

    chmod 644 /home/dp/.ssh/authorized_keys

    '

  • 相关阅读:
    Spring ListFactoryBean实例
    Spring集合 (List,Set,Map,Properties) 实例
    Spring Bean作用域实例
    Spring内部bean实例
    Spring bean加载多个配置文件
    如何注入值到Spring bean属性
    Spring Bean引用例子
    Spring构造方法注入类型歧义
    Spring JavaConfig @Import实例
    Spring JavaConfig实例
  • 原文地址:https://www.cnblogs.com/sunt9/p/6690422.html
Copyright © 2011-2022 走看看