Как сделать последовательный SSH к серверу, используя пакет команд - PullRequest
0 голосов
/ 07 декабря 2011

Я работаю на сервере БД, но мне нужно ssh много раз, чтобы получить к нему доступ.Примерно так:

step1) ssh xxx@xxx.xxx.xxx
pw: xxx

step2) ssh yyy@yyy.yyy.yyy
pw:yyy

step3) sudo mysqlsh
pw:zzzz

step4) mysql -u root -paaaa
use mydb;

Как выполнить эти команды в последовательности?Я хочу создать пакет сценариев, чтобы сделать это.Как это сделать?

Обновление: пытался сделать это, но не работает.Это просто войти в первый раз.

#!/usr/local/bin/expect

spawn ssh xxx@xxx
expect "*password:"
send "xxx\r";
interact

expect "*$ "
spawn ssh yyy@yyy
expect "*password:"
send "yyy\r";
interact

Ответы [ 2 ]

3 голосов
/ 07 декабря 2011

Проверьте команду linux " Ожидайте ".

0 голосов
/ 07 декабря 2011

Я обычно вижу, что «ожидают» как сдачу, хотя я, как известно, существенно переписывает ожидание в python, чтобы обернуть что-то, к чему у меня нет исходного кода.

Я бы предложил: Шаги 1 и 2: Используйте DSA-ключи без пароля и пароля. Шаг 3: / etc / sudoers можно изменить, чтобы sudo не требовал пароль. Шаг 4: Похоже, вы уже там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...