Linux批量创建主机信任关系 1.实现环境: 本机redhat6.3 32位的操做系统 2.实现目的: 对其余主机作信任,使本机登陆其余主机不须要输入密码 3.实现过程: 1)先在本机用ssh-keygen -t rsa生成公钥,生成~/.ssh/id_rsa.pub公钥文件 2)安装软件包sshpass-1.04.tar.gz tar -zxvf sshpass-1.04.tar.gz cd sshpass-1.04 ./configure make && make install 3)把 StrictHostKeyChecking no加到/etc/ssh/ssh_config能够让ssh客户端自动接受新主机的hostkey,不用每次在ssh新主机时都本身输入yes 4)编写hostlist文件,里面列举了主机名(ip地址)和主机密码(主机名和密码之间用空格隔开),一行内只有一对主机名和密码 5)执行批量创建主机信任关系的脚本trusthost.sh #!/bin/bash #author:cq #date:06-04-2013 hosts=`sed '/^#/d' ~/trusthost/hostlist | awk '{print $1}'` id=`cat ~/.ssh/id_rsa.pub` for host in $hosts do ping -c 2 -W 1 $host if [ $? = 0 ] then passwd=`awk /$host/'{print $2}' ~/trusthost/hostlist` sshpass -p "$passwd" ssh $host "echo $id >>~/.ssh/authorized_keys" else echo "$host is lost" >~/trusthost/ssh.log fi done