linux 批量建立信任关系

1.首先,需要检查expect是否安装:rpm -qa|grep expect

2.然后,在操作机上创建公钥:ssh-keygen 一路回车即可

3.创建好之后到/home/barfoo/.ssh/下就可以看到id开头的2个文件,其中id_rsa.pub就是公钥文件,

4.需要做的就是将这个文件传送给其他机器:ssh-copy-id -i /home/barfoo/.ssh/id_rsa.pub barfoo@ip

5.最后ssh root@ip就实现无密码登录了

6.以下是脚本,根据自己实际情况做修

#2017-05-18
#批量ssh认证建立  

for p in $(cat /home/barfoo/ip.txt)  #注意ip.txt文件的绝对路径
do
ip=$(echo "$p"|cut -f1 -d":")       #取ip.txt文件中的ip地址
password=$(echo "$p"|cut -f2 -d":") #取ip.txt文件中的密码  

#expect自动交互开始
expect -c "
spawn ssh-copy-id -i /home/barfoo/.ssh/id_rsa.pub barfoo@$ip
        expect {
                \"*yes/no*\" {send \"yes\r\"; exp_continue}
                \"*password*\" {send \"$password\r\"; exp_continue}
                \"*Password*\" {send \"$password\r\";}
        }
"
done  

1. ip.txt文件里面ip和密码写法

   172.16.4.27:barfoo1
   172.16.4.28:barfoo2

也可以这么写

#!/bin/bash
for i in `seq 101 150`
do
/usr/bin/expect << EOF
spawn ssh-copy-id bfadmin@192.168.100.$i
expect
 {
"yes/no" { send "yes\r"; exp_continue; }
"*password" { send "P@ssw0rd\r" }
}

expect "~$ "
send "exit\r"
expect eof

EOF
done

下载PSSH安装包

wget  http://www.theether.org/pssh/pssh-1.4.3.tar.gz #下载PSSH安装包
tar zxvf pssh-1.4.3.tar.gz
 cd pssh-1.4.3
wget 'http://peak.telecommunity.com/dist/ez_setup.py'
python ez_setup.py
python setup.py install

安装好后执行

   pssh -P -h ip.txt 'uptime
时间: 2024-09-29 01:01:52

linux 批量建立信任关系的相关文章

SQL报表错误“未能为SSL/TLS安全通道建立信任关系”解决方法

  打开任何报表,都会提示:未能为 SSL/TLS 安全通道建立信任关系. 问题原因:SQL报表配置文件中,设置了SSL认证. 解决方法: 1.删除SQL报表配置文件中的SSL认证. 2.修改SQL报表配置文件: 位置:X:Program FilesMicrosoft SQL ServerMSRS10_50.MSSQLSERVERReporting ServicesReportServerrsreportserver.config 参数:,将参数值Value="2"修改为"V

linux建立信任,已添加到authorized_keys,就是不成功;权限问题

Linux主机间建立信任关系 在主机A和主机B间建立信任关系,使主机A可以无密码ssh登陆主机B. ◦A主机上执行 ssh-keygen -t rsa -b 1024 (也可以使用 ssh-keygen -t dsa -b 1024) ◦主目录下生成 .ssh目录 ◦进入~/.ssh目录 ◦执行 cat id_rsa.pub 将显示结果复制 (也可以使用cat id_dsa.pub,这个一般有现成的) ◦B主机上进入主目录下的~/.ssh(如果没有,则执行ssh-keygen生成) ◦将复制的结

Windows Server 2003林之间的信任关系

大家应该知道,使用WIN2003创建的AD(林)中的各个域之间的信任关系默认就是双向信任可传递的.那么如果企业的应用中如果出现了两个林或更多的林时,还要进行相互的资源访问时,我们该怎么办?因为默认只是同在一个林中才能双向信任可传递,两个林(AD)间没有这个关系,那么就需要我们手动来配置林之间的信任关系,从而来保证不同林中的资源互访.比如说企业之间的兼并问题,两个公司之前都使用的是MS的AD来管理,那么大家可想而知这两家企业之前肯定是两个林,那么现在兼并后,如何让这两个林之间能够建立信任关系吗?都

理解域信任关系,Active Directory系列之十六

在同一个域内,成员服务器根据Active Directory中的用户账号,可以很容易地把资源分配给域内的用户.但一个域的作用范围毕竟有限,有些企业会用到多个域,那么在多域环境下,我们该如何进行资源的跨域分配呢?也就是说,我们该如何把A域的资源分配给B域的用户呢?一般来说,我们有两种选择,一种是使用镜像账户.也就是说,我们可以在A域和B域内各自创建一个用户名和口令都完全相同的用户账户,然后在B域把资源分配给这个账户后,A域内的镜像账户就可以访问B域内的资源了. 镜像账户的方法显然不是一个好的选择,

linux中给PHP进程用户noboby创建ssh-key并建立信任

在Gitlab上的代码仓库,如果是通过ssh方式拉取代码,需要在两台机器之间建立ssh信任,而通过WEB系统(基于PHP)操作git,也要建立PHP进程用户和Gitlab机器的ssh信任.简而言之,就是两台机器用户之间建立信任很简单,但是PHP进程用户也要建立ssh信任,这里面遇到一些问题.这涉及到Linux用户的概念和权限问题,其实还是对Linux不够了解. 两台机器建立ssh-key信任很简单,需要两步操作就可以了. 1.生成ssh-key ssh-keygen -t rsa -C "$yo

在Linux中批量建立用户的shell_unix linux

最近,笔者在校园网应用平台建设中采用了Linux操作系统,为校园网用户提供DNS.Apache.POP3.SMTP.FTP等服务.由于我校学生用户数在3000人以上,笔者在建设整个应用平台的过程中特别重视保证用户管理效率.我的基本思路和做法是:利用shell为每个学生建立一个系统账号--即提供一个E-mail地址(含FTP空间账号),然后学生可以凭借其E-mail再注册论坛用户.基于这样的管理思路,笔者编写了一个批量建立用户的shell,实践证明,利用shell可以有效地管理基于Unix内核的系

cacti 如何批量建立数据源data source

问题描述 cacti 如何批量建立数据源data source cacti 如何批量建立数据源data source,cacti自带的方法里只有批量新增主机 tree 和图 没看到有批量新增数据源的脚本呢 解决方案 http://os.51cto.com/art/201103/250983.htmhttp://www.linuxidc.com/Linux/2012-11/74634.htm

钱颖一:建立真品牌立足于建立信任

中国已经是一个世界级的制造大国.但至今为止,中国还缺乏具有世界影响力的产品品牌.在2011年<财富>杂志的世界500强企业排名中,中国有69家公司(其中港台地区11家)名列其中.而在2010年世界品牌500强排名中,只有17个中国品牌名列其中,属于制造业的仅有5个,而且没有一个进入前100名.在2010年世界最具价值的品牌100强排名中,中国也没有一个品牌入选. 中国在世界上的知名品牌,除了青岛啤酒外,海尔.联想.华为名列前茅.比中国经济规模小得多的韩国有世界著名品牌三星.现代.LG等.日本在

分享的内容和秘密要能解决用户的问题是SEO建立信任的关键

摘要: 在众多企业优化中,站长朋友建议分享一些真实的,特殊性的内容以吸引读者的眼球,而这内容分享便成为了一个很有趣的话题,对于大型企业公司而言,他们会专门考虑哪些内容应该 在众多企业优化中,站长朋友建议分享一些真实的,特殊性的内容以吸引读者的眼球,而这内容分享便成为了一个很有趣的话题,对于大型企业公司而言,他们会专门考虑哪些内容应该和大家分享,哪些不应该分享,与外部世界好的或不好的关系?没有一个真正有效的内容分享策略,你将越走越落后与他人. 什么是内容高飞? 一个真正的内容守财奴,他们将会拒绝任