ssh自动输入密码登陆

简介:

1  vi rm.sh

#!/bin/expect -f
set DATE [exec date +%Y%m%d%k]
set ipaddress [lindex $argv 0]
set port  [lindex $argv 1]
set logname [lindex $argv 2]
#set password xukeqiang
set date [exec date -d "-2 day" "+%Y%m%d"]
set fd [open /home/admin/passwd.sh r]
set password [read $fd]
close $fd
spawn ssh $ipaddress -p $port -l monitor
#set timeout 300
expect "monitor@${ipaddress}'s password:"
#set timeout 300
send "$password\r"
expect -re "\](\$|#)"
#send "rm -rf /tmp/${logname}${date}.tar\r"
send "sh /tmp/rm.sh\r"
expect -re "\](\$|#)"
send "exit\r"
expect eof

 2  vi ip.sh##此文件不能有多余的空行

192.168.1.101 22 nagiosa_

192.168.1.102 22 nagiosb_

192.168.1.103 22 nagiosc_

 

3  vi piliang.sh

#/bin/bash
time=`date +%Y%m%d_%H%M%S`
filename=/home/admin/ip.sh
while read line
do
        echo $line
        /bin/expect -f /home/admin/rm.sh $line
done<$filename |tee /home/admin/log.log$time
echo "run over" >>/home/admin/log.log$time 

 

4  将C:\cygwin64\bin追加到windows系统环境变量Path中,然后编辑批处理文件piliang.bat如下:

sh c:\cygwin64\home\admin\piliang.sh 
\cygwin64\bin\echo  ok

pause












本文转自shangshanyang51CTO博客,原文链接: http://blog.51cto.com/qqran/1905305,如需转载请自行联系原作者




相关文章
|
1月前
|
消息中间件 安全 Unix
SSH配置多台服务器之间的免密登陆以及登陆别名
SSH配置多台服务器之间的免密登陆以及登陆别名
37 1
|
4月前
|
Linux 网络安全
CentOS7服务器SSH登陆时自动显示服务器基础信息
CentOS7服务器SSH登陆时自动显示服务器基础信息
53 0
|
6月前
|
网络安全 数据安全/隐私保护
ssh远程执行命令自动输入密码方式
ssh远程执行命令自动输入密码方式
621 0
|
7月前
|
运维 应用服务中间件 网络安全
Ansible自动化运维工具之解决SSH连接使用明文密码问题(4)
Ansible自动化运维工具之解决SSH连接使用明文密码问题(4)
|
2月前
|
安全 Shell 网络安全
ssh配置无密码验证
ssh配置无密码验证要在SSH中配置无密码验证,您需要使用公钥验证【2月更文挑战第18天】
43 1
|
3月前
|
安全 网络协议 Linux
|
3月前
|
安全 网络协议 Shell
SSH连接密码问题:原因、表现与解决方案
SSH连接密码问题:原因、表现与解决方案
144 3
|
3月前
|
关系型数据库 网络安全 数据库
通过SSH登录OceanBase数据库需要修改用户密码,然后使用SSH客户端进行远程登录
通过SSH登录OceanBase数据库需要修改用户密码,然后使用SSH客户端进行远程登录
80 6
|
3月前
|
存储 Linux 网络安全
如何在 Linux 中删除 SSL 证书和 SSH 密码?
如何在 Linux 中删除 SSL 证书和 SSH 密码?
93 1
如何在 Linux 中删除 SSL 证书和 SSH 密码?
|
4月前
|
安全 Linux Shell
Linux服务器配置SSH免密码登录后,登录仍提示输入密码(一次真实的问题排查解决记录)
Linux服务器配置SSH免密码登录后,登录仍提示输入密码(一次真实的问题排查解决记录)
110 0