gpt4 book ai didi

带有 proxycommand 的 sshpass 返回而不运行任何东西

转载 作者:行者123 更新时间:2023-12-02 13:54:30 27 4
gpt4 key购买 nike

在我们的环境中,我们有几台服务器在生产中。每次我想搜索某些东西时,它可能在 4 个不同的服务器中的 1 个中。
我正在创建一个脚本来自动执行此搜索,以便我直接知道涉及哪个服务器。

我正在通过 jumphost 连接。

到目前为止,以下命令工作正常:
$ ssh -oProxyCommand="ssh -W %h:%p user@jumphost" user@server "ls"

现在,因为我必须运行几次,所以我正在寻找一种只需要使用一次密码的方法。

jumphost 和服务器都需要相同的密码,并且公钥不是一个选项(不允许,我真的做不到)。

我一直在阅读 sshpass 为此,我正在尝试:
$ sshpass -p password ssh -oProxyCommand="ssh -W %h:%p user@jumphost" user@server "ls"

(我知道 -p 不安全,一旦我成功完成这一步,就会使用 -e of -f )。

当我这样做时,我可以登录两个系统,但在我看到 ls 的结果之前命令返回。
我试图拥有 -t 选择 ssh 没有任何成功。

我也试过 -J来自 ssh 的选项,具有相同的结果(命令返回而不返回任何结果)。
$ sshpass -p password ssh -J user@jumphost user@server "ls"

有什么建议么?

编辑:

解决方案是使用 sshpass 两次:
$ sshpass -p password ssh -oProxyCommand="sshpass -p ssh -W %h:%p user@jumphost" user@server "ls"

最佳答案

尝试以详细模式运行 ssh:
ssh -vvv -oProxyCommand="ssh -W %h:%p user@jumphost" user@server "ls"
我相信它会显示出一些有趣的东西。一个钩子(Hook),你可以用它来解决这个问题。

关于带有 proxycommand 的 sshpass 返回而不运行任何东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50246582/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com