Как перевести sh с одного хоста на другой хост, используя каркас робота? - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть ситуация, когда мне нужно, используя среду фреймворка, s sh для host1, а затем для host2 с моей локальной машины ma c, поскольку нет прямого маршрута к 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

Не могу понять, почему не открывается второе соединение. Есть ли решение этой проблемы? Любая помощь приветствуется.

1 Ответ

1 голос
/ 07 апреля 2020

После открытия подключения к первому хосту, вы можете просто использовать Записать, прочитать, прочитать до ключевых слов для входа на второй хост. Ключевое слово будет выглядеть примерно так: (вы можете использовать переменные, я использую жестко закодированные значения для 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    $
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...