Linux记录-批量安装ssh(转载)
首先,需要检查expect是否安装:rpm -qa|grep expect
然后,在操作机上创建公钥:ssh-keygen 一路回车即可
创建好之后到/root/.ssh/下就可以看到id开头的2个文件,其中id_rsa.pub就是公钥文件,需要做的就是将这个文件传送给其他机器:ssh-copy-id -i /root/.ssh/id_rsa.pub root@ip
最后ssh root@ip就实现无密码登录了。
#!/bin/bash
#2013-04-08
#author myhoop
#blog http://myhoop.blog.51cto.com #批量ssh认证建立 for p in $(cat /usr2/script/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 /root/.ssh/id_rsa.pub root@$ip
expect {
\"*yes/no*\" {send \"yes\r\"; exp_continue}
\"*password*\" {send \"$password\r\"; exp_continue}
\"*Password*\" {send \"$password\r\";}
}
"
done #通过ssh批量执行命令 for h in $(cat /usr2/script/ip.txt|cut -f1 -d":")
do
ssh root@$h '此处写要执行的命令'
#如果命令是多行的,请参照下面
#ssh root@$h '此处写要执行的命令1'
#ssh root@$h '此处写要执行的命令2'
#ssh root@$h '此处写要执行的命令3'
done #ip.txt文件里面ip和密码写法
192.168.0.2:admin2
192.168.0.3:admin3
Linux记录-批量安装ssh(转载)的更多相关文章
- Linux记录-批量安装LNMP(转载)
#!/bin/bash # Describe: This is a one - button installation service script # 提示:使用此脚本时,尽量先选择第一项配置Yum ...
- Linux记录-批量安装软件服务(转载)
#!/bin/bash # 安装函数 install(){ for soft in $* do echo "$soft"安装中... y ...
- Linux记录-批量安装zabbix(转载)
同一文件夹下建立pwd.txt,格式如下: ip username password ip username password #!/bin/bash cat pwd.txt | while read ...
- Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装(转载)(1)
Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装 一.引言 设计模式写完了,相当于重新学了一遍,每次学习都会有不同的感受,对设计模式的理解又加深了,理解的更加透彻了.还差一篇 ...
- Linux记录-salt-minion安装
python -m SimpleHTTPServer 8888#!/bin/bash sed -i 's/^#//g' /etc/yum.repos.d/centos7.4.repo sed -i ' ...
- Linux记录-AWK语法(转载)
1.原理 awk,一个行文本处理工具,逐行处理文件中的数据 语法:awk 'pattern + {action}' 说明:(1)单引号''是为了和shell命令区分开:(2)大括号{}表示一个命令分组 ...
- 在Linux上要安装SSH协议
学习准备:博客园.CSDN.51CTO,注意问问题去CSDN.注意还有一种就是自己搭建博客,自己搭建博客相当于写一个网站:http://pyshell.cn;github:是一个代码仓库是别人的.有些 ...
- Linux记录-批量更改当前目录的文件后缀名
#!/bin/bash path=. for file in $(ls $path) do if [ -f $file ] then filename=${file%.*} bak=${file#*. ...
- Linux (Ubuntu)安装ssh
看ssh服务是否启动 打开"终端窗口",输入sudo ps -e |grep ssh 回车有sshd,说明ssh服务已经启动, 如果没有启动,输入sudo service ssh ...
随机推荐
- mysql 两张表字段模糊匹配--字符串拼接函数
concat(A,B,C,...) 拼接字符串 例如concat('123','***','345') =>123***345 SELECT concat( substr(t1.CODE, ...
- ArrayList && LinkList
1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList ...
- b、B、KB、MB、GB 的关系?
1. 8bit (位) = 1Byte (字节) 2.1024Byte (字节 ) = 1KB 3.1024KB = 1MB 4.1024MB = 1GB 5.1024GB = 1TB
- Flume源码更改
1.源码更改场景:如果使用 0.8 版本 Kafka 并配套 1.6 版本 Flume,由于 Flume 1.6 版本没有Taildir Source 组件,因此,需要将 Flume 1.7 中的 T ...
- 013——MATLAB硬件支持包离线下载
(一)参考文献:https://blog.csdn.net/hyperorbit/article/details/88095384 (二)去下列网址下载离线包下载工具:https://ww2.math ...
- How To Set The Hostname On Ubuntu Or Debian?
$ sudo hostnamectl set-hostname your-hostname $ sudo vim /etc/hosts Open the hosts file and add the ...
- 自用 微信小程序跳小程序
"window": { "navigationBarTextStyle": "black", "navigationBarTitl ...
- 布鲁克斯法则 (Brooks's Law)
软件开发后期,添加人力只会使项目开发得更慢. 这个定律表明,在许多情况下,试图通过增加人力来加速延期项目的交付,将会使项目交付得更晚.布鲁克斯也明白,这是一种过度简化.但一般的推理是,新资源的增加时间 ...
- 如何在Processing中调用Windows应用程序
Processing调用了exe就意味着失去了跨平台.调用的过程是,先得到当前的runtime,然后调用runtime的exec()方法,在exec()传入的是字符串参数,这个参数很重要,该有空格的地 ...
- ssh 连接云主机错误
ssh链接云主机: ssh root@123.59.xx.xx 报错:THE AUTHENTICITY OF HOST XX CAN’T BE ESTABLISHED 解决办法: ssh -o Str ...