Ubuntu 10.04 с помощью ssh без ввода пароля

Я знаю, что такие вопросы были заданы раньше, и я прочитал их все (что я нашел).

Проблема заключается в том, что у нас есть встроенное Linux-устройство, с помощью которого мы можем входить в систему для отладки, выполнив следующие действия:

ssh [email protected] 

Тогда пароль – это что угодно (я обычно просто нажимаю enter). Я не хочу ничего менять на встроенном устройстве / Linux. Но я хочу иметь возможность (как часть моего скрипта) ssh в него.

Мои исследования показали мне, что можно использовать следующее (это копируется из другого сообщения):

 #!/usr/bin/expect -f spawn ssh [email protected] expect "assword:" send "mypassword\r" interact 

Однако с моей версией Ubuntu (10.04) у меня нет команд появления или отправки. Я смог установить команду «ожидать» с ожиданием установки sudo apt-get.

у кого-нибудь есть решение? Возможно ли установить эти команды или есть другой способ ssh и пройти шаг «пароль»?

Благодаря 🙂

————- РЕДАКТИРОВАТЬ —————–

Я думаю, что начинаю понимать вопрос, который у меня есть. У меня есть сценарий, который начинается с:

 #!/bin/bash 

Затем я пытаюсь сделать следующее:

 spawn ssh [email protected] expect "assword:" send "mypassword\r" interact 

Я не понимал, что вам нужно явно:

 #!/usr/bin/expect -f 

В начале скрипта. Поэтому мне пришлось переместить мой код в отдельный файл, который содержит только и точно:

 #!/usr/bin/expect -f spawn ssh [email protected] expect "assword:" send "mypassword\r" interact 

… извините за неправильное понимание с моей стороны, но ответы на людей помогли мне развернуть то, что я делал. Это не совсем идеально для меня, поскольку я хотел передать параметры для открытия разных ssh-соединений, и я не могу передать параметры этому сценарию, начиная с «expect -f» 🙁

Я думаю, вы пытаетесь запустить свой скрипт как скрипт оболочки. После установки expect , запустите свой скрипт следующим образом:

 expect -f scrip.exp 

Если вы не можете установить ожидание как обычный пользователь, попробуйте установить его двоичные файлы в одном из ваших каталогов в $HOME например $HOME/opt/ и expect оттуда, хотя это будет зависеть от вашей системы от того, как вы могли бы манипулировать LD_LIBRARY_PATH Добавьте другой каталог для поиска динамических библиотек.

Пример встроенного ожидания:

 #!/bin/bash USER=$1 SERVER=$2 PASSWORD=$3 expect <<EOF spawn ssh "${USER}@${SERVER}" expect "assword:" send "${PASSWORD}\r" interact EOF 

Бежать с

 bash script.sh user server password 
Interesting Posts
Давайте будем гением компьютера.