0

我有一种情况,我需要使用机器人框架,ssh 到 host1,然后从我的本地 mac 机器到 host2,因为没有直接到 host2 的路由。打开第一个连接后,我尝试打开第二个连接,但这不起作用。

Test nested ssh connections
    Open Connection     ${host1}
    Login               ${host1-user}      ${host1-pw}
    ${output}=          Execute Command     hostname
    log to console      ${\n}${output}
    Open Connection     ${host2}    #there is no pw
    ${output}=          Execute Command     hostname
    log to console      ${\n}${output}

output:

Open Connection And Log In                                ...
host1
 14:17:59 up 44 days, 18:13,  1 user,  load average: 0.00, 0.01, 0.05
Open Connection And Log In                                | FAIL |
Connection not open

我不知道为什么第二个连接没有打开。这个问题有解决方案吗?任何帮助表示赞赏。

4

1 回答 1

2

打开与第一台主机的连接后,您可以简单地使用Write、Read、Read Until关键字登录到第二台主机。关键字看起来像:(你可以使用变量,我使用的是硬编码的 ip、用户名、密码值)

Test nested ssh connections
    Open Connection     ${host1}
    Login               ${host1-user}      ${host1-pw}
    Write    ssh user@10.10.0.23
    Read Until    password:
    Write    user123
    Read Until    $
于 2020-04-07T16:08:13.910 回答