在堡垒主机上自动执行密码?

时间:2020-07-27 16:23:34

标签: bash for-loop openssh iterm2

我的新工作要求我从数千个服务器中收集一些信息。但是,它们没有sshkey设置。一切都链接到LDAP密码。

设置为 {Mac使用ITerm2} –>带有LDAP + 2fA的ssh –>堡垒主机->仅使用LDAP密码连接到所有服务器。

我不想为尝试登录的每个主机继续输入LDAP密码。我是堡垒主机上的非特权用户。我无法在堡垒上安装任何东西,例如sshpass,expect,plink,

如何在脚本本身中使用带有ssh选项的以下脚本自动输入密码,或者在提示输入密码时我们可以使用Iterm自动填充吗?

#!/bin/bash

inFile=$1
user="zaib"

ssh_options="-o ConnectTimeout=5 -o ConnectionAttempts=1 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"

read -r -d "" commands << EOF

#My Commands Here

uname -a;

netstat -rn;


EOF
log="remote_cmd_$inFile"

((c=1))
for srv in $(cat $inFile | awk -F, '{print $1}'); do
    echo -n "$c: $srv " | tee -a $log
    nohup ssh -qtt $ssh_options  $user@$srv "sudo --bash -c '$commands'" 2>&1 | tee -a $log
    ((c=$c+1))
 done

0 个答案:

没有答案